[PATCH v2 00/17] timekeeping, hrtimer: Assorted cleanups
From: Thomas Weißschuh (Schneider Electric)
Date: Mon Aug 03 2026 - 06:21:19 EST
Various cleanups I stumbled over while working on the timekeeping code.
Based on tip/timers/core.
Signed-off-by: Thomas Weißschuh (Schneider Electric) <thomas.weissschuh@xxxxxxxxxxxxx>
---
Changes in v2:
- Pick up Acks from John.
- Extend the description of "Explicitly list the tested clocks" patches.
- Drop some more custom ?SEC_PER_?SEC definitions.
- Drop SKIPPED_CLOCK_COUNT from nsleep-lat.c.
- Explicitly handle timer_delete() failure in nanosleep.c.
- Link to v1: https://patch.msgid.link/20260730-auxclock-nanosleep-prep-v1-0-cd8b61229a7c@xxxxxxxxxxxxx
---
Thomas Weißschuh (Schneider Electric) (17):
timekeeping: Rename clockid_aux_valid() to clockid_is_aux_clock()
timekeeping: Use u32 for clock_was_set_seq
hrtimer: Add a lockdep assertion to hrtimer_update_base()
timer_list: Use standard 'long long' format placeholders
timer_list: Use ktime_t over nanoseconds
selftests: add clock-helpers.h
selftests: timers: Use clock_name() and constants from clock-helpers.h
selftests: timers: nanosleep: Drop output alignment
selftests: timers: nanosleep: Explicitly list the tested clocks
selftests: timers: nanosleep: Reuse kselftest error numbers
selftests: timers: nanosleep: Move all single clock tests out of the loop in main()
selftests: timers: nanosleep: Explicitly handle timer_delete() failure
selftests: timers: nanosleep: Report each test separately
selftests: timers: nsleep-lat: Use NSEC_PER_MSEC define for unreasonable latency
selftests: timers: nsleep-lat: Explicitly list the tested clocks
selftests: timers: nsleep-lat: Reuse kselftest error numbers
selftests: timers: nsleep-lat: Check all calls to clock_nanosleep() and clock_gettime()
include/linux/hrtimer_bases.h | 2 +-
include/linux/posix-timers.h | 2 +-
include/linux/timekeeper_internal.h | 2 +-
include/linux/timekeeping.h | 2 +-
kernel/time/hrtimer.c | 4 +-
kernel/time/timekeeping.c | 9 +-
kernel/time/timekeeping.h | 2 +-
kernel/time/timer_list.c | 65 +++++----
tools/testing/selftests/clock-helpers.h | 76 +++++++++++
tools/testing/selftests/timers/adjtick.c | 5 +-
.../testing/selftests/timers/alarmtimer-suspend.c | 38 +-----
.../testing/selftests/timers/inconsistency-check.c | 38 +-----
tools/testing/selftests/timers/leap-a-day.c | 3 +-
tools/testing/selftests/timers/mqueue-lat.c | 3 +-
tools/testing/selftests/timers/nanosleep.c | 145 ++++++++-------------
tools/testing/selftests/timers/nsleep-lat.c | 102 +++++----------
tools/testing/selftests/timers/posix_timers.c | 36 ++---
tools/testing/selftests/timers/raw_skew.c | 3 +-
tools/testing/selftests/timers/set-2038.c | 3 +-
tools/testing/selftests/timers/set-timer-lat.c | 41 +-----
tools/testing/selftests/timers/valid-adjtimex.c | 4 +-
21 files changed, 251 insertions(+), 334 deletions(-)
---
base-commit: ecc330e3096173f433659aa64ab3674d0d48440e
change-id: 20260730-auxclock-nanosleep-prep-0316e89e6ac2
Best regards,
--
Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>