Re: [patch V3 19/22] timer: Forward wheel clock whenever possible

From: Richard Cochran
Date: Fri Jun 24 2016 - 16:45:29 EST


On Fri, Jun 24, 2016 at 02:32:19PM -0000, Thomas Gleixner wrote:
> @@ -809,6 +815,12 @@ static void tick_nohz_restart_sched_tick
> tick_do_update_jiffies64(now);
> cpu_load_update_nohz_stop();
>
> + /*
> + * Clear the timer idle flag, so we avoid IPIs on remote queueing and
> + * the clock forward checks in the enqueue path.
> + */
> + timer_clear_idle();

Since function calls timer_clear_idle() already ...

> calc_load_exit_idle();
> touch_softlockup_watchdog_sched();
> /*
> @@ -1025,6 +1037,7 @@ void tick_nohz_idle_exit(void)
> tick_nohz_stop_idle(ts, now);
>
> if (ts->tick_stopped) {
> + timer_clear_idle();
> tick_nohz_restart_sched_tick(ts, now);
> tick_nohz_account_idle_ticks(ts);
> }

... there is no need to call timer_clear_idle() here.

Thanks,
Richard