summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Keniston <jkenisto@us.ibm.com>2008-06-04 16:16:31 -0700
committerJim Keniston <jkenisto@us.ibm.com>2008-06-04 16:16:31 -0700
commit39a8b0bce28cf4ef8fda523ad9c4634692764134 (patch)
tree493b39fa6ff3df65c52b5d48d73ecc55c7147acd
parent65e47e92a9fd19e334873e8b88673ee76ad479c8 (diff)
downloadsystemtap-steved-39a8b0bce28cf4ef8fda523ad9c4634692764134.tar.gz
systemtap-steved-39a8b0bce28cf4ef8fda523ad9c4634692764134.tar.xz
systemtap-steved-39a8b0bce28cf4ef8fda523ad9c4634692764134.zip
Fix PR 6588
-rw-r--r--ChangeLog6
-rw-r--r--tapset/syscalls.stp7
-rwxr-xr-xtestsuite/semok/syscall_return.stp4
3 files changed, 14 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index bf174568..726bd76c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-06-04 Jim Keniston <jkenisto@us.ibm.com>
+
+ PR 6588
+ * tapset/syscalls.stp: Remove return aliases for exit and exit_group.
+ * testsuite/semok/syscalls_return.stp: Regression test
+
2008-06-03 David Smith <dsmith@redhat.com>
* tapsets.cxx: Added several string tokens that are used instead
diff --git a/tapset/syscalls.stp b/tapset/syscalls.stp
index d394208f..cf824f67 100644
--- a/tapset/syscalls.stp
+++ b/tapset/syscalls.stp
@@ -630,7 +630,8 @@ probe syscall.exit = kernel.function("do_exit") {
status = $code
argstr = sprint($code)
}
-probe syscall.exit.return = end {}
+# sys_exit() never returns, and is blacklisted for return probes,
+# so no alias here. See bz6588.
# exit_group _________________________________________________
# void sys_exit_group(int error_code)
@@ -640,8 +641,8 @@ probe syscall.exit_group = kernel.function("sys_exit_group") {
status = $error_code
argstr = sprint($error_code)
}
-
-probe syscall.exit_group.return = end {}
+# sys_exit_group() never returns, and is blacklisted for return probes,
+# so no alias here. See bz6588.
%(arch != "x86_64" %?
# fadvise64 __________________________________________________
diff --git a/testsuite/semok/syscall_return.stp b/testsuite/semok/syscall_return.stp
new file mode 100755
index 00000000..9a0ca7c4
--- /dev/null
+++ b/testsuite/semok/syscall_return.stp
@@ -0,0 +1,4 @@
+#!/bin/sh
+# Per bz6588, this should get through the semantic pass without warnings.
+stap -p2 -e 'probe syscall.*.return { printf("%s returns %s\n", name, retstr) }' 2>&1 | grep -q WARNING && exit 1
+exit 0