aboutsummaryrefslogtreecommitdiff
path: root/nptl
diff options
context:
space:
mode:
Diffstat (limited to 'nptl')
-rw-r--r--nptl/ChangeLog5
-rw-r--r--nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h2
2 files changed, 6 insertions, 1 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 78943b3696..efd8a94c18 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,8 @@
+2003-05-12 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
+ (lll_mutex_unlock): Use atomic_exchange_rel.
+
2003-05-11 Ulrich Drepper <drepper@redhat.com>
* cond-perf.c (cons): Add missing locking around setting of alldone.
diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
index a617917da7..621fdcee88 100644
--- a/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
@@ -115,7 +115,7 @@ extern int __lll_timedlock_wait
#define lll_mutex_unlock(lock) \
((void) ({ \
int *__futex = &(lock); \
- int __val = atomic_exchange (__futex, 0); \
+ int __val = atomic_exchange_rel (__futex, 0); \
if (__builtin_expect (__val > 1, 0)) \
lll_futex_wake (__futex, 1); \
}))