Re: [PATCH] timekeeping: Fix bogus clock_was_set() invocation in do_adjtimex()
From: John Stultz
Date: Mon Aug 05 2024 - 13:51:04 EST
On Sat, Aug 3, 2024 at 8:07 AM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>
> The addition of the bases argument to clock_was_set() fixed up all call
> sites correctly except for do_adjtimex(). This uses CLOCK_REALTIME
> instead of CLOCK_SET_WALL as argument. CLOCK_REALTIME is 0.
>
> As a result the effect of that clock_was_set() notification is incomplete
> and might result in timers expiring late because the hrtimer code does
> not re-evaluate the affected clock bases.
>
> Use CLOCK_SET_WALL instead of CLOCK_REALTIME to tell the hrtimers code
> which clock bases need to be re-evaluated.
Acked-by: John Stultz <jstultz@xxxxxxxxxx>
My only thought here is maybe renaming CLOCK_SET_WALL and
CLOCK_SET_BOOT to something like:
BASEMASK_WALL_CLOCK_SET and BASEMASK_BOOT_CLOCK_SET
Just to avoid future naming mixups or confusion with clockids?
thanks
-john