This test uses waking+wakeup_latency as an event name, which doesn't
make sense since it includes an operator. Illegal names are now
detected by the synthetic event command parsing, which causes this
test to fail. Change the name to 'waking_plus_wakeup_latency' to
prevent this.
Link: https://lkml.kernel.org/r/a1ee2f76ff28ef7166fb788ca8be968887808920.1602598160.git.zanussi@kernel.org
Fixes: f06eec4d0f (selftests: ftrace: Add inter-event hist triggers testcases)
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Tested-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Tom Zanussi <zanussi@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
38 lines
1.7 KiB
Bash
38 lines
1.7 KiB
Bash
#!/bin/sh
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
# description: event trigger - test inter-event combined histogram trigger
|
|
# requires: set_event synthetic_events events/sched/sched_process_fork/hist
|
|
|
|
fail() { #msg
|
|
echo $1
|
|
exit_fail
|
|
}
|
|
|
|
echo "Test create synthetic event"
|
|
|
|
echo 'waking_latency u64 lat pid_t pid' > synthetic_events
|
|
if [ ! -d events/synthetic/waking_latency ]; then
|
|
fail "Failed to create waking_latency synthetic event"
|
|
fi
|
|
|
|
echo "Test combined histogram"
|
|
|
|
echo 'hist:keys=pid:ts0=common_timestamp.usecs if comm=="ping"' > events/sched/sched_waking/trigger
|
|
echo 'hist:keys=pid:waking_lat=common_timestamp.usecs-$ts0:onmatch(sched.sched_waking).waking_latency($waking_lat,pid) if comm=="ping"' > events/sched/sched_wakeup/trigger
|
|
echo 'hist:keys=pid,lat:sort=pid,lat' > events/synthetic/waking_latency/trigger
|
|
|
|
echo 'wakeup_latency u64 lat pid_t pid' >> synthetic_events
|
|
echo 'hist:keys=pid:ts1=common_timestamp.usecs if comm=="ping"' >> events/sched/sched_wakeup/trigger
|
|
echo 'hist:keys=next_pid:wakeup_lat=common_timestamp.usecs-$ts1:onmatch(sched.sched_wakeup).wakeup_latency($wakeup_lat,next_pid) if next_comm=="ping"' > events/sched/sched_switch/trigger
|
|
|
|
echo 'waking_plus_wakeup_latency u64 lat; pid_t pid' >> synthetic_events
|
|
echo 'hist:keys=pid,lat:sort=pid,lat:ww_lat=$waking_lat+$wakeup_lat:onmatch(synthetic.wakeup_latency).waking_plus_wakeup_latency($ww_lat,pid)' >> events/synthetic/wakeup_latency/trigger
|
|
echo 'hist:keys=pid,lat:sort=pid,lat' >> events/synthetic/waking_plus_wakeup_latency/trigger
|
|
|
|
ping $LOCALHOST -c 3
|
|
if ! grep -q "pid:" events/synthetic/waking_plus_wakeup_latency/hist; then
|
|
fail "Failed to create combined histogram"
|
|
fi
|
|
|
|
exit 0
|