intel_idle: Voluntary leave_mm before entering deeper
authorSuresh Siddha <suresh.b.siddha@intel.com>
Fri, 1 Oct 2010 01:19:07 +0000 (21:19 -0400)
committerLen Brown <len.brown@intel.com>
Fri, 1 Oct 2010 01:19:22 +0000 (21:19 -0400)
commit6110a1f43c27b516e16d5ce8860fca50748c2a87
tree021233718337a4a72ba4715f4d0782d5253fec7c
parent9587a678fa56ea6d7f39b048f24f5d03a89bf9b3
intel_idle: Voluntary leave_mm before entering deeper

Avoid TLB flush IPIs for the cores in deeper c-states by voluntary leave_mm()
before entering into that state. CPUs tend to flush TLB in those c-states
anyways.

acpi_idle does this with C3-type states, but it was not caried over
when intel_idle was introduced.  intel_idle can apply it
to C-states in addition to those that ACPI might export as C3...

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/idle/intel_idle.c
include/linux/cpuidle.h