aboutsummaryrefslogtreecommitdiff
path: root/nptl/pthread_rwlock_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/pthread_rwlock_common.c')
-rw-r--r--nptl/pthread_rwlock_common.c33
1 files changed, 16 insertions, 17 deletions
diff --git a/nptl/pthread_rwlock_common.c b/nptl/pthread_rwlock_common.c
index 3fbc66d..4c9f582 100644
--- a/nptl/pthread_rwlock_common.c
+++ b/nptl/pthread_rwlock_common.c
@@ -278,9 +278,8 @@ __pthread_rwlock_rdunlock (pthread_rwlock_t *rwlock)
static __always_inline int
-__pthread_rwlock_rdlock_full (pthread_rwlock_t *rwlock,
- clockid_t clockid,
- const struct timespec *abstime)
+__pthread_rwlock_rdlock_full64 (pthread_rwlock_t *rwlock, clockid_t clockid,
+ const struct __timespec64 *abstime)
{
unsigned int r;
@@ -330,8 +329,9 @@ __pthread_rwlock_rdlock_full (pthread_rwlock_t *rwlock,
& PTHREAD_RWLOCK_RWAITING) != 0)
{
int private = __pthread_rwlock_get_private (rwlock);
- int err = futex_abstimed_wait (&rwlock->__data.__readers,
- r, clockid, abstime, private);
+ int err = __futex_abstimed_wait64 (&rwlock->__data.__readers,
+ r, clockid, abstime,
+ private);
/* We ignore EAGAIN and EINTR. On time-outs, we can just
return because we don't need to clean up anything. */
if (err == ETIMEDOUT)
@@ -457,9 +457,9 @@ __pthread_rwlock_rdlock_full (pthread_rwlock_t *rwlock,
(&rwlock->__data.__wrphase_futex,
&wpf, wpf | PTHREAD_RWLOCK_FUTEX_USED)))
continue;
- int err = futex_abstimed_wait (&rwlock->__data.__wrphase_futex,
- 1 | PTHREAD_RWLOCK_FUTEX_USED,
- clockid, abstime, private);
+ int err = __futex_abstimed_wait64 (&rwlock->__data.__wrphase_futex,
+ 1 | PTHREAD_RWLOCK_FUTEX_USED,
+ clockid, abstime, private);
if (err == ETIMEDOUT)
{
/* If we timed out, we need to unregister. If no read phase
@@ -585,9 +585,8 @@ __pthread_rwlock_wrunlock (pthread_rwlock_t *rwlock)
static __always_inline int
-__pthread_rwlock_wrlock_full (pthread_rwlock_t *rwlock,
- clockid_t clockid,
- const struct timespec *abstime)
+__pthread_rwlock_wrlock_full64 (pthread_rwlock_t *rwlock, clockid_t clockid,
+ const struct __timespec64 *abstime)
{
/* Make sure any passed in clockid and timeout value are valid. Note that
the previous implementation assumed that this check *must* not be
@@ -728,9 +727,9 @@ __pthread_rwlock_wrlock_full (pthread_rwlock_t *rwlock,
share the flag, and another writer will wake one of the writers
in this group. */
may_share_futex_used_flag = true;
- int err = futex_abstimed_wait (&rwlock->__data.__writers_futex,
- 1 | PTHREAD_RWLOCK_FUTEX_USED,
- clockid, abstime, private);
+ int err = __futex_abstimed_wait64 (&rwlock->__data.__writers_futex,
+ 1 | PTHREAD_RWLOCK_FUTEX_USED,
+ clockid, abstime, private);
if (err == ETIMEDOUT)
{
if (prefer_writer)
@@ -827,9 +826,9 @@ __pthread_rwlock_wrlock_full (pthread_rwlock_t *rwlock,
(&rwlock->__data.__wrphase_futex, &wpf,
PTHREAD_RWLOCK_FUTEX_USED)))
continue;
- int err = futex_abstimed_wait (&rwlock->__data.__wrphase_futex,
- PTHREAD_RWLOCK_FUTEX_USED,
- clockid, abstime, private);
+ int err = __futex_abstimed_wait64 (&rwlock->__data.__wrphase_futex,
+ PTHREAD_RWLOCK_FUTEX_USED,
+ clockid, abstime, private);
if (err == ETIMEDOUT)
{
if (rwlock->__data.__flags != PTHREAD_RWLOCK_PREFER_READER_NP)