diff options
author | Martin Hunt <hunt@redhat.com> | 2008-03-28 16:20:02 -0400 |
---|---|---|
committer | Martin Hunt <hunt@redhat.com> | 2008-03-28 16:20:02 -0400 |
commit | 614ead2b7dd8ac70cd89d018b09a397be7ade371 (patch) | |
tree | 11dfb318caa7c636cd2d933905810ca5a634115e /testsuite/systemtap.context/backtrace.stp | |
parent | fd2ef8221625866219d6fc8e99ac36520ac6017b (diff) | |
download | systemtap-steved-614ead2b7dd8ac70cd89d018b09a397be7ade371.tar.gz systemtap-steved-614ead2b7dd8ac70cd89d018b09a397be7ade371.tar.xz systemtap-steved-614ead2b7dd8ac70cd89d018b09a397be7ade371.zip |
kretprobe trampoline fixes
Recognize when a kretprobe trampoline was hit and continue with inexact stack dump.
Also some testsuite changes.
Diffstat (limited to 'testsuite/systemtap.context/backtrace.stp')
-rw-r--r-- | testsuite/systemtap.context/backtrace.stp | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/testsuite/systemtap.context/backtrace.stp b/testsuite/systemtap.context/backtrace.stp index c14d071c..ddd7d00a 100644 --- a/testsuite/systemtap.context/backtrace.stp +++ b/testsuite/systemtap.context/backtrace.stp @@ -1,10 +1,9 @@ -function print_all_trace_info(point:string) { +function print_all_trace_info(point) { printf("backtrace from %s:\n", pp()) print_backtrace() - print("--------\n") + printf("--- %s ---\n", point) bt = backtrace() - printf("the %s stack is %s\n", point, bt) - printf("--<%s>--\n", point) + printf("the stack is %s\n", bt) print_stack(bt); print("--------\n") } @@ -18,18 +17,20 @@ probe end { } global flag = 0 -probe module("systemtap_test_module2").function("yyy_func3").call { - print_all_trace_info("call") + +probe module("systemtap_test_module2").function("yyy_func2") { + print_all_trace_info("yyy_func2") flag ++ } -probe module("systemtap_test_module2").function("yyy_func4").return { - print_all_trace_info("return") + +probe module("systemtap_test_module2").function("yyy_func3") { + print_all_trace_info("yyy_func3") flag ++ } -probe timer.profile { - if (cpu() == 0 && flag == 2 && probemod() != "systemtap_test_module2") { - print_all_trace_info("profile") - flag ++ - } + +probe module("systemtap_test_module2").function("yyy_func4") { + print_all_trace_info("yyy_func4") + flag ++ } + |