On Fri, 8 Nov 2019, Arnd Bergmann wrote: > The gettimeofday() function in vdso uses the traditional 'timeval' > structure layout, which will be incompatible with future versions of > glibc on 32-bit architectures that use a 64-bit time_t. > > This interface is problematic for y2038, when time_t overflows on 32-bit > architectures, but the plan so far is that a libc with 64-bit time_t > will not call into the gettimeofday() vdso helper at all, and only > have a method for entering clock_gettime(). This means we don't have > to fix it here, though we probably want to add a new clock_gettime() > entry point using a 64-bit version of 'struct timespec' at some point. > > Changing the vdso code to use __kernel_old_timeval helps isolate > this usage from the other ones that still need to be fixed properly, > and it gets us closer to removing the 'timeval' definition from the > kernel sources. > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>