mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-23 03:10:05 +00:00
Fix clock_gettime for assumed kernel >= 2.6.12
This commit is contained in:
parent
a501a01e06
commit
446514f97e
@ -1,5 +1,10 @@
|
|||||||
2011-11-15 Andreas Schwab <schwab@redhat.com>
|
2011-11-15 Andreas Schwab <schwab@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/clock_gettime.c (SYSDEP_GETTIME_CPU)
|
||||||
|
[__ASSUME_POSIX_CPU_TIMERS > 0]: Assign to retval and break.
|
||||||
|
* sysdeps/unix/sysv/linux/x86_64/clock_gettime.c
|
||||||
|
(SYSCALL_GETTIME): Set errno on error.
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Properly
|
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Properly
|
||||||
count references to noai6ai_cached.
|
count references to noai6ai_cached.
|
||||||
|
|
||||||
|
@ -110,7 +110,9 @@ maybe_syscall_gettime (clockid_t clock_id, struct timespec *tp)
|
|||||||
|
|
||||||
# if __ASSUME_POSIX_CPU_TIMERS > 0
|
# if __ASSUME_POSIX_CPU_TIMERS > 0
|
||||||
|
|
||||||
# define SYSDEP_GETTIME_CPU SYSCALL_GETTIME
|
# define SYSDEP_GETTIME_CPU(clock_id, tp) \
|
||||||
|
retval = SYSCALL_GETTIME (clock_id, tp); \
|
||||||
|
break
|
||||||
# define SYSDEP_GETTIME_CPUTIME /* Default catches them too. */
|
# define SYSDEP_GETTIME_CPUTIME /* Default catches them too. */
|
||||||
|
|
||||||
# else
|
# else
|
||||||
|
@ -3,8 +3,14 @@
|
|||||||
#ifdef SHARED
|
#ifdef SHARED
|
||||||
# define SYSCALL_GETTIME(id, tp) \
|
# define SYSCALL_GETTIME(id, tp) \
|
||||||
({ long int (*f) (clockid_t, struct timespec *) = __vdso_clock_gettime; \
|
({ long int (*f) (clockid_t, struct timespec *) = __vdso_clock_gettime; \
|
||||||
|
long int v_ret; \
|
||||||
PTR_DEMANGLE (f); \
|
PTR_DEMANGLE (f); \
|
||||||
f (id, tp); })
|
v_ret = f (id, tp); \
|
||||||
|
if (INTERNAL_SYSCALL_ERROR_P (v_ret, )) { \
|
||||||
|
__set_errno (INTERNAL_SYSCALL_ERRNO (v_ret, )); \
|
||||||
|
v_ret = -1; \
|
||||||
|
} \
|
||||||
|
v_ret; })
|
||||||
# define INTERNAL_GETTIME(id, tp) \
|
# define INTERNAL_GETTIME(id, tp) \
|
||||||
({ long int (*f) (clockid_t, struct timespec *) = __vdso_clock_gettime; \
|
({ long int (*f) (clockid_t, struct timespec *) = __vdso_clock_gettime; \
|
||||||
PTR_DEMANGLE (f); \
|
PTR_DEMANGLE (f); \
|
||||||
|
Loading…
Reference in New Issue
Block a user