summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhunt <hunt>2006-02-01 22:15:59 +0000
committerhunt <hunt>2006-02-01 22:15:59 +0000
commitb80e42444a0add45a63ad0f83a2bdfc3afad1ed9 (patch)
treed782529187e8606cdef8b0d5964b9080b49b7d35
parented9eb1787b052dbd53aa2ba98f79bc2e4aba3b75 (diff)
downloadsystemtap-steved-b80e42444a0add45a63ad0f83a2bdfc3afad1ed9.tar.gz
systemtap-steved-b80e42444a0add45a63ad0f83a2bdfc3afad1ed9.tar.xz
systemtap-steved-b80e42444a0add45a63ad0f83a2bdfc3afad1ed9.zip
2006-02-01 Martin Hunt <hunt@redhat.com>
* stapfuncs.5.in: Document is_return(), returnval() and probefunc(). * testsuite/buildok/syscall.stp: Basic syscall test.
-rw-r--r--ChangeLog6
-rw-r--r--stapfuncs.5.in12
-rwxr-xr-xtestsuite/buildok/syscall.stp8
3 files changed, 26 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 78de7a31..a0dbe4c5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-02-01 Martin Hunt <hunt@redhat.com>
+
+ * stapfuncs.5.in: Document is_return(), returnval() and
+ probefunc().
+ * testsuite/buildok/syscall.stp: Basic syscall test.
+
2006-02-01 Frank Ch. Eigler <fche@elastic.org>
* configure.ac, systemtap.spec.in: Version 0.5.4.
diff --git a/stapfuncs.5.in b/stapfuncs.5.in
index f68f462d..0e74438d 100644
--- a/stapfuncs.5.in
+++ b/stapfuncs.5.in
@@ -170,9 +170,21 @@ Return the probe point associated with the currently running probe handler,
including alias and wildcard expansion effects.
.TP
+probefunc:string ()
+Return the probe point's function name.
+
+.TP
target:long ()
Returns the pid of the target process.
+.TP
+is_return:long ()
+Returns 1 if the probe point is a return probe.
+
+.TP
+returnval:long ()
+Gets the return value of a probed function. Must be a return probe.
+
.SS ERRNO
.TP
diff --git a/testsuite/buildok/syscall.stp b/testsuite/buildok/syscall.stp
new file mode 100755
index 00000000..f4f23c62
--- /dev/null
+++ b/testsuite/buildok/syscall.stp
@@ -0,0 +1,8 @@
+#! stap -p4
+
+probe syscall.*, syscall.*.return {
+ if (returnp)
+ printf("%d\n", returnval())
+ else
+ printf("%s (%s) = ", name, argstr)
+}