cpuidle: Ignore interval prediction result when timer is shorter

This patch prevents cpuidle menu governor from using repeating interval
prediction result if the idle period predicted is longer than the one
allowed by shortest running timer.

Signed-off-by: Tuukka Tikkanen <tuukka.tikkanen@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Tuukka Tikkanen 2013-08-14 19:02:34 +03:00 коммит произвёл Rafael J. Wysocki
Родитель 81455e7221
Коммит 330647a950
1 изменённых файлов: 4 добавлений и 1 удалений

Просмотреть файл

@ -238,10 +238,13 @@ again:
*
* The typical interval is obtained when standard deviation is small
* or standard deviation is small compared to the average interval.
*
* Use this result only if there is no timer to wake us up sooner.
*/
if (((avg > stddev * 6) && (divisor * 4 >= INTERVALS * 3))
|| stddev <= 20) {
data->predicted_us = avg;
if (data->expected_us > avg)
data->predicted_us = avg;
return;
} else if ((divisor * 4) > INTERVALS * 3) {