[PATCH v2 2/7] y2038: Introduce __ASSUME_64BIT_TIME define
Joseph Myers
joseph@codesourcery.com
Tue May 7 20:44:00 GMT 2019
On Wed, 8 May 2019, Stepan Golosunov wrote:
> If you replace
>
> #ifdef __ASSUME_TIME64_SYSCALLS
>
> with
>
> #ifdef __NR_clock_settime64
>
> result would make more sense than what you have now.
Actually I'd expect it to start something more like
#ifdef __ASSUME_TIME64_SYSCALLS
return INLINE_SYSCALL_CALL (clock_settime64, clock_id, tp);
#elif defined __NR_clock_settime64
to behave as expected for both __ASSUME_TIME64_SYSCALLS, and the case
where __NR_clock_settime64 is defined but __ASSUME_TIME64_SYSCALLS is not.
(The correct fallback when __NR_clock_settime64 is not defined depends on
the size of time_t as used in the old syscalls. Note that you *cannot*
assume that 5.1 kernel headers are in use, so __NR_clock_settime64
undefined might means a system where the syscall ABI already uses 64-bit
times with clock_settime, or it might mean one where the syscall ABI uses
32-bit times with clock_settime but old kernel headers are in use.)
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list