diff options
author | Mike Crowe <mac@mcrowe.com> | 2019-06-24 20:18:00 +0000 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2019-07-12 13:36:25 +0000 |
commit | 1ff1373b3302e9e095dc4fd4d371451c00190780 (patch) | |
tree | a2674e19f74165d5825c272dc7f4838c86d65ef8 /sysdeps | |
parent | 65dd7e9ce36ca8485a68ed41ac731188b6473dd2 (diff) | |
download | glibc-1ff1373b3302e9e095dc4fd4d371451c00190780.tar.gz glibc-1ff1373b3302e9e095dc4fd4d371451c00190780.tar.xz glibc-1ff1373b3302e9e095dc4fd4d371451c00190780.zip |
nptl: Remove futex_supports_exact_relative_timeouts
The only implementation of futex_supports_exact_relative_timeouts always returns true. Let's remove it and all its callers. * nptl/pthread_cond_wait.c: (__pthread_cond_clockwait): Remove code that is only useful if futex_supports_exact_relative_timeouts () returns false. * nptl/pthread_condattr_setclock.c: (pthread_condattr_setclock): Likewise. * sysdeps/nptl/futex-internal.h: Remove comment about relative timeouts potentially being imprecise since it's no longer true. Remove declaration of futex_supports_exact_relative_timeouts. * sysdeps/unix/sysv/linux/futex-internal.h: Remove implementation of futex_supports_exact_relative_timeouts. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/nptl/futex-internal.h | 9 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/futex-internal.h | 8 |
2 files changed, 1 insertions, 16 deletions
diff --git a/sysdeps/nptl/futex-internal.h b/sysdeps/nptl/futex-internal.h index f29d6d48b2..dff2317b07 100644 --- a/sysdeps/nptl/futex-internal.h +++ b/sysdeps/nptl/futex-internal.h @@ -51,8 +51,7 @@ Both absolute and relative timeouts can be used. An absolute timeout expires when the given specific point in time on the specified clock passes, or when it already has passed. A relative timeout expires when - the given duration of time on the CLOCK_MONOTONIC clock passes. Relative - timeouts may be imprecise (see futex_supports_exact_relative_timeouts). + the given duration of time on the CLOCK_MONOTONIC clock passes. Due to POSIX requirements on when synchronization data structures such as mutexes or semaphores can be destroyed and due to the futex design @@ -81,12 +80,6 @@ static __always_inline int futex_supports_pshared (int pshared); -/* Returns true if relative timeouts are robust to concurrent changes to the - system clock. If this returns false, relative timeouts can still be used - but might be effectively longer or shorter than requested. */ -static __always_inline bool -futex_supports_exact_relative_timeouts (void); - /* Atomically wrt other futex operations on the same futex, this blocks iff the value *FUTEX_WORD matches the expected value. This is semantically equivalent to: diff --git a/sysdeps/unix/sysv/linux/futex-internal.h b/sysdeps/unix/sysv/linux/futex-internal.h index 299d2489f9..980b7987c3 100644 --- a/sysdeps/unix/sysv/linux/futex-internal.h +++ b/sysdeps/unix/sysv/linux/futex-internal.h @@ -46,14 +46,6 @@ futex_supports_pshared (int pshared) return EINVAL; } -/* The Linux kernel supports relative timeouts measured against the - CLOCK_MONOTONIC clock. */ -static __always_inline bool -futex_supports_exact_relative_timeouts (void) -{ - return true; -} - /* See sysdeps/nptl/futex-internal.h for details. */ static __always_inline int futex_wait (unsigned int *futex_word, unsigned int expected, int private) |