diff --git a/kernel/sched/idle.c b/kernel/sched/idle.c index 1a3e9bddd17b67955f5f0446310a090872d7eacf..16f84142f2f492633b6068f8f7536cdae40c6e0d 100644 --- a/kernel/sched/idle.c +++ b/kernel/sched/idle.c @@ -190,7 +190,7 @@ static void cpuidle_idle_call(void) */ next_state = cpuidle_select(drv, dev, &stop_tick); - if (stop_tick) + if (stop_tick || tick_nohz_tick_stopped()) tick_nohz_idle_stop_tick(); else tick_nohz_idle_retain_tick();