aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/cpuidle/cpuidle.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/cpuidle/cpuidle.c')
-rw-r--r--drivers/cpuidle/cpuidle.c7
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())