diff options
author | Dinakar Guniguntala <dino@in.ibm.com> | 2010-08-19 00:46:19 -0700 |
---|---|---|
committer | Andreas Schwab <schwab@redhat.com> | 2010-12-01 15:35:21 +0100 |
commit | c86e42c53fc42195d2ed5926dbc4c8ce25bfa8fd (patch) | |
tree | 58355e1bbbf768842b455b045b24ef7fe8e9d89c | |
parent | a5030ca9dc3e9451b3d364faed4b26dda4b82f7e (diff) | |
download | glibc-c86e42c53fc42195d2ed5926dbc4c8ce25bfa8fd.tar glibc-c86e42c53fc42195d2ed5926dbc4c8ce25bfa8fd.tar.gz glibc-c86e42c53fc42195d2ed5926dbc4c8ce25bfa8fd.tar.bz2 glibc-c86e42c53fc42195d2ed5926dbc4c8ce25bfa8fd.zip |
Fix x86 pthread_cond_signal() FUTEX_WAKE_OP fallback
(cherry picked from commit 022f6b89208acd2a67eb28a94d6d240e85088398)
-rw-r--r-- | nptl/ChangeLog | 6 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 66ff9196a0..cf038e3416 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,9 @@ +2010-08-10 Dinakar Guniguntala <dino@in.ibm.com> + Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> + + * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: If + FUTEX_WAKE_OP fails make sure to call FUTEX_WAKE instead. + 2010-07-03 Ulrich Drepper <drepper@redhat.com> * tst-abstime.c (do_test): Some more cleanups diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S index 9fc2cbfeaf..05cda25d3e 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S @@ -1,4 +1,4 @@ -/* Copyright (C) 2002,2003,2004,2005,2007,2009 Free Software Foundation, Inc. +/* Copyright (C) 2002-2005,2007,2009,2010 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -163,7 +163,6 @@ __pthread_cond_signal: #endif orl $FUTEX_WAKE, %ecx - xorl $(FUTEX_WAKE ^ FUTEX_WAKE_OP), %ecx movl $SYS_futex, %eax /* %edx should be 1 already from $FUTEX_WAKE_OP syscall. movl $1, %edx */ |