Hi Thomas,
I've had these patches for a while but never got around to submitting them. I recently rebased them after the boot time removal and now again after the revert.
I'd like to see these go into v4.18 as a preparation for a last set of driver conversions to y2038-safe interfaces that I've held off for now since the interfaces were suboptimal.
The problems solved by this series are: - aliasing timespec to timespec64 is a little erorr-prone, and in particular requires ugly casts to print a tv_sec field using the same format string across architectures
- naming is inconsistent, and while converting from the deprecated time_t to something else, I'd like to also convert to a ktime_get_*() API for consistency
- drivers that use current_kernel_time() today often care about the call being fast but don't care about it being CLOCK_REALTIME based, so they are better off being changed to a CLOCK_MONOTONIC or CLOCK_BOOTTIME based accessor to avoid issues with time going backwards.
Arnd
Arnd Bergmann (5): timekeeping: Remove timespec64 hack timekeeping: Clean up ktime_get_real_ts64 timekeeping: Standardize on ktime_get_*() naming timekeeping: Add ktime_get_coarse_with_offset timekeeping: Add more coarse clocktai/boottime interfaces
include/linux/time32.h | 18 ++------- include/linux/time64.h | 7 ---- include/linux/timekeeping.h | 91 ++++++++++++++++++++++++++++++++++++------- include/linux/timekeeping32.h | 70 ++++++--------------------------- kernel/time/time.c | 2 - kernel/time/timekeeping.c | 73 ++++++++++++++++------------------ 6 files changed, 124 insertions(+), 137 deletions(-)