aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nptl/ChangeLog6
-rw-r--r--nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 4d291ea109..fa41d2ac76 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,9 @@
+2003-08-26 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
+ (lll_mutex_unlock_force): Add memory barrier between store and futex
+ syscall.
+
2003-08-25 Ulrich Drepper <drepper@redhat.com>
* tst-cancel4.c (do_test): Also unlink tempfname and remove
diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
index 00ca257ca0..a987accbed 100644
--- a/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
@@ -148,6 +148,7 @@ extern int __lll_timedlock_wait
((void) ({ \
int *__futex = &(lock); \
*__futex = 0; \
+ __asm __volatile (__lll_rel_instr ::: "memory"); \
lll_futex_wake (__futex, 1); \
}))