diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-10-05 11:12:36 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-13 04:33:47 -0400 |
commit | b807305059c28fb8197496c944bfaa6b372a40ad (patch) | |
tree | 77d2cd1493c4cf57c67abc00a660769464a6a14d /arch | |
parent | 649c6653fa94ec8f3ea32b19c97b790ec4e8e4ac (diff) |
x86: remove additional_cpus configurability
additional_cpus=<x> parameter is dangerous and broken: for example
if we boot additional_cpus=-2 on a stock dual-core system it will
crash the box on bootup.
So reduce the maze of code a bit by removingthe user-configurability
angle.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/Kconfig | 18 | ||||
-rw-r--r-- | arch/x86/kernel/smpboot.c | 8 |
2 files changed, 1 insertions, 25 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index adaca6fa927d..fc8351f374fd 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -1438,24 +1438,6 @@ config HOTPLUG_CPU | |||
1438 | automatically on SMP systems. ) | 1438 | automatically on SMP systems. ) |
1439 | Say N if you want to disable CPU hotplug. | 1439 | Say N if you want to disable CPU hotplug. |
1440 | 1440 | ||
1441 | config HOTPLUG_RESTRICT_TO_BOOTUP_CPUS | ||
1442 | def_bool n | ||
1443 | prompt "Restrict CPU hotplugging to processors found during boot" if HOTPLUG_CPU | ||
1444 | ---help--- | ||
1445 | Say no here to use the default, which allows as many CPUs as are marked | ||
1446 | "disabled" by ACPI or MPTABLES to be hotplugged after bootup. | ||
1447 | |||
1448 | Say yes if you do not want to allow CPUs to be added after booting, for | ||
1449 | example if you only need CPU hotplugging enabled for suspend/resume. | ||
1450 | |||
1451 | If CPU_HOTPLUG is enabled this value may be overridden at boot time | ||
1452 | with the "additional_cpus" kernel parameter. | ||
1453 | |||
1454 | config HOTPLUG_ADDITIONAL_CPUS | ||
1455 | int | ||
1456 | default 0 if !HOTPLUG_CPU || HOTPLUG_RESTRICT_TO_BOOTUP_CPUS | ||
1457 | default -1 | ||
1458 | |||
1459 | config COMPAT_VDSO | 1441 | config COMPAT_VDSO |
1460 | def_bool y | 1442 | def_bool y |
1461 | prompt "Compat VDSO support" | 1443 | prompt "Compat VDSO support" |
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 857a88bb9195..8dd201c31329 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c | |||
@@ -1261,7 +1261,7 @@ void __init native_smp_cpus_done(unsigned int max_cpus) | |||
1261 | check_nmi_watchdog(); | 1261 | check_nmi_watchdog(); |
1262 | } | 1262 | } |
1263 | 1263 | ||
1264 | static int additional_cpus __initdata = CONFIG_HOTPLUG_ADDITIONAL_CPUS; | 1264 | static int additional_cpus = -1; |
1265 | 1265 | ||
1266 | /* | 1266 | /* |
1267 | * cpu_possible_map should be static, it cannot change as cpu's | 1267 | * cpu_possible_map should be static, it cannot change as cpu's |
@@ -1334,12 +1334,6 @@ static void remove_siblinginfo(int cpu) | |||
1334 | cpu_clear(cpu, cpu_sibling_setup_map); | 1334 | cpu_clear(cpu, cpu_sibling_setup_map); |
1335 | } | 1335 | } |
1336 | 1336 | ||
1337 | static __init int setup_additional_cpus(char *s) | ||
1338 | { | ||
1339 | return s && get_option(&s, &additional_cpus) ? 0 : -EINVAL; | ||
1340 | } | ||
1341 | early_param("additional_cpus", setup_additional_cpus); | ||
1342 | |||
1343 | static void __ref remove_cpu_from_maps(int cpu) | 1337 | static void __ref remove_cpu_from_maps(int cpu) |
1344 | { | 1338 | { |
1345 | cpu_clear(cpu, cpu_online_map); | 1339 | cpu_clear(cpu, cpu_online_map); |