[PATCH 06/18] x86 idle: deprecate mwait_idle() and "idle=mwait"cmdline param

From: Len Brown
Date: Sat Apr 02 2011 - 02:23:29 EST


From: Len Brown <len.brown@xxxxxxxxx>

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.

cc: x86@xxxxxxxxxx
cc: stable@xxxxxxxxxx
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
---
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 <len.brown@xxxxxxxxx>

----------------------------

+What: x86 "idle=mwait" cmdline param
+When: 2.6.40
+Why: simplify x86 idle code
+Who: Len Brown <len.brown@xxxxxxxxx>
+
+----------------------------
+
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
--
1.7.5.rc0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/