diff options
Diffstat (limited to 'drivers/cpuidle')
-rw-r--r-- | drivers/cpuidle/cpuidle.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index 5ce07b517c5..2e314849936 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/cpu.h> | 16 | #include <linux/cpu.h> |
17 | #include <linux/cpuidle.h> | 17 | #include <linux/cpuidle.h> |
18 | #include <linux/ktime.h> | 18 | #include <linux/ktime.h> |
19 | #include <linux/hrtimer.h> | ||
19 | 20 | ||
20 | #include "cpuidle.h" | 21 | #include "cpuidle.h" |
21 | 22 | ||
@@ -60,6 +61,12 @@ static void cpuidle_idle_call(void) | |||
60 | return; | 61 | return; |
61 | } | 62 | } |
62 | 63 | ||
64 | /* | ||
65 | * run any timers that can be run now, at this point | ||
66 | * before calculating the idle duration etc. | ||
67 | */ | ||
68 | hrtimer_peek_ahead_timers(); | ||
69 | |||
63 | /* ask the governor for the next state */ | 70 | /* ask the governor for the next state */ |
64 | next_state = cpuidle_curr_governor->select(dev); | 71 | next_state = cpuidle_curr_governor->select(dev); |
65 | if (need_resched()) | 72 | if (need_resched()) |