This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.19-334-g8f630cc
- From: siddhesh at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 30 Apr 2014 10:42:48 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.19-334-g8f630cc
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 8f630cca5c36941db1cb48726016bbed80ec1041 (commit)
from bc8f194c8c29e46e8ee4034f06e46988dfff38f7 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=8f630cca5c36941db1cb48726016bbed80ec1041
commit 8f630cca5c36941db1cb48726016bbed80ec1041
Author: Yang Yingliang <yangyingliang@huawei.com>
Date: Wed Apr 30 15:46:18 2014 +0530
Fix lll_unlock twice in pthread_cond_broadcast
lll_unlock() will be called again if it goes to "wake_all" in
pthread_cond_broadcast(). This may make another thread which is
waiting for lock in pthread_cond_timedwait() unlock. So there are
more than one threads get the lock, it will break the shared data.
It's introduced by commit 8313cb997d2d("FUTEX_*_REQUEUE_PI support for
non-x86 code")
diff --git a/ChangeLog b/ChangeLog
index 2b0821f..6bacb5c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-04-30 Yang Yingliang <yangyingliang@huawei.com>
+
+ * nptl/pthread_cond_broadcast.c (__pthread_cond_broadcast):
+ Return immediately after lll_futex_wake.
+
2014-04-30 Siddhesh Poyarekar <siddhesh@redhat.com>
[BZ #16791]
diff --git a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c
index ed30e7c..7c6c9ea 100644
--- a/nptl/pthread_cond_broadcast.c
+++ b/nptl/pthread_cond_broadcast.c
@@ -81,6 +81,7 @@ __pthread_cond_broadcast (cond)
wake_all:
lll_futex_wake (&cond->__data.__futex, INT_MAX, pshared);
+ return 0;
}
/* We are done. */
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 5 +++++
nptl/pthread_cond_broadcast.c | 1 +
2 files changed, 6 insertions(+), 0 deletions(-)
hooks/post-receive
--
GNU C Library master sources