aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/time/timer.c
diff options
context:
space:
mode:
authorAnna-Maria Behnsen <anna-maria@linutronix.de>2024-02-21 10:05:29 +0100
committerThomas Gleixner <tglx@linutronix.de>2024-02-22 17:52:30 +0100
commitbebed6649e85fe55275bd20104ec8e0bdff1bf54 (patch)
tree3bfe73616c9effec535cd58534d37cd7144504dd /kernel/time/timer.c
parent2ed08e4bc53298db3f87b528cd804cb0cce066a9 (diff)
downloadlinux-bebed6649e85fe55275bd20104ec8e0bdff1bf54.tar.gz
timers: Restructure get_next_timer_interrupt()
get_next_timer_interrupt() contains two parts for the next timer interrupt calculation. Those two parts are separated by forwarding the base clock. But the second part does not depend on the forwarded base clock. Therefore restructure get_next_timer_interrupt() to keep things together which belong together. No functional change. Signed-off-by: Anna-Maria Behnsen <anna-maria@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Frederic Weisbecker <frederic@kernel.org> Link: https://lore.kernel.org/r/20240221090548.36600-2-anna-maria@linutronix.de
Diffstat (limited to 'kernel/time/timer.c')
-rw-r--r--kernel/time/timer.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/kernel/time/timer.c b/kernel/time/timer.c
index d44dba1d4af0dd..316ded68fa0640 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
@@ -1982,12 +1982,6 @@ u64 get_next_timer_interrupt(unsigned long basej, u64 basem)
if (base->next_expiry_recalc)
next_expiry_recalc(base);
- /*
- * We have a fresh next event. Check whether we can forward the
- * base.
- */
- __forward_timer_base(base, basej);
-
if (base->timers_pending) {
nextevt = base->next_expiry;
@@ -2006,6 +2000,12 @@ u64 get_next_timer_interrupt(unsigned long basej, u64 basem)
}
/*
+ * We have a fresh next event. Check whether we can forward the
+ * base.
+ */
+ __forward_timer_base(base, basej);
+
+ /*
* Base is idle if the next event is more than a tick away.
*
* If the base is marked idle then any timer add operation must forward