Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b14ea38e authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'v28-timers-for-linus' of...

Merge branch 'v28-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'v28-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  NOHZ: fix thinko in the timer restart code path
parents 6770ab5c c4bd822e
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -567,11 +567,21 @@ static void tick_nohz_switch_to_nohz(void)
static void tick_nohz_kick_tick(int cpu)
{
	struct tick_sched *ts = &per_cpu(tick_cpu_sched, cpu);
	ktime_t delta, now;

	if (!ts->tick_stopped)
		return;

	tick_nohz_restart(ts, ktime_get());
	/*
	 * Do not touch the tick device, when the next expiry is either
	 * already reached or less/equal than the tick period.
	 */
	now = ktime_get();
	delta =	ktime_sub(ts->sched_timer.expires, now);
	if (delta.tv64 <= tick_period.tv64)
		return;

	tick_nohz_restart(ts, now);
}

#else