Commit 26f7ef14a76b0e590a3797fd7b2f3cee868d9664

Authored by Yinghai Lu
Committed by Ingo Molnar
1 parent 43f39890db

x86: don't treat bigsmp as non-standard

just like 64 bit switch from flat logical APIC messages to
flat physical mode automatically.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

Showing 5 changed files with 12 additions and 13 deletions Side-by-side Diff

... ... @@ -262,6 +262,12 @@
262 262 For old smp systems that do not have proper acpi support. Newer systems
263 263 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it
264 264  
  265 +config X86_BIGSMP
  266 + bool "Support for big SMP systems with more than 8 CPUs"
  267 + depends on X86_32 && SMP
  268 + help
  269 + This option is needed for the systems that have more than 8 CPUs
  270 +
265 271 config X86_NON_STANDARD
266 272 bool "Support for non-standard x86 platforms"
267 273 help
... ... @@ -338,13 +344,6 @@
338 344 if you select them all, kernel will probe it one by one. and will
339 345 fallback to default.
340 346  
341   -config X86_BIGSMP
342   - bool "Support for big SMP systems with more than 8 CPUs"
343   - depends on X86_32_NON_STANDARD
344   - help
345   - This option is needed for the systems that have more than 8 CPUs
346   - and if the system is not of any sub-arch type above.
347   -
348 347 config X86_NUMAQ
349 348 bool "NUMAQ (IBM/Sequent)"
350 349 depends on X86_32_NON_STANDARD
... ... @@ -366,7 +365,7 @@
366 365  
367 366 config X86_ES7000
368 367 bool "Support for Unisys ES7000 IA32 series"
369   - depends on X86_32_NON_STANDARD
  368 + depends on X86_32_NON_STANDARD && X86_BIGSMP
370 369 help
371 370 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
372 371 supposed to run on an IA32-based Unisys ES7000 system.
arch/x86/kernel/acpi/boot.c
... ... @@ -1335,7 +1335,7 @@
1335 1335 if (!error) {
1336 1336 acpi_lapic = 1;
1337 1337  
1338   -#ifdef CONFIG_X86_32_NON_STANDARD
  1338 +#ifdef CONFIG_X86_BIGSMP
1339 1339 generic_bigsmp_probe();
1340 1340 #endif
1341 1341 /*
arch/x86/kernel/mpparse.c
... ... @@ -372,8 +372,8 @@
372 372 (*x86_quirks->mpc_record)++;
373 373 }
374 374  
375   -#ifdef CONFIG_X86_32_NON_STANDARD
376   - generic_bigsmp_probe();
  375 +#ifdef CONFIG_X86_BIGSMP
  376 + generic_bigsmp_probe();
377 377 #endif
378 378  
379 379 if (apic->setup_apic_routing)
arch/x86/kernel/setup.c
... ... @@ -936,7 +936,7 @@
936 936 map_vsyscall();
937 937 #endif
938 938  
939   -#ifdef CONFIG_X86_32_NON_STANDARD
  939 +#if defined(CONFIG_X86_32_NON_STANDARD) || defined(CONFIG_X86_BIGSMP)
940 940 generic_apic_probe();
941 941 #endif
942 942  
arch/x86/kernel/smpboot.c
... ... @@ -1007,7 +1007,7 @@
1007 1007  
1008 1008 printk(KERN_WARNING
1009 1009 "More than 8 CPUs detected - skipping them.\n"
1010   - "Use CONFIG_X86_32_NON_STANDARD and CONFIG_X86_BIGSMP.\n");
  1010 + "Use CONFIG_X86_BIGSMP.\n");
1011 1011  
1012 1012 nr = 0;
1013 1013 for_each_present_cpu(cpu) {