This patch series changes the 32-bit time types (timespec/itimerspec) to the 64-bit types (timespec64/itimerspec64), since 32-bit time types will break in the year 2038 on 32bit systems.
This patch series introduces new methods with timespec64/itimerspec64 type, and removes the old ones with timespec/itimerspec type for posix_clock_operations and k_clock structure.
--- Changes since v4: - Rebase the patch series. - Modify the subject line and the changelog.
Changes since v3: - Fix some introducing bugs.
Changes since v2: - Split the syscall conversion patch into small some patches.
Changes since V1: - Split some patch into small patch. - Add some default function for new 64bit methods for syscall function. - Move do_sys_settimeofday() function to head file. - Modify the EXPORT_SYMPOL issue. - Add new 64bit methods in cputime_nsecs.h file. ---
Baolin Wang (24): time: Introduce struct itimerspec64 timekeeping: Introduce current_kernel_time64() security: Introduce security_settime64() time: Introduce do_sys_settimeofday64() posix-timers: Introduce {get,put}_timespec and {get,put}_itimerspec posix-timers: Factor out the guts of 'timer_gettime' posix-timers: Implement y2038 safe timer_get64() callback posix-timers: Factor out the guts of 'timer_settime' posix-timers: Implement y2038 safe timer_set64() callback posix-timers: Factor out the guts of 'clock_settime' posix-timers: Implement y2038 safe clock_set64() callback posix-timers: Factor out the guts of 'clock_gettime' posix-timers: Implement y2038 safe clock_get64() callback posix-timers: Factor out the guts of 'clcok_getres' posix-timers: Implement y2038 safe clock_getres64() callback timekeeping: Change the implementation of timekeeping_clocktai() posix-timers: Convert to y2038 safe callbacks mmtimer: Convert to y2038 safe callbacks alarmtimer: Convert to y2038 safe callbacks posix-clock: Convert to y2038 safe callbacks time: Introduce timespec64_to_jiffies()/jiffies_to_timespec64() cputime: Introduce cputime_to_timespec64()/timespec64_to_cputime() posix-cpu-timers: Convert to y2038 safe callbacks k_clock: Remove y2038 unsafe callbacks
arch/powerpc/include/asm/cputime.h | 6 +- arch/s390/include/asm/cputime.h | 8 +- drivers/char/mmtimer.c | 36 +++-- drivers/ptp/ptp_clock.c | 22 +-- include/asm-generic/cputime_jiffies.h | 10 +- include/asm-generic/cputime_nsecs.h | 6 +- include/linux/cputime.h | 16 ++ include/linux/jiffies.h | 21 ++- include/linux/lsm_hooks.h | 5 +- include/linux/posix-clock.h | 10 +- include/linux/posix-timers.h | 18 +-- include/linux/security.h | 20 ++- include/linux/time64.h | 35 +++++ include/linux/timekeeping.h | 25 +++- kernel/time/alarmtimer.c | 38 ++--- kernel/time/posix-clock.c | 20 +-- kernel/time/posix-cpu-timers.c | 84 ++++++----- kernel/time/posix-timers.c | 257 +++++++++++++++++++++------------ kernel/time/time.c | 19 +-- kernel/time/timekeeping.c | 6 +- security/commoncap.c | 2 +- security/security.c | 2 +- 22 files changed, 412 insertions(+), 254 deletions(-)
On Fri, 12 Jun 2015, Baolin Wang wrote:
Sigh. Again threading of the series failed. Some patches are, the whole series is not. Can you please get your tools straight?
You neither managed to cc me on the security patch.
- Modify the subject line and the changelog:
timekeeping: Change the implementation of timekeeping_clocktai()
Sigh. How is that better than the previous one? It's more accurate, but equally useless.
And of course you did not address my request to change the macro mess in
posix-timers: Introduce {get,put}_timespec and {get,put}_itimerspec
according to the discussion with Arnd.
Thanks,
tglx
On 12 June 2015 at 21:16, Thomas Gleixner tglx@linutronix.de wrote:
On Fri, 12 Jun 2015, Baolin Wang wrote:
Sigh. Again threading of the series failed. Some patches are, the whole series is not. Can you please get your tools straight?
You neither managed to cc me on the security patch.
- Modify the subject line and the changelog:
timekeeping: Change the implementation of timekeeping_clocktai()
Sigh. How is that better than the previous one? It's more accurate, but equally useless.
And of course you did not address my request to change the macro mess in
posix-timers: Introduce {get,put}_timespec and {get,put}_itimerspec
according to the discussion with Arnd.
Thanks,
tglx
Hi Thomas,
Thanks for your comments, and i'll fix these problems you point out.