Re: [PATCH] Automatically enable bigsmp when we have more than 8 CPUs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 28, 2005 at 11:51:42AM -0700, Venkatesh Pallipadi wrote:
>  				smp_found_config = 1;
> -				clustered_apic_check();

Removing that here will break x86-64.

> --- linux-2.6.13-rc3/arch/i386/kernel/mpparse.c	2005-07-29 00:58:06.175571504 -0700
> +++ linux-2.6.13-rc3-auto/arch/i386/kernel/mpparse.c	2005-07-29 01:38:13.557593808 -0700
> @@ -65,6 +65,8 @@ int nr_ioapics;
>  int pic_mode;
>  unsigned long mp_lapic_addr;
>  
> +unsigned int def_to_bigsmp = 0;
> +
>  /* Processor that is doing the boot up */
>  unsigned int boot_cpu_physical_apicid = -1U;
>  /* Internal processor count */
> @@ -213,6 +215,11 @@ static void __init MP_processor_info (st
>  		ver = 0x10;
>  	}
>  	apic_version[m->mpc_apicid] = ver;
> +	if ((num_processors > 8) && APIC_XAPIC(ver))
> +		def_to_bigsmp = 1;
> +	else
> +		def_to_bigsmp = 0;
> +

I think this needs at least an CPU vendor == INTEL check, because
bigsmp doesn't work on big AMD systems.

[I have a new physflat i386 subarch pending for that] 

Also I would add a printk somewhere that warns when bigsmp
is not available.

>  	dmi_scan_machine();
>  
> -#ifdef CONFIG_X86_GENERICARCH
> -	generic_apic_probe(*cmdline_p);
> -#endif	
>  	if (efi_enabled)
>  		efi_map_memmap();
>  
> @@ -1600,6 +1602,14 @@ void __init setup_arch(char **cmdline_p)
>  		get_smp_config();
>  #endif
>  
> +#ifdef CONFIG_X86_GENERICARCH
> +	generic_apic_probe(*cmdline_p);
> +#endif        

This move looks risky because ACPI can already switch subarchs. Are you
sure the command line option still works? Testing on summit and es7000
would be good.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux