[patch 15/45] posix-timers: Clear overrun in common_timer_set()

Thomas Gleixner posted 45 patches 2 years, 8 months ago
There is a newer version of this series
[patch 15/45] posix-timers: Clear overrun in common_timer_set()
Posted by Thomas Gleixner 2 years, 8 months ago
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>
---
 kernel/time/posix-timers.c |    1 +
 1 file changed, 1 insertion(+)

--- a/kernel/time/posix-timers.c
+++ b/kernel/time/posix-timers.c
@@ -867,6 +867,7 @@ int common_timer_set(struct k_itimer *ti
 	timr->it_requeue_pending = (timr->it_requeue_pending + 2) &
 		~REQUEUE_PENDING;
 	timr->it_overrun_last = 0;
+	timr->it_overrun = -1LL;
 
 	/* Switch off the timer when it_value is zero */
 	if (!new_setting->it_value.tv_sec && !new_setting->it_value.tv_nsec)
Re: [patch 15/45] posix-timers: Clear overrun in common_timer_set()
Posted by Frederic Weisbecker 2 years, 7 months ago
Le Tue, Jun 06, 2023 at 04:37:42PM +0200, Thomas Gleixner a écrit :
> 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>

Reviewed-by: Frederic Weisbecker <frederic@kernel.org>