From: Ashok Raj 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 Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Andrew Morton --- arch/x86_64/kernel/smpboot.c | 19 ------------------- 1 files changed, 19 deletions(-) diff -puN arch/x86_64/kernel/smpboot.c~x86_64-dont-call-enforce_max_cpus-when-hotplug-is-enabled-2 arch/x86_64/kernel/smpboot.c --- devel/arch/x86_64/kernel/smpboot.c~x86_64-dont-call-enforce_max_cpus-when-hotplug-is-enabled-2 2005-09-07 20:10:36.000000000 -0700 +++ devel-akpm/arch/x86_64/kernel/smpboot.c 2005-09-07 20:10:36.000000000 -0700 @@ -878,23 +878,6 @@ static __init void disable_smp(void) cpu_set(0, cpu_core_map[0]); } -/* - * Handle user cpus=... parameter. - */ -static __init void enforce_max_cpus(unsigned max_cpus) -{ - int i, k; - k = 0; - for (i = 0; i < NR_CPUS; i++) { - if (!cpu_possible(i)) - continue; - if (++k > max_cpus) { - cpu_clear(i, cpu_possible_map); - cpu_clear(i, cpu_present_map); - } - } -} - #ifdef CONFIG_HOTPLUG_CPU /* * cpu_possible_map should be static, it cannot change as cpu's @@ -983,8 +966,6 @@ void __init smp_prepare_cpus(unsigned in current_cpu_data = boot_cpu_data; current_thread_info()->cpu = 0; /* needed? */ - enforce_max_cpus(max_cpus); - #ifdef CONFIG_HOTPLUG_CPU prefill_possible_map(); #endif _