linux: Use GLRO(dl_vdso_gettimeofday) on gettimeofday

The BZ#24967 fix (1bdda52fe9) missed the gettimeofday for
architectures that define USE_IFUNC_GETTIMEOFDAY.  Although it is not
an issue, since there is no pointer mangling, there is also no need
to call dl_vdso_vsym since the vDSO setup was already done by the
loader.

Checked on x86_64-linux-gnu and i686-linux-gnu.
This commit is contained in:
Adhemerval Zanella 2024-09-04 10:10:31 -03:00
parent 7949f552cb
commit 02b195d30f

View File

@ -37,11 +37,11 @@ __gettimeofday_syscall (struct timeval *restrict tv, void *restrict tz)
}
# undef INIT_ARCH
# define INIT_ARCH() \
void *vdso_gettimeofday = dl_vdso_vsym (HAVE_GETTIMEOFDAY_VSYSCALL)
# define INIT_ARCH()
libc_ifunc (__gettimeofday,
vdso_gettimeofday ? VDSO_IFUNC_RET (vdso_gettimeofday)
: (void *) __gettimeofday_syscall)
GLRO(dl_vdso_gettimeofday) != NULL
? VDSO_IFUNC_RET (GLRO(dl_vdso_gettimeofday))
: (void *) __gettimeofday_syscall)
# else
int