Fix handling of __vdso_clock_gettime
authorUlrich Drepper <drepper@gmail.com>
Wed, 7 Sep 2011 03:50:04 +0000 (23:50 -0400)
committerUlrich Drepper <drepper@gmail.com>
Wed, 7 Sep 2011 03:50:04 +0000 (23:50 -0400)
ChangeLog
sysdeps/unix/sysv/linux/x86_64/clock_gettime.c

index 6ca72bf..db4150e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2011-09-06  Ulrich Drepper  <drepper@gmail.com>
 
+       * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c (INTERNAL_GETTIME):
+       Forgot to demangle the pointer.
+
        * sysdeps/i386/sysdep.h: Define atom_text_section.
        * sysdeps/x86_64/sysdep.h: Likewise.
        * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: Place function in
index 9d6cd23..7802701 100644 (file)
@@ -2,9 +2,13 @@
 
 #ifdef SHARED
 # define SYSCALL_GETTIME(id, tp) \
-  (*__vdso_clock_gettime) (id, tp)
+  ({ long int (*f) (clockid_t, struct timespec *) = __vdso_clock_gettime; \
+  PTR_DEMANGLE (f);                                                      \
+  f (id, tp); })
 # define INTERNAL_GETTIME(id, tp) \
-  (*__vdso_clock_gettime) (id, tp)
+  ({ long int (*f) (clockid_t, struct timespec *) = __vdso_clock_gettime; \
+  PTR_DEMANGLE (f);                                                      \
+  f (id, tp); })
 #endif
 
 #include "../clock_gettime.c"