+2015-10-15 Paul E. Murphy <murphyp@linux.vnet.ibm.com>
+
+ * nptl/pthread_mutex_unlock.c (lll_unlock_elision):
+ Add elision adapt_count parameter to list of arguments.
+ * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
+ (lll_unlock_elision): Update with new parameter list
+ * sysdeps/unix/sysv/linux/s390/lowlevellock.h
+ (lll_unlock_elision): Likewise
+ * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
+ (lll_unlock_elision): Likewise
+
2015-10-15 H.J. Lu <hongjiu.lu@intel.com>
[BZ #19122]
#include <stap-probe.h>
#ifndef lll_unlock_elision
-#define lll_unlock_elision(a,b) ({ lll_unlock (a,b); 0; })
+#define lll_unlock_elision(a,b,c) ({ lll_unlock (a,c); 0; })
#endif
static int
else if (__glibc_likely (type == PTHREAD_MUTEX_TIMED_ELISION_NP))
{
/* Don't reset the owner/users fields for elision. */
- return lll_unlock_elision (mutex->__data.__lock,
+ return lll_unlock_elision (mutex->__data.__lock, mutex->__data.__elision,
PTHREAD_MUTEX_PSHARED (mutex));
}
else if (__builtin_expect (PTHREAD_MUTEX_TYPE (mutex)
#define lll_lock_elision(futex, adapt_count, private) \
__lll_lock_elision (&(futex), &(adapt_count), private)
-#define lll_unlock_elision(futex, private) \
+#define lll_unlock_elision(futex, adapt_count, private) \
__lll_unlock_elision (&(futex), private)
#define lll_trylock_elision(futex, adapt_count) \
__lll_trylock_elision (&(futex), &(adapt_count))
# define lll_lock_elision(futex, adapt_count, private) \
__lll_lock_elision (&(futex), &(adapt_count), private)
-# define lll_unlock_elision(futex, private) \
+# define lll_unlock_elision(futex, adapt_count, private) \
__lll_unlock_elision (&(futex), private)
# define lll_trylock_elision(futex, adapt_count) \
__lll_trylock_elision(&(futex), &(adapt_count))
#define lll_lock_elision(futex, adapt_count, private) \
__lll_lock_elision (&(futex), &(adapt_count), private)
-#define lll_unlock_elision(futex, private) \
+#define lll_unlock_elision(futex, adapt_count, private) \
__lll_unlock_elision (&(futex), private)
#define lll_trylock_elision(futex, adapt_count) \
__lll_trylock_elision (&(futex), &(adapt_count))