x86: improve UP kernel when CPU-hotplug and SMP is enabled
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> Cc: <stable@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
committed by
Ingo Molnar
parent
8a541665b9
commit
649c6653fa
@@ -444,7 +444,7 @@ void __init alternative_instructions(void)
|
|||||||
_text, _etext);
|
_text, _etext);
|
||||||
|
|
||||||
/* Only switch to UP mode if we don't immediately boot others */
|
/* 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);
|
alternatives_smp_switch(0);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user