Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

posix-timers: Clear overrun in common_timer_set()

Keeping the overrun count of the previous setup around is just wrong. The
new setting has nothing to do with the previous one and has to start from a
clean slate.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>

authored by

Thomas Gleixner and committed by
Frederic Weisbecker
aca1dc0c bfa408f0

+1
+1
kernel/time/posix-timers.c
··· 881 881 timr->it_requeue_pending = (timr->it_requeue_pending + 2) & 882 882 ~REQUEUE_PENDING; 883 883 timr->it_overrun_last = 0; 884 + timr->it_overrun = -1LL; 884 885 885 886 /* Switch off the timer when it_value is zero */ 886 887 if (!new_setting->it_value.tv_sec && !new_setting->it_value.tv_nsec)