summaryrefslogtreecommitdiffstats
path: root/testsuite/systemtap.base/utrace_p5.exp
diff options
context:
space:
mode:
authorWenji Huang <wenji.huang@oracle.com>2009-07-28 19:50:24 -0400
committerWenji Huang <wenji.huang@oracle.com>2009-07-28 19:50:24 -0400
commita0c0ed1c030d8e812eed19b096c626b7ce233358 (patch)
tree6f0b56dc7814bf92d116fd9b291c04f5d1400ac7 /testsuite/systemtap.base/utrace_p5.exp
parentfc7e606e053159fad715883ccee2d99324c32f1a (diff)
downloadsystemtap-steved-a0c0ed1c030d8e812eed19b096c626b7ce233358.tar.gz
systemtap-steved-a0c0ed1c030d8e812eed19b096c626b7ce233358.tar.xz
systemtap-steved-a0c0ed1c030d8e812eed19b096c626b7ce233358.zip
PR6978: support $$parms for process.syscall
* tapset-utrace.cxx (visit_target_symbol_arg): Handle $$parms. * testsuite/systemtap.base/utrace_p4.exp: Add test case. * testsuite/systemtap.base/utrace_p5.exp: Ditto.
Diffstat (limited to 'testsuite/systemtap.base/utrace_p5.exp')
-rw-r--r--testsuite/systemtap.base/utrace_p5.exp22
1 files changed, 22 insertions, 0 deletions
diff --git a/testsuite/systemtap.base/utrace_p5.exp b/testsuite/systemtap.base/utrace_p5.exp
index 3d432dc3..7062bc0d 100644
--- a/testsuite/systemtap.base/utrace_p5.exp
+++ b/testsuite/systemtap.base/utrace_p5.exp
@@ -89,6 +89,18 @@ set bz6841_script {
}
set bz6841_script_output ".+ issues syscall \\d+ times\r\n"
+set syscall_parms_script {
+ global syscall_parms_string
+ probe begin { printf("systemtap starting probe\n") }
+ probe process.syscall { syscall_parms_string = $$parms exit() }
+ probe end { printf("systemtap ending probe\n")
+ printf("%s\n",syscall_parms_string)
+ delete syscall_parms_string
+ }
+}
+set syscall_parms_script_output "(.+arg\[1-6\]=0x\[0-9a-f\]+)+\r\n"
+
+
# Set up our own copy of /bin/cat, to make testing for a particular
# executable easy. We can't use 'ln' here, since we might be creating
# a cross-device link. We can't use 'ln -s' here, since the kernel
@@ -202,5 +214,15 @@ if {![utrace_p]} {
-e $bz6841_script
}
+set TEST_NAME "UTRACE_P5_08"
+if {![utrace_p]} {
+ untested "$TEST_NAME : no kernel utrace support found"
+} elseif {![installtest_p]} {
+ untested "$TEST_NAME"
+} else {
+ set script [format $syscall_parms_script "%s"]
+ stap_run $TEST_NAME no_load $syscall_parms_script_output -e $script
+}
+
# Cleanup
exec rm -f $exepath $multi_exepath