x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param
authorLen Brown <len.brown@intel.com>
Fri, 1 Apr 2011 19:46:09 +0000 (15:46 -0400)
committerLen Brown <len.brown@intel.com>
Sun, 29 May 2011 07:39:17 +0000 (03:39 -0400)
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
can be used.

cc: x86@kernel.org
cc: stable@kernel.org # .39.x
Signed-off-by: Len Brown <len.brown@intel.com>
Documentation/feature-removal-schedule.txt
arch/x86/kernel/process.c

index f1b0eb02aa1dd12d9ceaa43e8f8dbe3a29c2d39c..13f0bb3187bc634e9c2a0a332931861e58111a86 100644 (file)
@@ -35,6 +35,13 @@ Who: Len Brown <len.brown@intel.com>
 
 ----------------------------
 
+What:  x86 "idle=mwait" cmdline param
+When:  2012
+Why:   simplify x86 idle code
+Who:   Len Brown <len.brown@intel.com>
+
+----------------------------
+
 What:  PRISM54
 When:  2.6.34
 
index 84f3cdae44079074eae72450bc7c4f6b215a666f..8fb182956cbcf6721714e28732409e392d3083a8 100644 (file)
@@ -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 2012\"\n");
        } else if (!strcmp(str, "halt")) {
                /*
                 * When the boot option of idle=halt is added, halt is