This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch, roland/systemtap, updated. glibc-2.13-35-g789867d
- From: roland at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 23 Feb 2011 19:51:33 -0000
- Subject: GNU C Library master sources branch, roland/systemtap, updated. glibc-2.13-35-g789867d
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, roland/systemtap has been updated
via 789867dfcd2015d07bcaf1fc11b8b8b5f35b4b69 (commit)
from 502fc5c35f7a825f41d69a21a0a88fe8edb067a6 (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://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=789867dfcd2015d07bcaf1fc11b8b8b5f35b4b69
commit 789867dfcd2015d07bcaf1fc11b8b8b5f35b4b69
Author: Rayson Ho <rho@redhat.com>
Date: Wed Feb 23 11:30:55 2011 -0800
i386 port of the pthread SystemTap probes
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 337b26b..fbdd83b 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,16 @@
+2011-02-22 Rayson Ho <rho@redhat.com>
+
+ * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Low-level SystemTap
+ probes for i386.
+ * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
+
2011-02-09 Rayson Ho <rho@redhat.com>
* DESIGN-systemtap-probes.txt: New file.
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
index 2198ccf..92437f0 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
@@ -22,6 +22,8 @@
#include <kernel-features.h>
#include <lowlevellock.h>
+#include <stap-probe.h>
+
.text
#ifdef __ASSUME_PRIVATE_FUTEX
@@ -91,7 +93,8 @@ __lll_lock_wait_private:
cmpl %edx, %eax /* NB: %edx == 2 */
jne 2f
-1: movl $SYS_futex, %eax
+1: LIBC_PROBE (lll_lock_wait_private, 1, %ebx)
+ movl $SYS_futex, %eax
ENTER_KERNEL
2: movl %edx, %eax
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
index a7ca78f..e9c6a63 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
@@ -24,6 +24,7 @@
#include <kernel-features.h>
#include <pthread-pi-defines.h>
#include <pthread-errnos.h>
+#include <stap-probe.h>
.text
@@ -49,6 +50,8 @@ __pthread_cond_broadcast:
movl 20(%esp), %ebx
+ LIBC_PROBE (cond_broadcast, 1, %edx)
+
/* Get internal lock. */
movl $1, %edx
xorl %eax, %eax
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 05cda25..96b5928 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
@@ -24,7 +24,7 @@
#include <kernel-features.h>
#include <pthread-pi-defines.h>
#include <pthread-errnos.h>
-
+#include <stap-probe.h>
.text
@@ -45,6 +45,8 @@ __pthread_cond_signal:
movl 12(%esp), %edi
+ LIBC_PROBE (cond_signal, 1, %edi)
+
/* Get internal lock. */
movl $1, %edx
xorl %eax, %eax
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
index dee73f0..3762abc 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
@@ -24,7 +24,7 @@
#include <pthread-errnos.h>
#include <pthread-pi-defines.h>
#include <kernel-features.h>
-
+#include <stap-probe.h>
.text
@@ -61,6 +61,8 @@ __pthread_cond_timedwait:
movl 20(%esp), %ebx
movl 28(%esp), %ebp
+ LIBC_PROBE (cond_timedwait, 3, %ebx, 24(%esp), %ebp)
+
cmpl $1000000000, 4(%ebp)
movl $EINVAL, %eax
jae 18f
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
index 53970d7..2185cf6 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
@@ -25,6 +25,7 @@
#include <pthread-errnos.h>
#include <pthread-pi-defines.h>
#include <kernel-features.h>
+#include <stap-probe.h>
.text
@@ -61,6 +62,8 @@ __pthread_cond_wait:
xorl %esi, %esi
movl 20(%esp), %ebx
+ LIBC_PROBE (cond_wait, 2, 24(%esp), %ebx)
+
/* Get internal lock. */
movl $1, %edx
xorl %eax, %eax
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
index 4e5f0c5..050266e 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
@@ -23,6 +23,7 @@
#include <pthread-errnos.h>
#include <kernel-features.h>
+#include <stap-probe.h>
.text
@@ -41,6 +42,8 @@ __pthread_rwlock_rdlock:
xorl %esi, %esi
movl 12(%esp), %ebx
+ LIBC_PROBE (rdlock_entry, 1, %ebx)
+
/* Get the lock. */
movl $1, %edx
xorl %eax, %eax
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
index 1007364..3ff0ac3 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
@@ -23,6 +23,7 @@
#include <pthread-errnos.h>
#include <kernel-features.h>
+#include <stap-probe.h>
.text
@@ -41,6 +42,8 @@ __pthread_rwlock_wrlock:
xorl %esi, %esi
movl 12(%esp), %ebx
+ LIBC_PROBE (wrlock_entry, 1, %ebx)
+
/* Get the lock. */
movl $1, %edx
xorl %eax, %eax
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h
index 4bb585a..34e28bd 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h
@@ -20,6 +20,8 @@
#ifndef _LOWLEVELLOCK_H
#define _LOWLEVELLOCK_H 1
+#include <stap-probe.h>
+
#ifndef __ASSEMBLER__
# include <time.h>
# include <sys/param.h>
@@ -226,6 +228,7 @@ LLL_STUB_UNWIND_INFO_END
do { \
int __ignore; \
register __typeof (nr) _nr asm ("edx") = (nr); \
+ LIBC_PROBE (lll_futex_wake, 3, futex, nr, private); \
__asm __volatile (LLL_EBX_LOAD \
LLL_ENTER_KERNEL \
LLL_EBX_LOAD \
-----------------------------------------------------------------------
Summary of changes:
nptl/ChangeLog | 13 +++++++++++++
.../unix/sysv/linux/i386/i486/lowlevellock.S | 5 ++++-
.../sysv/linux/i386/i486/pthread_cond_broadcast.S | 3 +++
.../sysv/linux/i386/i486/pthread_cond_signal.S | 4 +++-
.../sysv/linux/i386/i486/pthread_cond_timedwait.S | 4 +++-
.../unix/sysv/linux/i386/i486/pthread_cond_wait.S | 3 +++
.../sysv/linux/i386/i486/pthread_rwlock_rdlock.S | 3 +++
.../sysv/linux/i386/i486/pthread_rwlock_wrlock.S | 3 +++
nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h | 3 +++
9 files changed, 38 insertions(+), 3 deletions(-)
hooks/post-receive
--
GNU C Library master sources