]>
Commit | Line | Data |
---|---|---|
d20058f6 | 1 | #!/bin/sh |
b2441318 | 2 | # SPDX-License-Identifier: GPL-2.0 |
d20058f6 HC |
3 | # description: Kprobe dynamic event with function tracer |
4 | ||
5 | [ -f kprobe_events ] || exit_unsupported # this is configurable | |
6 | grep function available_tracers || exit_unsupported # this is configurable | |
7 | ||
8 | # prepare | |
9 | echo nop > current_tracer | |
c28628b8 | 10 | echo _do_fork > set_ftrace_filter |
d20058f6 HC |
11 | echo 0 > events/enable |
12 | echo > kprobe_events | |
c28628b8 | 13 | echo 'p:testprobe _do_fork' > kprobe_events |
d20058f6 HC |
14 | |
15 | # kprobe on / ftrace off | |
16 | echo 1 > events/kprobes/testprobe/enable | |
17 | echo > trace | |
18 | ( echo "forked") | |
19 | grep testprobe trace | |
c28628b8 | 20 | ! grep '_do_fork <-' trace |
d20058f6 HC |
21 | |
22 | # kprobe on / ftrace on | |
23 | echo function > current_tracer | |
24 | echo > trace | |
25 | ( echo "forked") | |
26 | grep testprobe trace | |
c28628b8 | 27 | grep '_do_fork <-' trace |
d20058f6 HC |
28 | |
29 | # kprobe off / ftrace on | |
30 | echo 0 > events/kprobes/testprobe/enable | |
31 | echo > trace | |
32 | ( echo "forked") | |
33 | ! grep testprobe trace | |
c28628b8 | 34 | grep '_do_fork <-' trace |
d20058f6 HC |
35 | |
36 | # kprobe on / ftrace on | |
37 | echo 1 > events/kprobes/testprobe/enable | |
38 | echo function > current_tracer | |
39 | echo > trace | |
40 | ( echo "forked") | |
41 | grep testprobe trace | |
c28628b8 | 42 | grep '_do_fork <-' trace |
d20058f6 HC |
43 | |
44 | # kprobe on / ftrace off | |
45 | echo nop > current_tracer | |
46 | echo > trace | |
47 | ( echo "forked") | |
48 | grep testprobe trace | |
c28628b8 | 49 | ! grep '_do_fork <-' trace |
d20058f6 HC |
50 | |
51 | # cleanup | |
52 | echo nop > current_tracer | |
53 | echo > set_ftrace_filter | |
54 | echo 0 > events/kprobes/testprobe/enable | |
55 | echo > kprobe_events | |
56 | echo > trace |