diff options
author | Ulrich Drepper <drepper@redhat.com> | 2007-08-13 00:23:59 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2007-08-13 00:23:59 +0000 |
commit | 3c87d79db7ae1f65294d088be7709140780b652c (patch) | |
tree | 603151b0786c63510e4e3f85bb019bb7da9aa312 /sysdeps/unix/sysv/linux/x86_64/libc-start.c | |
parent | 974a1f0fb2fa441152dfda9acb4c3898f67eea6a (diff) | |
download | glibc-3c87d79db7ae1f65294d088be7709140780b652c.tar.gz glibc-3c87d79db7ae1f65294d088be7709140780b652c.tar.xz glibc-3c87d79db7ae1f65294d088be7709140780b652c.zip |
* sysdeps/unix/sysv/linux/x86_64/libc-start.c
(_libc_vdso_platform_setup): Mangle function pointers before storing them. * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL): Demangle vdso pointer before use. (INTERNAL_VSYSCALL): Likewise. * elf/cache.c (primes): Mark as const. Noted by Roland McGrath.
Diffstat (limited to 'sysdeps/unix/sysv/linux/x86_64/libc-start.c')
-rw-r--r-- | sysdeps/unix/sysv/linux/x86_64/libc-start.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/x86_64/libc-start.c b/sysdeps/unix/sysv/linux/x86_64/libc-start.c index 08b1c497c8..0ce47952d7 100644 --- a/sysdeps/unix/sysv/linux/x86_64/libc-start.c +++ b/sysdeps/unix/sysv/linux/x86_64/libc-start.c @@ -30,9 +30,13 @@ _libc_vdso_platform_setup (void) { PREPARE_VERSION (linux26, "LINUX_2.6", 61765110); - __vdso_gettimeofday = _dl_vdso_vsym ("gettimeofday", &linux26); + void *p = _dl_vdso_vsym ("gettimeofday", &linux26); + PTR_MANGLE (p); + __vdso_gettimeofday = p; - __vdso_clock_gettime = _dl_vdso_vsym ("clock_gettime", &linux26); + p = _dl_vdso_vsym ("clock_gettime", &linux26); + PTR_MANGLE (p); + __vdso_clock_gettime = p; } # define VDSO_SETUP _libc_vdso_platform_setup |