]>
Commit | Line | Data |
---|---|---|
815b18ea | 1 | #!/bin/sh |
b2441318 | 2 | # SPDX-License-Identifier: GPL-2.0 |
815b18ea | 3 | # description: event tracing - enable/disable with subsystem level files |
35df6a89 | 4 | # flags: instance |
815b18ea NK |
5 | |
6 | do_reset() { | |
7 | echo > set_event | |
8 | clear_trace | |
9 | } | |
10 | ||
11 | fail() { #msg | |
12 | do_reset | |
13 | echo $1 | |
44164c4b | 14 | exit $FAIL |
815b18ea NK |
15 | } |
16 | ||
2bfd4d1f NK |
17 | yield() { |
18 | ping localhost -c 1 || sleep .001 || usleep 1 || sleep 1 | |
19 | } | |
20 | ||
815b18ea NK |
21 | if [ ! -f set_event -o ! -d events/sched ]; then |
22 | echo "event tracing is not supported" | |
23 | exit_unsupported | |
24 | fi | |
25 | ||
26 | reset_tracer | |
27 | do_reset | |
28 | ||
29 | echo 'sched:*' > set_event | |
2bfd4d1f NK |
30 | |
31 | yield | |
815b18ea NK |
32 | |
33 | count=`cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l` | |
34 | if [ $count -lt 3 ]; then | |
35 | fail "at least fork, exec and exit events should be recorded" | |
36 | fi | |
37 | ||
38 | do_reset | |
39 | ||
40 | echo 1 > events/sched/enable | |
2bfd4d1f NK |
41 | |
42 | yield | |
815b18ea NK |
43 | |
44 | count=`cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l` | |
45 | if [ $count -lt 3 ]; then | |
46 | fail "at least fork, exec and exit events should be recorded" | |
47 | fi | |
48 | ||
49 | do_reset | |
50 | ||
51 | echo 0 > events/sched/enable | |
2bfd4d1f NK |
52 | |
53 | yield | |
815b18ea NK |
54 | |
55 | count=`cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l` | |
56 | if [ $count -ne 0 ]; then | |
57 | fail "any of scheduler events should not be recorded" | |
58 | fi | |
59 | ||
60 | do_reset | |
61 | ||
62 | exit 0 |