summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Stone <jistone@redhat.com>2009-04-14 12:34:12 -0700
committerJosh Stone <jistone@redhat.com>2009-04-14 12:34:12 -0700
commit1f65cc4ffd1bd362b10d7f07d1cb9c4e7de68027 (patch)
tree1948954f707ddcb3f879b5e7646533d8fea83199
parent891e4fb2d5bf81b540b66b126b2ba78d1b7f459b (diff)
downloadsystemtap-steved-1f65cc4ffd1bd362b10d7f07d1cb9c4e7de68027.tar.gz
systemtap-steved-1f65cc4ffd1bd362b10d7f07d1cb9c4e7de68027.tar.xz
systemtap-steved-1f65cc4ffd1bd362b10d7f07d1cb9c4e7de68027.zip
PR9953: split up the two process.* tapsets
The overlapping process.* tapsets are now separated. Those probe points documented in stapprobes(3stap) remain the same. Those that were formerly in stapprobes.process(3stap) have been renamed to kprocess, to reflect their kernel perspective on processes.
-rw-r--r--Makefile.am2
-rw-r--r--Makefile.in8
-rw-r--r--NEWS5
-rwxr-xr-xconfigure4
-rw-r--r--configure.ac2
-rw-r--r--doc/SystemTap_Beginners_Guide/en-US/References.xml2
-rw-r--r--doc/SystemTap_Tapset_Reference/tapsets.tmpl6
-rw-r--r--doc/Tapset_Reference_Guide/en-US/Tapset_Dev_Guide.xml4
-rw-r--r--man/stapprobes.kprocess.3stap.in (renamed from man/stapprobes.process.3stap.in)22
-rw-r--r--tapset/DEVGUIDE6
-rw-r--r--tapset/kprocess.stp (renamed from tapset/process.stp)30
-rwxr-xr-xtestsuite/buildok/process-all-probes.stp12
-rwxr-xr-xtestsuite/buildok/process_test.stp12
-rwxr-xr-xtestsuite/systemtap.examples/process/proc_snoop.stp12
-rw-r--r--testsuite/systemtap.stress/whitelist.exp1
15 files changed, 67 insertions, 61 deletions
diff --git a/Makefile.am b/Makefile.am
index b4d97e9a..f5fedae1 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -17,7 +17,7 @@ stapprobes.3stap stapfuncs.3stap stapvars.3stap stapex.3stap \
staprun.8 \
man/stapprobes.iosched.3stap man/stapprobes.netdev.3stap \
man/stapprobes.nfs.3stap man/stapprobes.nfsd.3stap \
-man/stapprobes.pagefault.3stap man/stapprobes.process.3stap \
+man/stapprobes.pagefault.3stap man/stapprobes.kprocess.3stap \
man/stapprobes.rpc.3stap man/stapprobes.scsi.3stap \
man/stapprobes.signal.3stap man/stapprobes.socket.3stap \
man/stapprobes.tcp.3stap man/stapprobes.udp.3stap
diff --git a/Makefile.in b/Makefile.in
index 42bdec7c..a953be51 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -64,7 +64,7 @@ DIST_COMMON = INSTALL NEWS README AUTHORS $(srcdir)/Makefile.in \
$(top_srcdir)/man/stapprobes.nfs.3stap.in \
$(top_srcdir)/man/stapprobes.nfsd.3stap.in \
$(top_srcdir)/man/stapprobes.pagefault.3stap.in \
- $(top_srcdir)/man/stapprobes.process.3stap.in \
+ $(top_srcdir)/man/stapprobes.kprocess.3stap.in \
$(top_srcdir)/man/stapprobes.rpc.3stap.in \
$(top_srcdir)/man/stapprobes.scsi.3stap.in \
$(top_srcdir)/man/stapprobes.signal.3stap.in \
@@ -85,7 +85,7 @@ CONFIG_CLEAN_FILES = stap.1 stapprobes.3stap stapfuncs.3stap \
stapvars.3stap stapex.3stap staprun.8 stap-server.8 \
man/stapprobes.iosched.3stap man/stapprobes.netdev.3stap \
man/stapprobes.nfs.3stap man/stapprobes.nfsd.3stap \
- man/stapprobes.pagefault.3stap man/stapprobes.process.3stap \
+ man/stapprobes.pagefault.3stap man/stapprobes.kprocess.3stap \
man/stapprobes.rpc.3stap man/stapprobes.scsi.3stap \
man/stapprobes.signal.3stap man/stapprobes.socket.3stap \
man/stapprobes.tcp.3stap man/stapprobes.udp.3stap \
@@ -303,7 +303,7 @@ man_MANS = stap.1 stapprobes.3stap stapfuncs.3stap stapvars.3stap \
stapex.3stap staprun.8 man/stapprobes.iosched.3stap \
man/stapprobes.netdev.3stap man/stapprobes.nfs.3stap \
man/stapprobes.nfsd.3stap man/stapprobes.pagefault.3stap \
- man/stapprobes.process.3stap man/stapprobes.rpc.3stap \
+ man/stapprobes.kprocess.3stap man/stapprobes.rpc.3stap \
man/stapprobes.scsi.3stap man/stapprobes.signal.3stap \
man/stapprobes.socket.3stap man/stapprobes.tcp.3stap \
man/stapprobes.udp.3stap $(am__append_1)
@@ -457,7 +457,7 @@ man/stapprobes.nfsd.3stap: $(top_builddir)/config.status $(top_srcdir)/man/stapp
cd $(top_builddir) && $(SHELL) ./config.status $@
man/stapprobes.pagefault.3stap: $(top_builddir)/config.status $(top_srcdir)/man/stapprobes.pagefault.3stap.in
cd $(top_builddir) && $(SHELL) ./config.status $@
-man/stapprobes.process.3stap: $(top_builddir)/config.status $(top_srcdir)/man/stapprobes.process.3stap.in
+man/stapprobes.kprocess.3stap: $(top_builddir)/config.status $(top_srcdir)/man/stapprobes.kprocess.3stap.in
cd $(top_builddir) && $(SHELL) ./config.status $@
man/stapprobes.rpc.3stap: $(top_builddir)/config.status $(top_srcdir)/man/stapprobes.rpc.3stap.in
cd $(top_builddir) && $(SHELL) ./config.status $@
diff --git a/NEWS b/NEWS
index 02f00367..37a424d8 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,10 @@
* What's new
+- The overlapping process.* tapsets are now separated. Those probe points
+ documented in stapprobes(3stap) remain the same. Those that were formerly
+ in stapprobes.process(3stap) have been renamed to kprocess, to reflect
+ their kernel perspective on processes.
+
- The --skip-badvars option now also suppresses run-time error
messages that would otherwise result from erroneous memory accesses.
Such accesses can originate from $context expressions fueled by
diff --git a/configure b/configure
index 03763d5a..852dc786 100755
--- a/configure
+++ b/configure
@@ -8074,7 +8074,7 @@ _ACEOF
ac_config_headers="$ac_config_headers config.h:config.in"
-ac_config_files="$ac_config_files Makefile doc/Makefile doc/SystemTap_Tapset_Reference/Makefile stap.1 stapprobes.3stap stapfuncs.3stap stapvars.3stap stapex.3stap staprun.8 stap-server.8 man/stapprobes.iosched.3stap man/stapprobes.netdev.3stap man/stapprobes.nfs.3stap man/stapprobes.nfsd.3stap man/stapprobes.pagefault.3stap man/stapprobes.process.3stap man/stapprobes.rpc.3stap man/stapprobes.scsi.3stap man/stapprobes.signal.3stap man/stapprobes.socket.3stap man/stapprobes.tcp.3stap man/stapprobes.udp.3stap initscript/systemtap"
+ac_config_files="$ac_config_files Makefile doc/Makefile doc/SystemTap_Tapset_Reference/Makefile stap.1 stapprobes.3stap stapfuncs.3stap stapvars.3stap stapex.3stap staprun.8 stap-server.8 man/stapprobes.iosched.3stap man/stapprobes.netdev.3stap man/stapprobes.nfs.3stap man/stapprobes.nfsd.3stap man/stapprobes.pagefault.3stap man/stapprobes.kprocess.3stap man/stapprobes.rpc.3stap man/stapprobes.scsi.3stap man/stapprobes.signal.3stap man/stapprobes.socket.3stap man/stapprobes.tcp.3stap man/stapprobes.udp.3stap initscript/systemtap"
@@ -8776,7 +8776,7 @@ do
"man/stapprobes.nfs.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.nfs.3stap" ;;
"man/stapprobes.nfsd.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.nfsd.3stap" ;;
"man/stapprobes.pagefault.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.pagefault.3stap" ;;
- "man/stapprobes.process.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.process.3stap" ;;
+ "man/stapprobes.kprocess.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.kprocess.3stap" ;;
"man/stapprobes.rpc.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.rpc.3stap" ;;
"man/stapprobes.scsi.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.scsi.3stap" ;;
"man/stapprobes.signal.3stap") CONFIG_FILES="$CONFIG_FILES man/stapprobes.signal.3stap" ;;
diff --git a/configure.ac b/configure.ac
index ee8ae61f..a953e156 100644
--- a/configure.ac
+++ b/configure.ac
@@ -356,7 +356,7 @@ dnl Don't use this directly (when not given it is set to NONE).
AC_DEFINE_UNQUOTED(STAP_PREFIX, "$prefix", [configure prefix location])
AC_CONFIG_HEADERS([config.h:config.in])
-AC_CONFIG_FILES(Makefile doc/Makefile doc/SystemTap_Tapset_Reference/Makefile stap.1 stapprobes.3stap stapfuncs.3stap stapvars.3stap stapex.3stap staprun.8 stap-server.8 man/stapprobes.iosched.3stap man/stapprobes.netdev.3stap man/stapprobes.nfs.3stap man/stapprobes.nfsd.3stap man/stapprobes.pagefault.3stap man/stapprobes.process.3stap man/stapprobes.rpc.3stap man/stapprobes.scsi.3stap man/stapprobes.signal.3stap man/stapprobes.socket.3stap man/stapprobes.tcp.3stap man/stapprobes.udp.3stap initscript/systemtap)
+AC_CONFIG_FILES(Makefile doc/Makefile doc/SystemTap_Tapset_Reference/Makefile stap.1 stapprobes.3stap stapfuncs.3stap stapvars.3stap stapex.3stap staprun.8 stap-server.8 man/stapprobes.iosched.3stap man/stapprobes.netdev.3stap man/stapprobes.nfs.3stap man/stapprobes.nfsd.3stap man/stapprobes.pagefault.3stap man/stapprobes.kprocess.3stap man/stapprobes.rpc.3stap man/stapprobes.scsi.3stap man/stapprobes.signal.3stap man/stapprobes.socket.3stap man/stapprobes.tcp.3stap man/stapprobes.udp.3stap initscript/systemtap)
AC_CONFIG_SUBDIRS(testsuite)
AC_CONFIG_FILES([run-stap], [chmod +x run-stap])
AC_CONFIG_FILES([run-staprun], [chmod +x run-staprun])
diff --git a/doc/SystemTap_Beginners_Guide/en-US/References.xml b/doc/SystemTap_Beginners_Guide/en-US/References.xml
index ff993df2..6ab74f17 100644
--- a/doc/SystemTap_Beginners_Guide/en-US/References.xml
+++ b/doc/SystemTap_Beginners_Guide/en-US/References.xml
@@ -43,7 +43,7 @@
The <filename>stapprobes</filename> man page enumerates a variety of probe points supported by SystemTap, along with additional aliases
defined by the SystemTap tapset library. The bottom of the man page includes a list of other man pages
enumerating similar probe points for specific system components, such as
- <filename>stapprobes.scsi</filename>, <filename>stapprobes.process</filename>,
+ <filename>stapprobes.scsi</filename>, <filename>stapprobes.kprocess</filename>,
<filename>stapprobes.signal</filename>, etc.
</para>
</listitem>
diff --git a/doc/SystemTap_Tapset_Reference/tapsets.tmpl b/doc/SystemTap_Tapset_Reference/tapsets.tmpl
index b7c0713b..19a8e02f 100644
--- a/doc/SystemTap_Tapset_Reference/tapsets.tmpl
+++ b/doc/SystemTap_Tapset_Reference/tapsets.tmpl
@@ -181,13 +181,13 @@
</para>
!Itapset/socket.stp
</chapter>
- <chapter id="process.stp">
- <title>Process Tapset</title>
+ <chapter id="kprocess.stp">
+ <title>Kernel Process Tapset</title>
<para>
This family of probe points is used to probe process-related activities.
It contains the following probe points:
</para>
-!Itapset/process.stp
+!Itapset/kprocess.stp
</chapter>
<chapter id="signal.stp">
<title>Signal Tapset</title>
diff --git a/doc/Tapset_Reference_Guide/en-US/Tapset_Dev_Guide.xml b/doc/Tapset_Reference_Guide/en-US/Tapset_Dev_Guide.xml
index d497eae6..293a0dc3 100644
--- a/doc/Tapset_Reference_Guide/en-US/Tapset_Dev_Guide.xml
+++ b/doc/Tapset_Reference_Guide/en-US/Tapset_Dev_Guide.xml
@@ -64,7 +64,7 @@
<para>
<programlisting>
-probe process.exec = kernel.function("do_execve"),
+probe kprocess.exec = kernel.function("do_execve"),
kernel.function("compat_do_execve")
{<replaceable>probe body</replaceable>}
</programlisting>
@@ -106,7 +106,7 @@ kernel.function("compat_do_execve")
<para>
<programlisting>
-probe process.create = kernel.function("copy_process").return
+probe kprocess.create = kernel.function("copy_process").return
{
task = $return
new_pid = task_pid(task)
diff --git a/man/stapprobes.process.3stap.in b/man/stapprobes.kprocess.3stap.in
index aa8089e8..4f5e7903 100644
--- a/man/stapprobes.process.3stap.in
+++ b/man/stapprobes.kprocess.3stap.in
@@ -1,7 +1,7 @@
.\" -*- nroff -*-
-.TH STAPPROBES.PROCESS 3stap @DATE@ "Intel, IBM"
+.TH STAPPROBES.KPROCESS 3stap @DATE@ "Intel, IBM"
.SH NAME
-stapprobes.process \- systemtap process probe points
+stapprobes.kprocess \- systemtap kernel process probe points
.\" macros
.de SAMPLE
@@ -18,12 +18,12 @@ stapprobes.process \- systemtap process probe points
.SH DESCRIPTION
-This family of probe points is used to probe the process activities.
+This family of probe points is used to probe the kernel's process activities.
It contains the following probe points:
.P
.TP
-.B process.create
+.B kprocess.create
Fires whenever a new process is successfully created, either as a
result of one of the fork syscall variants, or a new kernel thread.
@@ -38,7 +38,7 @@ result of one of the fork syscall variants, or a new kernel thread.
.P
.TP
-.B process.start
+.B kprocess.start
Fires immediately before a new process begins execution.
@@ -48,7 +48,7 @@ Fires immediately before a new process begins execution.
.P
.TP
-.B process.exec
+.B kprocess.exec
Fires whenever a process attempts to exec to a new program
@@ -59,7 +59,7 @@ Fires whenever a process attempts to exec to a new program
.P
.TP
-.B process.exec_complete
+.B kprocess.exec_complete
Fires at the completion of an exec call
@@ -73,10 +73,10 @@ Fires at the completion of an exec call
.P
.TP
-.B process.exit
+.B kprocess.exit
Fires when a process terminates. This will always be followed by a
-process.release, though the latter may be delayed if the process
+kprocess.release, though the latter may be delayed if the process
waits in a zombie state.
.B Arguments:
@@ -86,10 +86,10 @@ waits in a zombie state.
.P
.TP
-.B process.release
+.B kprocess.release
Fires when a process is released from the kernel. This always
-follows a process.exit, though it may be delayed somewhat if the
+follows a kprocess.exit, though it may be delayed somewhat if the
process waits in a zombie state.
.B Arguments:
diff --git a/tapset/DEVGUIDE b/tapset/DEVGUIDE
index e6bc3fb8..693521a8 100644
--- a/tapset/DEVGUIDE
+++ b/tapset/DEVGUIDE
@@ -59,8 +59,8 @@ For example, process execs can occur in either the do_execve() or the
compat_do_execve() functions. The following alias inserts probes at the
beginning of those functions:
-probe process.exec = kernel.function("do_execve"),
- kernel.function("compat_do_execve") {
+probe kprocess.exec = kernel.function("do_execve"),
+ kernel.function("compat_do_execve") {
< probe body >
}
@@ -87,7 +87,7 @@ process is retrieved by calling task_pid() and passing it the task_struct
pointer. In this case, the auxiliary function is an embedded C function
that's defined in the task tapset (task.stp).
-probe process.create = kernel.function("copy_process").return {
+probe kprocess.create = kernel.function("copy_process").return {
task = $return
new_pid = task_pid(task)
}
diff --git a/tapset/process.stp b/tapset/kprocess.stp
index e39f740a..316e03ce 100644
--- a/tapset/process.stp
+++ b/tapset/kprocess.stp
@@ -1,4 +1,4 @@
-// process tapset
+// kernel process tapset
// Copyright (C) 2006 Intel Corporation.
//
// This file is part of systemtap, and is free software. You can
@@ -15,7 +15,7 @@ function _IS_ERR:long(ptr:long) %{ /* pure */
/**
- * probe process.create - Fires whenever a new process is successfully created
+ * probe kprocess.create - Fires whenever a new process is successfully created
* @new_pid: The PID of the newly created process
*
* Context:
@@ -24,7 +24,7 @@ function _IS_ERR:long(ptr:long) %{ /* pure */
* Fires whenever a new process is successfully created, either as a result of
* <command>fork</command> (or one of its syscall variants), or a new kernel thread.
*/
-probe process.create = kernel.function("copy_process").return {
+probe kprocess.create = kernel.function("copy_process").return {
task = $return
if (_IS_ERR(task)) next
new_pid = task_pid(task)
@@ -32,7 +32,7 @@ probe process.create = kernel.function("copy_process").return {
/**
- * probe process.start - Starting new process
+ * probe kprocess.start - Starting new process
*
* Context:
* Newly created process.
@@ -40,11 +40,11 @@ probe process.create = kernel.function("copy_process").return {
* Fires immediately before a new process begins execution.
*
*/
-probe process.start = kernel.function("schedule_tail") { }
+probe kprocess.start = kernel.function("schedule_tail") { }
/**
- * probe process.exec - Attempt to exec to a new program
+ * probe kprocess.exec - Attempt to exec to a new program
* @filename: The path to the new executable
*
* Context:
@@ -52,7 +52,7 @@ probe process.start = kernel.function("schedule_tail") { }
*
* Fires whenever a process attempts to exec to a new program.
*/
-probe process.exec =
+probe kprocess.exec =
kernel.function("do_execve"),
kernel.function("compat_do_execve") ?
{
@@ -61,7 +61,7 @@ probe process.exec =
/**
- * probe process.exec_complete - Return from exec to a new program
+ * probe kprocess.exec_complete - Return from exec to a new program
* @errno: The error number resulting from the exec
* @success: A boolean indicating whether the exec was successful
*
@@ -71,7 +71,7 @@ probe process.exec =
*
* Fires at the completion of an exec call.
*/
-probe process.exec_complete =
+probe kprocess.exec_complete =
kernel.function("do_execve").return,
kernel.function("compat_do_execve").return ?
{
@@ -81,23 +81,23 @@ probe process.exec_complete =
/**
- * probe process.exit - Exit from process
+ * probe kprocess.exit - Exit from process
* @code: The exit code of the process
*
* Context:
* The process which is terminating.
*
* Fires when a process terminates. This will always be followed by a
- * process.release, though the latter may be delayed if the process waits in a
+ * kprocess.release, though the latter may be delayed if the process waits in a
* zombie state.
*/
-probe process.exit = kernel.function("do_exit") {
+probe kprocess.exit = kernel.function("do_exit") {
code = $code
}
/**
- * probe process.release - Process released
+ * probe kprocess.release - Process released
* @task: A task handle to the process being released
* @pid: PID of the process being released
*
@@ -106,10 +106,10 @@ probe process.exit = kernel.function("do_exit") {
* termination, else the context of the process itself.
*
* Fires when a process is released from the kernel. This always follows a
- * process.exit, though it may be delayed somewhat if the process waits in a
+ * kprocess.exit, though it may be delayed somewhat if the process waits in a
* zombie state.
*/
-probe process.release = kernel.function("release_task") {
+probe kprocess.release = kernel.function("release_task") {
task = $p
pid = $p->pid;
}
diff --git a/testsuite/buildok/process-all-probes.stp b/testsuite/buildok/process-all-probes.stp
index 91a96514..c754462b 100755
--- a/testsuite/buildok/process-all-probes.stp
+++ b/testsuite/buildok/process-all-probes.stp
@@ -2,11 +2,11 @@
// Tests if all probes in the process tapset are resolvable.
-probe process.create,
- process.start,
- process.exec,
- process.exec_complete,
- process.exit,
- process.release
+probe kprocess.create,
+ kprocess.start,
+ kprocess.exec,
+ kprocess.exec_complete,
+ kprocess.exit,
+ kprocess.release
{
}
diff --git a/testsuite/buildok/process_test.stp b/testsuite/buildok/process_test.stp
index 90de8b69..ba3fadf1 100755
--- a/testsuite/buildok/process_test.stp
+++ b/testsuite/buildok/process_test.stp
@@ -1,31 +1,31 @@
#! stap -p4
-probe process.create {
+probe kprocess.create {
log(pp())
log(sprint(task))
}
-probe process.start {
+probe kprocess.start {
log(pp())
}
-probe process.exec {
+probe kprocess.exec {
log(pp())
log(filename)
}
-probe process.exec_complete {
+probe kprocess.exec_complete {
log(pp())
log(sprint(errno))
log(sprint(success))
}
-probe process.exit {
+probe kprocess.exit {
log(pp())
log(sprint(code))
}
-probe process.release {
+probe kprocess.release {
log(pp())
log(sprint(task))
}
diff --git a/testsuite/systemtap.examples/process/proc_snoop.stp b/testsuite/systemtap.examples/process/proc_snoop.stp
index 06425d45..9a3768c2 100755
--- a/testsuite/systemtap.examples/process/proc_snoop.stp
+++ b/testsuite/systemtap.examples/process/proc_snoop.stp
@@ -18,30 +18,30 @@ function id:string(task:long) {
task_execname(task))
}
-probe process.create {
+probe kprocess.create {
report(sprintf("create %s", id(task)))
}
-probe process.start {
+probe kprocess.start {
report("start")
}
-probe process.exec {
+probe kprocess.exec {
report(sprintf("exec %s", filename))
}
-probe process.exec_complete {
+probe kprocess.exec_complete {
if (success)
report("exec success")
else
report(sprintf("exec failed %d (%s)", errno, errno_str(errno)))
}
-probe process.exit {
+probe kprocess.exit {
report(sprintf("exit %d", code))
}
-probe process.release {
+probe kprocess.release {
report(sprintf("remove %s", id(task)))
}
diff --git a/testsuite/systemtap.stress/whitelist.exp b/testsuite/systemtap.stress/whitelist.exp
index 4a31c124..70973978 100644
--- a/testsuite/systemtap.stress/whitelist.exp
+++ b/testsuite/systemtap.stress/whitelist.exp
@@ -96,6 +96,7 @@ set init_probes_all_script {
udp.*.return,
tcp.*,
tcp.*.return,
+ kprocess.*,
process.*,
nfs.fop.*,
nfs.aop.*,