linux: Use GLRO(dl_vdso_time) on time

The BZ#24967 fix (1bdda52fe9) missed the time for
architectures that define USE_IFUNC_TIME.  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:22:44 -03:00
parent 02b195d30f
commit 55d33108c7

View File

@ -33,10 +33,9 @@ time_syscall (time_t *t)
} }
# undef INIT_ARCH # undef INIT_ARCH
# define INIT_ARCH() \ # define INIT_ARCH()
void *vdso_time = dl_vdso_vsym (HAVE_TIME_VSYSCALL);
libc_ifunc (time, libc_ifunc (time,
vdso_time ? VDSO_IFUNC_RET (vdso_time) GLRO(dl_vdso_time) != NULL ? VDSO_IFUNC_RET (GLRO(dl_vdso_time))
: (void *) time_syscall); : (void *) time_syscall);
# else # else