[lkml]   [2011]   [Apr]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[PATCH 06/18] x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param
From: Len Brown <>

mwait_idle() is a C1-only idle loop intended to be more efficient
than HLT on SMP hardware that supports it.

But mwait_idle() has been replaced by the more general
mwait_idle_with_hints(), which handles both C1 and deeper C-states.
ACPI uses only mwait_idle_with_hints(), and never uses mwait_idle().

Deprecate mwait_idle() and the "idle=mwait" cmdline param
to simplify the x86 idle code.

After this change, kernels configured with
(!CONFIG_ACPI=n && !CONFIG_INTEL_IDLE=n) when run on hardware
that support MWAIT will simply use HLT. If MWAIT is desired
on those systems, cpuidle and the cpuidle drivers above
will support it.

Signed-off-by: Len Brown <>
Documentation/feature-removal-schedule.txt | 7 +++++++
arch/x86/kernel/process.c | 1 +
2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index f587159..9ee4a2c 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -35,6 +35,13 @@ Who: Len Brown <>


+What: x86 "idle=mwait" cmdline param
+When: 2.6.40
+Why: simplify x86 idle code
+Who: Len Brown <>
What: PRISM54
When: 2.6.34

diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
index 17b8771..1f64501 100644
--- a/arch/x86/kernel/process.c
+++ b/arch/x86/kernel/process.c
@@ -645,6 +645,7 @@ static int __init idle_setup(char *str)
boot_option_idle_override = IDLE_POLL;
} else if (!strcmp(str, "mwait")) {
boot_option_idle_override = IDLE_FORCE_MWAIT;
+ WARN_ONCE(1, "\idle=mwait\" will be removed in 2.6.40\"\n");
} else if (!strcmp(str, "halt")) {
* When the boot option of idle=halt is added, halt is

 \ /
  Last update: 2011-04-02 08:27    [from the cache]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site