This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch release/2.19/master updated. glibc-2.19-36-g323e41a
- From: aurel32 at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 28 Aug 2015 20:42:44 -0000
- Subject: GNU C Library master sources branch release/2.19/master updated. glibc-2.19-36-g323e41a
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, release/2.19/master has been updated
via 323e41a8d8168dac0338bf95c12a8de5b0dfc56e (commit)
from 980a63b384df3086b2969b9f7e8dd2f016caa78c (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=323e41a8d8168dac0338bf95c12a8de5b0dfc56e
commit 323e41a8d8168dac0338bf95c12a8de5b0dfc56e
Author: Andreas Schwab <schwab@suse.de>
Date: Tue Mar 4 13:00:26 2014 +0100
Properly handle forced elision in pthread_mutex_trylock (bug 16657)
(cherry picked from commit b0a3c1640ab2fb7d16d9b9a8d9c0e524e9cb0001)
diff --git a/ChangeLog b/ChangeLog
index 0e15efb..b88cd04 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2014-12-11 Andreas Schwab <schwab@suse.de>
+
+ [BZ #16657]
+ * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): Use
+ FORCE_ELISION instead of DO_ELISION.
+ * nptl/sysdeps/unix/sysv/linux/x86/force-elision.h (DO_ELISION):
+ Remove.
+
2013-07-29 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
[BZ #17213]
diff --git a/NEWS b/NEWS
index 24343f1..6f240cd 100644
--- a/NEWS
+++ b/NEWS
@@ -9,8 +9,8 @@ Version 2.19.1
* The following bugs are resolved with this release:
- 15946, 16545, 16574, 16623, 16695, 16878, 16882, 16885, 16916, 16932,
- 16943, 16958, 17048, 17069, 17137, 17213, 17263, 17325, 17555.
+ 15946, 16545, 16574, 16623, 16657, 16695, 16878, 16882, 16885, 16916,
+ 16932, 16943, 16958, 17048, 17069, 17137, 17213, 17263, 17325, 17555.
* Reverted change of ABI data structures for s390 and s390x:
On s390 and s390x the size of struct ucontext and jmp_buf was increased in
diff --git a/nptl/pthread_mutex_trylock.c b/nptl/pthread_mutex_trylock.c
index 4d5f75d..1157320 100644
--- a/nptl/pthread_mutex_trylock.c
+++ b/nptl/pthread_mutex_trylock.c
@@ -26,8 +26,8 @@
#define lll_trylock_elision(a,t) lll_trylock(a)
#endif
-#ifndef DO_ELISION
-#define DO_ELISION(m) 0
+#ifndef FORCE_ELISION
+#define FORCE_ELISION(m, s)
#endif
/* We don't force elision in trylock, because this can lead to inconsistent
@@ -69,7 +69,7 @@ __pthread_mutex_trylock (mutex)
break;
case PTHREAD_MUTEX_TIMED_ELISION_NP:
- elision:
+ elision: __attribute__((unused))
if (lll_trylock_elision (mutex->__data.__lock,
mutex->__data.__elision) != 0)
break;
@@ -77,8 +77,7 @@ __pthread_mutex_trylock (mutex)
return 0;
case PTHREAD_MUTEX_TIMED_NP:
- if (DO_ELISION (mutex))
- goto elision;
+ FORCE_ELISION (mutex, goto elision);
/*FALL THROUGH*/
case PTHREAD_MUTEX_ADAPTIVE_NP:
case PTHREAD_MUTEX_ERRORCHECK_NP:
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h b/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h
index 945f886..a767cf1 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h
+++ b/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h
@@ -16,11 +16,6 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-/* Check for elision on this lock without upgrading. */
-#define DO_ELISION(m) \
- (__pthread_force_elision \
- && (m->__data.__kind & PTHREAD_MUTEX_NO_ELISION_NP) == 0) \
-
/* Automatically enable elision for existing user lock kinds. */
#define FORCE_ELISION(m, s) \
if (__pthread_force_elision \
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 8 ++++++++
NEWS | 4 ++--
nptl/pthread_mutex_trylock.c | 9 ++++-----
nptl/sysdeps/unix/sysv/linux/x86/force-elision.h | 5 -----
4 files changed, 14 insertions(+), 12 deletions(-)
hooks/post-receive
--
GNU C Library master sources