Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5d4c47e0 authored by Len Brown's avatar Len Brown
Browse files

x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param



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: default avatarLen Brown <len.brown@intel.com>
parent cdaab4a0
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -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

+1 −0
Original line number Diff line number Diff line
@@ -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