This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 17/19] y2038: use __kernel_timespec in sys_futex
- From: Thomas Gleixner <tglx at linutronix dot de>
- To: Arnd Bergmann <arnd at arndb dot de>
- Cc: y2038 at lists dot linaro dot org, baolin dot wang at linaro dot org, albert dot aribaud at 3adev dot fr, john dot stultz at linaro dot org, bamvor dot zhangjian at linaro dot org, ruchandani dot tina at gmail dot com, linux-api at vger dot kernel dot org, linux-kernel at vger dot kernel dot org, libc-alpha at sourceware dot org
- Date: Sat, 16 May 2015 00:53:17 +0200 (CEST)
- Subject: Re: [PATCH 17/19] y2038: use __kernel_timespec in sys_futex
- Authentication-results: sourceware.org; auth=none
- References: <1430929826-318934-1-git-send-email-arnd at arndb dot de> <1430929826-318934-18-git-send-email-arnd at arndb dot de>
On Wed, 6 May 2015, Arnd Bergmann wrote:
> Conversion for sys_futex is particularly easy, we can use the unmodified
> compat_sys_futex on 32-bit systems to provide compatibility for 32-bit
> time_t, and change sys_futex to pass a __kernel_timespec, which matches
> what future libc implementations will use as their struct timespec.
Unless I'm missing something I doubt that you get away that easy. It
works on 32bit, but not on 64 bit with 32bit app support:
Native 64bit: sys_futex()
32bit timespec32: compat_sys_futex()
32bit timespec64: ?????
You cannot map that to sys_futex() because the pointer size differs.
Thanks,
tglx