diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-07-27 13:43:01 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-07-27 13:43:01 -0700 |
commit | 052757bfa652d86d7976df430a5272df1f560076 (patch) | |
tree | 800e3e7fa826d88a3d21b07b5be39ffee0bcc0c2 /nptl/pthread_mutex_timedlock.c | |
parent | e83c1a8a72b3ea3009e18ecb3fc0778e81655d3b (diff) | |
download | glibc-052757bfa652d86d7976df430a5272df1f560076.tar glibc-052757bfa652d86d7976df430a5272df1f560076.tar.gz glibc-052757bfa652d86d7976df430a5272df1f560076.tar.bz2 glibc-052757bfa652d86d7976df430a5272df1f560076.zip |
Revert "Memory ordering in pthread_mutex_{,timed}lock."
This reverts commit 7b7f43bed134db6a0da34282fffcbf0af10d4613.
Diffstat (limited to 'nptl/pthread_mutex_timedlock.c')
-rw-r--r-- | nptl/pthread_mutex_timedlock.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c index 2c6ff114da..8d0db79d58 100644 --- a/nptl/pthread_mutex_timedlock.c +++ b/nptl/pthread_mutex_timedlock.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2007, 2008, 2009 Free Software Foundation, Inc. +/* Copyright (C) 2002-2007, 2008 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -126,7 +126,7 @@ pthread_mutex_timedlock (mutex, abstime) int newval = id | (oldval & FUTEX_WAITERS); newval - = atomic_compare_and_exchange_val_rel (&mutex->__data.__lock, + = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, newval, oldval); if (newval != oldval) { @@ -246,7 +246,7 @@ pthread_mutex_timedlock (mutex, abstime) } } - oldval = atomic_compare_and_exchange_val_rel (&mutex->__data.__lock, + oldval = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, id, 0); if (oldval != 0) @@ -404,7 +404,7 @@ pthread_mutex_timedlock (mutex, abstime) oldprio = ceiling; oldval - = atomic_compare_and_exchange_val_rel (&mutex->__data.__lock, + = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, ceilval | 1, ceilval); if (oldval == ceilval) @@ -413,7 +413,7 @@ pthread_mutex_timedlock (mutex, abstime) do { oldval - = atomic_compare_and_exchange_val_rel (&mutex->__data.__lock, + = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, ceilval | 2, ceilval | 1); @@ -456,7 +456,7 @@ pthread_mutex_timedlock (mutex, abstime) PTHREAD_MUTEX_PSHARED (mutex)); } } - while (atomic_compare_and_exchange_val_rel (&mutex->__data.__lock, + while (atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, ceilval | 2, ceilval) != ceilval); } |