ARM: at91: Replace HTTP links with HTTPS ones
[linux-2.6-microblaze.git] / tools / testing / selftests / ftrace / test.d / trigger / trigger-filter.tc
1 #!/bin/sh
2 # SPDX-License-Identifier: GPL-2.0
3 # description: event trigger - test trigger filter
4 # flags: instance
5
6 fail() { #msg
7     echo $1
8     exit_fail
9 }
10
11 if [ ! -f set_event -o ! -d events/sched ]; then
12     echo "event tracing is not supported"
13     exit_unsupported
14 fi
15
16 if [ ! -f events/sched/sched_process_fork/trigger ]; then
17     echo "event trigger is not supported"
18     exit_unsupported
19 fi
20
21 echo "Test trigger filter"
22 echo 1 > tracing_on
23 echo 'traceoff if child_pid == 0' > events/sched/sched_process_fork/trigger
24 ( echo "forked")
25 if [ `cat tracing_on` -ne 1 ]; then
26     fail "traceoff trigger on sched_process_fork did not work"
27 fi
28
29 reset_trigger
30
31 echo "Test semantic error for trigger filter"
32 ! echo 'traceoff if a' > events/sched/sched_process_fork/trigger
33 ! echo 'traceoff if common_pid=0' > events/sched/sched_process_fork/trigger
34 ! echo 'traceoff if common_pid==b' > events/sched/sched_process_fork/trigger
35 echo 'traceoff if common_pid == 0' > events/sched/sched_process_fork/trigger
36 echo '!traceoff' > events/sched/sched_process_fork/trigger
37 ! echo 'traceoff if common_pid == child_pid' > events/sched/sched_process_fork/trigger
38 echo 'traceoff if common_pid <= 0' > events/sched/sched_process_fork/trigger
39 echo '!traceoff' > events/sched/sched_process_fork/trigger
40 echo 'traceoff if common_pid >= 0' > events/sched/sched_process_fork/trigger
41 echo '!traceoff' > events/sched/sched_process_fork/trigger
42 echo 'traceoff if parent_pid >= 0 && child_pid >= 0' > events/sched/sched_process_fork/trigger
43 echo '!traceoff' > events/sched/sched_process_fork/trigger
44 echo 'traceoff if parent_pid >= 0 || child_pid >= 0' > events/sched/sched_process_fork/trigger
45 echo '!traceoff' > events/sched/sched_process_fork/trigger
46
47 exit 0