| #!/bin/sh | |
| # SPDX-License-Identifier: GPL-2.0 | |
| # description: trace_marker trigger - test snapshot trigger | |
| # flags: instance | |
| fail() { #msg | |
| 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 | |
| comment=`echo $line | sed -e 's/^#//'` | |
| if [ "$line" != "$comment" ]; then | |
| continue | |
| fi | |
| echo "testing $line for >$x<" | |
| match=`echo $line | sed -e "s/>$x<//"` | |
| if [ "$line" = "$match" ]; then | |
| fail "$line does not have >$x< in it" | |
| fi | |
| x=$((x+2)) | |
| done | |
| } | |
| 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 | |
| exit 0 |