]> git.baikalelectronics.ru Git - kernel.git/commit
cpuidle: fix 100% C0 statistics regression
authorVenki Pallipadi <venkatesh.pallipadi@intel.com>
Fri, 29 Feb 2008 18:24:32 +0000 (10:24 -0800)
committerLen Brown <len.brown@intel.com>
Wed, 26 Mar 2008 04:58:19 +0000 (00:58 -0400)
commitbc9fca7dde7e615125a91a625b5ff633a97755df
treeaafbc4628b907f4134ad91db9b160941f246dfcf
parentcac636bdf4fb000e72dda5d0b1a32b55bba62981
cpuidle: fix 100% C0 statistics regression

commit fbb8b79639f500a67c796bc313141a14269a9fc3
'ACPI: cpuidle: Support C1 idle time accounting'
was implicated in a 100% C0 idle regression.
http://bugzilla.kernel.org/show_bug.cgi?id=10076

It pointed out a potential problem where the menu governor
may get confused by the C-state residency time from poll
idle or C1 idle, where this timing info is not accurate.
This inaccuracy is due to interrupts being handled
before we account for C-state exit.

Do not mark TIME_VALID for CO poll state.
Mark C1 time as valid only with the MWAIT (CSTATE_FFH) entry method.

This makes governors use the timing information only when it is correct and
eliminates any wrong policy decisions that may result from invalid timing
information.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/processor_idle.c
drivers/cpuidle/cpuidle.c