summaryrefslogtreecommitdiffstats
path: root/testsuite/systemtap.context/backtrace.stp
blob: c14d071c74f384d7db35e3af157ad5892fbfb477 (plain)
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
function print_all_trace_info(point:string) {
	printf("backtrace from %s:\n", pp())
        print_backtrace()
        print("--------\n")
	bt = backtrace()
	printf("the %s stack is %s\n", point, bt)
        printf("--<%s>--\n", point)
	print_stack(bt);
        print("--------\n")
}

probe begin {
	print_backtrace()
}

probe end {
	print_backtrace()
}

global flag = 0
probe module("systemtap_test_module2").function("yyy_func3").call {
	print_all_trace_info("call")
	flag ++
}
probe module("systemtap_test_module2").function("yyy_func4").return {
	print_all_trace_info("return")
	flag ++
}
probe timer.profile {
	if (cpu() == 0 && flag == 2 && probemod() != "systemtap_test_module2") {
		print_all_trace_info("profile")
		flag ++
	}
}