Re: [PATCH 2/2] selftests: timers: measure the CPU timers on the clock they count

From: John Stultz

Date: Thu Sep 24 2026 - 15:30:23 EST


On Wed, Sep 16, 2026 at 6:52 PM Eva Kurchatova
<eva.kurchatova@xxxxxxxxxxxxx> wrote:
>
> Commit b00385b8d081 ("selftests/posix_timers: Use CLOCK_THREAD_CPUTIME_ID
> for ITIMER_PROF measurements") gave ITIMER_PROF the clock it counts, as
> measuring a CPU timer against the wall says nothing on a machine where
> the task does not have a CPU to itself. The other CPU timers are still
> measured against CLOCK_REALTIME and fail the same way. With four busy
> loops on the two CPUs of a test machine:
>
> not ok 2 ITIMER_VIRTUAL
> not ok 5 timer_create() per CLOCK_THREAD_CPUTIME_ID
> not ok 6 timer_create() per CLOCK_PROCESS_CPUTIME_ID
>
> ITIMER_VIRTUAL counts the time the task spends in userspace, so take
> CLOCK_THREAD_CPUTIME_ID for it as well; the loop it runs stays in
> userspace, so what that clock adds for system time is far inside the
> half a second the check allows. check_timer_create() arms its timer on
> the clock it is given, so measure on that one.
>
> The test then passes whole on that machine, 19 of 19, busy or idle.
>
> Signed-off-by: Eva Kurchatova <eva.kurchatova@xxxxxxxxxxxxx>

Looks reasonable to me.

Acked-by: John Stultz <jstultz@xxxxxxxxxx>

thanks
-john