]> git.hungrycats.org Git - linux/commitdiff
x86: improve UP kernel when CPU-hotplug and SMP is enabled
authorThomas Gleixner <tglx@linutronix.de>
Mon, 13 Oct 2008 17:15:23 +0000 (17:15 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 22 Oct 2008 21:13:12 +0000 (14:13 -0700)
commit 649c6653fa94ec8f3ea32b19c97b790ec4e8e4ac upstream

num_possible_cpus() can be > 1 when disabled CPUs have been accounted.

Disabled CPUs are not in the cpu_present_map, so we can use
num_present_cpus() as a safe indicator to switch to UP alternatives.

Reported-by: Chuck Ebbert <cebbert@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/kernel/alternative.c

index d5ccf42267e47d1edd0876a48d1cc9aafa760e84..5e1c92b69d42c267a7311325e6d5c1256df6a8b5 100644 (file)
@@ -454,7 +454,7 @@ void __init alternative_instructions(void)
                                            _text, _etext);
 
                /* Only switch to UP mode if we don't immediately boot others */
-               if (num_possible_cpus() == 1 || setup_max_cpus <= 1)
+               if (num_present_cpus() == 1 || setup_max_cpus <= 1)
                        alternatives_smp_switch(0);
        }
 #endif