.. | .. |
---|
1 | 1 | #!/bin/sh |
---|
| 2 | +# SPDX-License-Identifier: GPL-2.0 |
---|
2 | 3 | # description: event trigger - test inter-event histogram trigger onmatch-onmax action |
---|
3 | | - |
---|
4 | | -do_reset() { |
---|
5 | | - reset_trigger |
---|
6 | | - echo > set_event |
---|
7 | | - clear_trace |
---|
8 | | -} |
---|
| 4 | +# requires: set_event synthetic_events events/sched/sched_process_fork/hist |
---|
9 | 5 | |
---|
10 | 6 | fail() { #msg |
---|
11 | | - do_reset |
---|
12 | 7 | echo $1 |
---|
13 | 8 | exit_fail |
---|
14 | 9 | } |
---|
15 | | - |
---|
16 | | -if [ ! -f set_event ]; then |
---|
17 | | - echo "event tracing is not supported" |
---|
18 | | - exit_unsupported |
---|
19 | | -fi |
---|
20 | | - |
---|
21 | | -if [ ! -f synthetic_events ]; then |
---|
22 | | - echo "synthetic event is not supported" |
---|
23 | | - exit_unsupported |
---|
24 | | -fi |
---|
25 | | - |
---|
26 | | -clear_synthetic_events |
---|
27 | | -reset_tracer |
---|
28 | | -do_reset |
---|
29 | 10 | |
---|
30 | 11 | echo "Test create synthetic event" |
---|
31 | 12 | |
---|
.. | .. |
---|
40 | 21 | echo 'hist:keys=pid:ts0=common_timestamp.usecs if comm=="ping"' > events/sched/sched_wakeup/trigger |
---|
41 | 22 | echo 'hist:keys=next_pid:wakeup_lat=common_timestamp.usecs-$ts0:onmatch(sched.sched_wakeup).wakeup_latency($wakeup_lat,next_pid,next_comm):onmax($wakeup_lat).save(next_comm,prev_pid,prev_prio,prev_comm) if next_comm=="ping"' >> events/sched/sched_switch/trigger |
---|
42 | 23 | echo 'hist:keys=comm,pid,lat:wakeup_lat=lat:sort=lat' > events/synthetic/wakeup_latency/trigger |
---|
43 | | -ping localhost -c 5 |
---|
| 24 | + |
---|
| 25 | +ping $LOCALHOST -c 5 |
---|
44 | 26 | if [ ! grep -q "ping" events/synthetic/wakeup_latency/hist -o ! grep -q "max:" events/sched/sched_switch/hist]; then |
---|
45 | 27 | fail "Failed to create onmatch-onmax action inter-event histogram" |
---|
46 | 28 | fi |
---|
47 | | - |
---|
48 | | -do_reset |
---|
49 | 29 | |
---|
50 | 30 | exit 0 |
---|