Re: [PATCH v3 13/14] tracing/selftest: Add selftests to test trace_marker histogram triggers

From: Steven Rostedt
Date: Fri May 25 2018 - 17:12:38 EST


On Fri, 25 May 2018 14:07:31 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:


> >
> > BTW, would you plan to add simplar test case for the marker?
> > (like just write a marker and read trace log, and run a simple
> > trigger, like taking a snapshot by marker)
>
> I wasn't planning to, but I could.

Like something like this?

I had to remove the "instance" flag because it triggered a bug, that is
unrelated to this patch series. But that's a good thing. It found a
bug :-)

-- Steve

#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
# description: trace_marker trigger - test snapshot trigger
# flags:

do_reset() {
reset_trigger
echo > set_event
echo 0 > snapshot
clear_trace
}

fail() { #msg
do_reset
echo $1
exit_fail
}

if [ ! -f set_event ]; then
echo "event tracing is not supported"
exit_unsupported
fi

if [ ! -f snapshot ]; then
echo "snapshot is not supported"
exit_unsupported
fi

if [ ! -d events/ftrace/print ]; then
echo "event trace_marker is not supported"
exit_unsupported
fi

if [ ! -f events/ftrace/print/trigger ]; then
echo "event trigger is not supported"
exit_unsupported
fi

test_trace() {
file=$1
x=$2

cat $file | while read line; do
if [ "$line" != "${line/\#/}" ]; then
continue
fi
echo "testing $line for >$x<"
if [ "$line" == "${line/>$x</}" ]; then
fail "$line does not have >$x< in it"
fi
let x=$x+2
done
}

do_reset

echo "Test snapshot trace_marker tigger"

echo 'snapshot' > events/ftrace/print/trigger

# make sure the snapshot is allocated

grep -q 'Snapshot is allocated' snapshot

for i in `seq 1 10` ; do echo "hello >$i<" > trace_marker; done

test_trace trace 1
test_trace snapshot 2

do_reset

exit 0