diff options
author | Roland McGrath <roland@gnu.org> | 2003-03-19 03:34:48 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2003-03-19 03:34:48 +0000 |
commit | 043ad426e7927a49a872e915c3cde88b682aea71 (patch) | |
tree | 5bb6178c065a279b56573a3fca4b2d06b45c2f32 /nptl/sysdeps/pthread | |
parent | 8a477363f4c791c64c6a7e4c2c5f961863db601d (diff) | |
download | glibc-043ad426e7927a49a872e915c3cde88b682aea71.tar.gz glibc-043ad426e7927a49a872e915c3cde88b682aea71.tar.xz glibc-043ad426e7927a49a872e915c3cde88b682aea71.zip |
* Versions (libpthread: GLIBC_2.2): Remove
pthread_barrierattr_getpshared, never really existed. (libpthread: GLIBC_2.0): Move __pthread_initialize to ... (libpthread: GLIBC_PRIVATE): ... here.
Diffstat (limited to 'nptl/sysdeps/pthread')
-rw-r--r-- | nptl/sysdeps/pthread/pthread_cond_timedwait.c | 50 |
1 files changed, 26 insertions, 24 deletions
diff --git a/nptl/sysdeps/pthread/pthread_cond_timedwait.c b/nptl/sysdeps/pthread/pthread_cond_timedwait.c index e0200b4cd8..23cf0acb99 100644 --- a/nptl/sysdeps/pthread/pthread_cond_timedwait.c +++ b/nptl/sysdeps/pthread/pthread_cond_timedwait.c @@ -93,36 +93,38 @@ __pthread_cond_timedwait (cond, mutex, abstime) while (1) { struct timespec rt; + { #ifdef __NR_clock_gettime - INTERNAL_SYSCALL_DECL (err); - int val = INTERNAL_SYSCALL (clock_gettime, err, 2, cond->__data.__clock, - &ts); + INTERNAL_SYSCALL_DECL (err); + int val = INTERNAL_SYSCALL (clock_gettime, err, 2, + cond->__data.__clock, &rt); # ifndef __ASSUME_POSIX_TIMERS - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (val, err), 0)) - { - struct timeval tv; - (void) gettimeofday (&tv, NULL); - - /* Convert the absolute timeout value to a relative timeout. */ - rt.tv_sec = abstime->tv_sec - tv.tv_sec; - rt.tv_nsec = abstime->tv_nsec - tv.tv_usec * 1000; - } - else + if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (val, err), 0)) + { + struct timeval tv; + (void) gettimeofday (&tv, NULL); + + /* Convert the absolute timeout value to a relative timeout. */ + rt.tv_sec = abstime->tv_sec - tv.tv_sec; + rt.tv_nsec = abstime->tv_nsec - tv.tv_usec * 1000; + } + else # endif - { - /* Convert the absolute timeout value to a relative timeout. */ - rt.tv_sec = abstime->tv_sec - rt.tv_sec; - rt.tv_nsec = abstime->tv_nsec - rt.tv_nsec; - } + { + /* Convert the absolute timeout value to a relative timeout. */ + rt.tv_sec = abstime->tv_sec - rt.tv_sec; + rt.tv_nsec = abstime->tv_nsec - rt.tv_nsec; + } #else - /* Get the current time. So far we support only one clock. */ - struct timeval tv; - (void) gettimeofday (&tv, NULL); + /* Get the current time. So far we support only one clock. */ + struct timeval tv; + (void) gettimeofday (&tv, NULL); - /* Convert the absolute timeout value to a relative timeout. */ - rt.tv_sec = abstime->tv_sec - tv.tv_sec; - rt.tv_nsec = abstime->tv_nsec - tv.tv_usec * 1000; + /* Convert the absolute timeout value to a relative timeout. */ + rt.tv_sec = abstime->tv_sec - tv.tv_sec; + rt.tv_nsec = abstime->tv_nsec - tv.tv_usec * 1000; #endif + } if (rt.tv_nsec < 0) { rt.tv_nsec += 1000000000; |