diff options
author | Ashok Raj <ashok.raj@intel.com> | 2005-09-09 16:01:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-09 16:57:30 -0400 |
commit | 092c948811359d8715790af0eedefc7dff1cd619 (patch) | |
tree | 9936b6014dda94ed52efe64e34f9d923cbae8390 /arch/x86_64/kernel/smpboot.c | |
parent | fdf26d933a8171c2a5bd35b4a5ca3b099a216a35 (diff) |
[PATCH] x86_64: Don't call enforce_max_cpus when hotplug is enabled
enforce_max_cpus nukes out cpu_present_map and cpu_possible_map making it
impossible to add new cpus in the system. Since it doesnt provide any
additional value apart this call and reference is removed.
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
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 | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/arch/x86_64/kernel/smpboot.c b/arch/x86_64/kernel/smpboot.c index 90aeccd15190..4fb34b5cb1f9 100644 --- a/arch/x86_64/kernel/smpboot.c +++ b/arch/x86_64/kernel/smpboot.c | |||
@@ -894,23 +894,6 @@ static __init void disable_smp(void) | |||
894 | cpu_set(0, cpu_core_map[0]); | 894 | cpu_set(0, cpu_core_map[0]); |
895 | } | 895 | } |
896 | 896 | ||
897 | /* | ||
898 | * Handle user cpus=... parameter. | ||
899 | */ | ||
900 | static __init void enforce_max_cpus(unsigned max_cpus) | ||
901 | { | ||
902 | int i, k; | ||
903 | k = 0; | ||
904 | for (i = 0; i < NR_CPUS; i++) { | ||
905 | if (!cpu_possible(i)) | ||
906 | continue; | ||
907 | if (++k > max_cpus) { | ||
908 | cpu_clear(i, cpu_possible_map); | ||
909 | cpu_clear(i, cpu_present_map); | ||
910 | } | ||
911 | } | ||
912 | } | ||
913 | |||
914 | #ifdef CONFIG_HOTPLUG_CPU | 897 | #ifdef CONFIG_HOTPLUG_CPU |
915 | /* | 898 | /* |
916 | * cpu_possible_map should be static, it cannot change as cpu's | 899 | * cpu_possible_map should be static, it cannot change as cpu's |
@@ -999,8 +982,6 @@ void __init smp_prepare_cpus(unsigned int max_cpus) | |||
999 | current_cpu_data = boot_cpu_data; | 982 | current_cpu_data = boot_cpu_data; |
1000 | current_thread_info()->cpu = 0; /* needed? */ | 983 | current_thread_info()->cpu = 0; /* needed? */ |
1001 | 984 | ||
1002 | enforce_max_cpus(max_cpus); | ||
1003 | |||
1004 | #ifdef CONFIG_HOTPLUG_CPU | 985 | #ifdef CONFIG_HOTPLUG_CPU |
1005 | prefill_possible_map(); | 986 | prefill_possible_map(); |
1006 | #endif | 987 | #endif |