rpms/kernel/devel linux-2.6-x86-improve-up-kernel-when-cpu-hotplug-and-smp.patch, NONE, 1.1 kernel.spec, 1.1034, 1.1035

Chuck Ebbert cebbert at fedoraproject.org
Thu Oct 9 17:50:38 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv12893

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-x86-improve-up-kernel-when-cpu-hotplug-and-smp.patch 
Log Message:
x86: switch to UP mode when only one CPU is present at boot time

linux-2.6-x86-improve-up-kernel-when-cpu-hotplug-and-smp.patch:

--- NEW FILE linux-2.6-x86-improve-up-kernel-when-cpu-hotplug-and-smp.patch ---
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 5 Oct 2008 14:52:24 +0000 (+0200)
Subject: x86: improve UP kernel when CPU-hotplug and SMP is enabled
X-Git-Tag: tip-history-2008-10-08_08.31_Wed~26^2~5
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fx86%2Flinux-2.6-tip.git;a=commitdiff_plain;h=683fa0c76b4245a85cc0601a0cab6459cad27fe8

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 at redhat.com>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Cc: <stable at kernel.org>
Signed-off-by: Ingo Molnar <mingo at elte.hu>
---

diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
index fb04e49..a84ac7b 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -444,7 +444,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


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1034
retrieving revision 1.1035
diff -u -r1.1034 -r1.1035
--- kernel.spec	9 Oct 2008 17:00:14 -0000	1.1034
+++ kernel.spec	9 Oct 2008 17:50:07 -0000	1.1035
@@ -584,6 +584,7 @@
 
 Patch41: linux-2.6-sysrq-c.patch
 Patch42: linux-2.6-x86-tune-generic.patch
+Patch43: linux-2.6-x86-improve-up-kernel-when-cpu-hotplug-and-smp.patch
 
 Patch140: linux-2.6-ps3-ehci-iso.patch
 Patch141: linux-2.6-ps3-storage-alias.patch
@@ -1057,6 +1058,8 @@
 # x86(-64)
 # Compile 686 kernels tuned for Pentium4.
 ApplyPatch linux-2.6-x86-tune-generic.patch
+# detect single CPU present at boot properly
+ApplyPatch linux-2.6-x86-improve-up-kernel-when-cpu-hotplug-and-smp.patch
 
 #
 # PowerPC
@@ -1819,6 +1822,9 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Thu Oct 09 2008 Chuck Ebbert <cebbert at redhat.com>
+- x86: switch to UP mode when only one CPU is present at boot time
+
 * Thu Oct 09 2008 Peter Jones <pjones at redhat.com>
 - Fix the return code CD accesses when the CDROM drive door is closed
   but the drive isn't yet ready.




More information about the scm-commits mailing list