1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
function print_all_trace_info(point) {
printf("backtrace from %s:\n", pp())
print_backtrace()
printf("--- %s ---\n", point)
bt = backtrace()
printf("the stack is %s\n", bt)
print_syms(bt);
print("--------\n")
}
probe begin {
// Too difficult/different on different arches/kernels to check.
// print_backtrace()
log("<no kernel backtrace at begin>");
}
probe end {
print_backtrace()
}
global flag = 0
probe module("systemtap_test_module2").function("yyy_func2") {
print_all_trace_info("yyy_func2")
flag ++
}
probe module("systemtap_test_module2").function("yyy_func3") {
print_all_trace_info("yyy_func3")
flag ++
}
probe module("systemtap_test_module2").function("yyy_func4") {
print_all_trace_info("yyy_func4")
flag ++
exit();
}
|