diff -pruN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/lowlevellock.c glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/lowlevellock.c --- glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/lowlevellock.c 2012-12-25 08:32:13.000000000 +0530 +++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/lowlevellock.c 2014-09-05 21:50:56.982975803 +0530 @@ -21,11 +21,13 @@ #include #include #include +#include void __lll_lock_wait_private (int *futex) { + LIBC_PROBE (lll_lock_wait_private, 1, futex); if (*futex == 2) lll_futex_wait (futex, 2, LLL_PRIVATE); @@ -39,6 +42,7 @@ __lll_lock_wait_private (int *futex) void __lll_lock_wait (int *futex, int private) { + LIBC_PROBE (lll_lock_wait, 2, futex, FUTEX_WAIT | private); if (*futex == 2) lll_futex_wait (futex, 2, private); diff -pruN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h --- glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h 2012-12-25 08:32:13.000000000 +0530 +++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/lowlevellock.h 2014-09-05 21:51:58.722483631 +0530 @@ -19,6 +19,8 @@ #ifndef _LOWLEVELLOCK_H #define _LOWLEVELLOCK_H 1 +#include + #include #include #include @@ -106,6 +108,7 @@ INTERNAL_SYSCALL_DECL (__err); \ long int __ret; \ \ + LIBC_PROBE (lll_futex_wake, 3, futexp, nr, private); \ __ret = INTERNAL_SYSCALL (futex, __err, 4, (futexp), \ __lll_private_flag (FUTEX_WAKE, private), \ (nr), 0); \ diff -pruN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h --- glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h 2012-12-25 08:32:13.000000000 +0530 +++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h 2014-09-05 21:51:58.722483631 +0530 @@ -19,6 +19,8 @@ #ifndef _LOWLEVELLOCK_H #define _LOWLEVELLOCK_H 1 +#include + #include #include #include @@ -122,6 +124,7 @@ register unsigned long int __r4 asm ("4") = (unsigned long int) (nr); \ register unsigned long int __result asm ("2"); \ \ + LIBC_PROBE (lll_futex_wake, 3, futex, nr, private); \ __asm __volatile ("svc %b1" \ : "=d" (__result) \ : "i" (SYS_futex), "0" (__r2), "d" (__r3), "d" (__r4) \