diff options
Diffstat (limited to 'drivers/cpuidle/cpuidle.c')
-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 bb6e3b338043..5bed73329ef8 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 | ||
@@ -64,6 +65,12 @@ static void cpuidle_idle_call(void) | |||
64 | return; | 65 | return; |
65 | } | 66 | } |
66 | 67 | ||
68 | /* | ||
69 | * run any timers that can be run now, at this point | ||
70 | * before calculating the idle duration etc. | ||
71 | */ | ||
72 | hrtimer_peek_ahead_timers(); | ||
73 | |||
67 | /* ask the governor for the next state */ | 74 | /* ask the governor for the next state */ |
68 | next_state = cpuidle_curr_governor->select(dev); | 75 | next_state = cpuidle_curr_governor->select(dev); |
69 | if (need_resched()) | 76 | if (need_resched()) |