aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFenghua Yu <fenghua.yu@intel.com>2012-11-13 14:32:38 -0500
committerH. Peter Anvin <hpa@linux.intel.com>2012-11-14 12:39:44 -0500
commitf78cff48c3d13636705851b0a9e733db117d58ee (patch)
treeb6bd89c046057eb58719e05e4d76f96cf4439099
parent77b67063bb6bce6d475e910d3b886a606d0d91f7 (diff)
doc: Add x86 CPU0 online/offline feature
If CONFIG_BOOTPARAM_HOTPLUG_CPU0 is turned on, CPU0 is hotpluggable. Otherwise, by default CPU0 is not hotpluggable and kernel parameter cpu0_hotplug enables CPU0 online/offline feature. The documentations point out two known CPU0 dependencies. First, resume from hibernate or suspend always starts from CPU0. So hibernate and suspend are prevented if CPU0 is offline. Another dependency is PIC interrupts always go to CPU0. It's said that some machines may depend on CPU0 to poweroff/reboot. But I haven't seen such dependency on a few tested machines. Please let me know if you see any CPU0 dependencies on your machine. Signed-off-by: Fenghua Yu <fenghua.yu@intel.com> Link: http://lkml.kernel.org/r/1352835171-3958-2-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
-rw-r--r--Documentation/cpu-hotplug.txt24
-rw-r--r--Documentation/kernel-parameters.txt14
2 files changed, 38 insertions, 0 deletions
diff --git a/Documentation/cpu-hotplug.txt b/Documentation/cpu-hotplug.txt
index 66ef8f35613d..9f401350f502 100644
--- a/Documentation/cpu-hotplug.txt
+++ b/Documentation/cpu-hotplug.txt
@@ -207,6 +207,30 @@ by making it not-removable.
207 207
208In such cases you will also notice that the online file is missing under cpu0. 208In such cases you will also notice that the online file is missing under cpu0.
209 209
210Q: Is CPU0 removable on X86?
211A: Yes. If kernel is compiled with CONFIG_BOOTPARAM_HOTPLUG_CPU0=y, CPU0 is
212removable by default. Otherwise, CPU0 is also removable by kernel option
213cpu0_hotplug.
214
215But some features depend on CPU0. Two known dependencies are:
216
2171. Resume from hibernate/suspend depends on CPU0. Hibernate/suspend will fail if
218CPU0 is offline and you need to online CPU0 before hibernate/suspend can
219continue.
2202. PIC interrupts also depend on CPU0. CPU0 can't be removed if a PIC interrupt
221is detected.
222
223It's said poweroff/reboot may depend on CPU0 on some machines although I haven't
224seen any poweroff/reboot failure so far after CPU0 is offline on a few tested
225machines.
226
227Please let me know if you know or see any other dependencies of CPU0.
228
229If the dependencies are under your control, you can turn on CPU0 hotplug feature
230either by CONFIG_BOOTPARAM_HOTPLUG_CPU0 or by kernel parameter cpu0_hotplug.
231
232--Fenghua Yu <fenghua.yu@intel.com>
233
210Q: How do i find out if a particular CPU is not removable? 234Q: How do i find out if a particular CPU is not removable?
211A: Depending on the implementation, some architectures may show this by the 235A: Depending on the implementation, some architectures may show this by the
212absence of the "online" file. This is done if it can be determined ahead of 236absence of the "online" file. This is done if it can be determined ahead of
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 9776f068306b..f7cbe1d98cb4 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -1984,6 +1984,20 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
1984 1984
1985 nox2apic [X86-64,APIC] Do not enable x2APIC mode. 1985 nox2apic [X86-64,APIC] Do not enable x2APIC mode.
1986 1986
1987 cpu0_hotplug [X86] Turn on CPU0 hotplug feature when
1988 CONFIG_BOOTPARAM_HOTPLUG_CPU0 is off.
1989 Some features depend on CPU0. Known dependencies are:
1990 1. Resume from suspend/hibernate depends on CPU0.
1991 Suspend/hibernate will fail if CPU0 is offline and you
1992 need to online CPU0 before suspend/hibernate.
1993 2. PIC interrupts also depend on CPU0. CPU0 can't be
1994 removed if a PIC interrupt is detected.
1995 It's said poweroff/reboot may depend on CPU0 on some
1996 machines although I haven't seen such issues so far
1997 after CPU0 is offline on a few tested machines.
1998 If the dependencies are under your control, you can
1999 turn on cpu0_hotplug.
2000
1987 nptcg= [IA-64] Override max number of concurrent global TLB 2001 nptcg= [IA-64] Override max number of concurrent global TLB
1988 purges which is reported from either PAL_VM_SUMMARY or 2002 purges which is reported from either PAL_VM_SUMMARY or
1989 SAL PALO. 2003 SAL PALO.