posix-timers: Avoid direct access to hrtimer clockbase
authorThomas Weißschuh <thomas.weissschuh@linutronix.de>
Thu, 21 Aug 2025 13:28:08 +0000 (15:28 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 9 Sep 2025 10:27:17 +0000 (12:27 +0200)
The field timer->base->get_time is a private implementation detail and
should not be accessed outside of the hrtimer core.

Switch to the equivalent helpers.

Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/all/20250821-hrtimer-cleanup-get_time-v2-1-3ae822e5bfbd@linutronix.de
kernel/time/posix-timers.c

index 8b58217..2741f37 100644 (file)
@@ -299,8 +299,7 @@ static void common_hrtimer_rearm(struct k_itimer *timr)
 {
        struct hrtimer *timer = &timr->it.real.timer;
 
-       timr->it_overrun += hrtimer_forward(timer, timer->base->get_time(),
-                                           timr->it_interval);
+       timr->it_overrun += hrtimer_forward_now(timer, timr->it_interval);
        hrtimer_restart(timer);
 }
 
@@ -825,7 +824,7 @@ static void common_hrtimer_arm(struct k_itimer *timr, ktime_t expires,
        hrtimer_setup(&timr->it.real.timer, posix_timer_fn, timr->it_clock, mode);
 
        if (!absolute)
-               expires = ktime_add_safe(expires, timer->base->get_time());
+               expires = ktime_add_safe(expires, hrtimer_cb_get_time(timer));
        hrtimer_set_expires(timer, expires);
 
        if (!sigev_none)