diff options
author | Andi Kleen <ak@suse.de> | 2006-01-11 16:42:35 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-11 22:01:11 -0500 |
commit | f62a91f6911479642c0018290d4248ace4287648 (patch) | |
tree | f5d941d1f1dab0bf462795c47fa8b616d31a833f /arch/x86_64/kernel/smpboot.c | |
parent | 92934bcbf96bc9dc931c40ca5f1a57685b7b813b (diff) |
[PATCH] x86_64: Don't reserve hotplug CPUs by default
Most users don't need it so no need to waste memory.
This means an user has to specify the appropiate number of
hotplug CPUs on the command line with additional_cpus=...
or fix their BIOS to follow the convention in
Documentation/x86-64/cpu-hotplug-spec
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/x86_64/kernel/smpboot.c')
-rw-r--r-- | arch/x86_64/kernel/smpboot.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/arch/x86_64/kernel/smpboot.c b/arch/x86_64/kernel/smpboot.c index ecbd7b83acc1..043b1d262a30 100644 --- a/arch/x86_64/kernel/smpboot.c +++ b/arch/x86_64/kernel/smpboot.c | |||
@@ -927,8 +927,8 @@ int additional_cpus __initdata = -1; | |||
927 | * | 927 | * |
928 | * Three ways to find out the number of additional hotplug CPUs: | 928 | * Three ways to find out the number of additional hotplug CPUs: |
929 | * - If the BIOS specified disabled CPUs in ACPI/mptables use that. | 929 | * - If the BIOS specified disabled CPUs in ACPI/mptables use that. |
930 | * - otherwise use half of the available CPUs or 2, whatever is more. | ||
931 | * - The user can overwrite it with additional_cpus=NUM | 930 | * - The user can overwrite it with additional_cpus=NUM |
931 | * - Otherwise don't reserve additional CPUs. | ||
932 | * We do this because additional CPUs waste a lot of memory. | 932 | * We do this because additional CPUs waste a lot of memory. |
933 | * -AK | 933 | * -AK |
934 | */ | 934 | */ |
@@ -938,13 +938,10 @@ __init void prefill_possible_map(void) | |||
938 | int possible; | 938 | int possible; |
939 | 939 | ||
940 | if (additional_cpus == -1) { | 940 | if (additional_cpus == -1) { |
941 | if (disabled_cpus > 0) { | 941 | if (disabled_cpus > 0) |
942 | additional_cpus = disabled_cpus; | 942 | additional_cpus = disabled_cpus; |
943 | } else { | 943 | else |
944 | additional_cpus = num_processors / 2; | 944 | additional_cpus = 0; |
945 | if (additional_cpus == 0) | ||
946 | additional_cpus = 2; | ||
947 | } | ||
948 | } | 945 | } |
949 | possible = num_processors + additional_cpus; | 946 | possible = num_processors + additional_cpus; |
950 | if (possible > NR_CPUS) | 947 | if (possible > NR_CPUS) |