1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# description: trace_marker trigger - test snapshot trigger 4# flags: instance 5 6do_reset() { 7 reset_trigger 8 echo > set_event 9 echo 0 > snapshot 10 clear_trace 11} 12 13fail() { #msg 14 do_reset 15 echo $1 16 exit_fail 17} 18 19if [ ! -f set_event ]; then 20 echo "event tracing is not supported" 21 exit_unsupported 22fi 23 24if [ ! -f snapshot ]; then 25 echo "snapshot is not supported" 26 exit_unsupported 27fi 28 29if [ ! -d events/ftrace/print ]; then 30 echo "event trace_marker is not supported" 31 exit_unsupported 32fi 33 34if [ ! -f events/ftrace/print/trigger ]; then 35 echo "event trigger is not supported" 36 exit_unsupported 37fi 38 39test_trace() { 40 file=$1 41 x=$2 42 43 cat $file | while read line; do 44 comment=`echo $line | sed -e 's/^#//'` 45 if [ "$line" != "$comment" ]; then 46 continue 47 fi 48 echo "testing $line for >$x<" 49 match=`echo $line | sed -e "s/>$x<//"` 50 if [ "$line" == "$match" ]; then 51 fail "$line does not have >$x< in it" 52 fi 53 let x=$x+2 54 done 55} 56 57do_reset 58 59echo "Test snapshot trace_marker tigger" 60 61echo 'snapshot' > events/ftrace/print/trigger 62 63# make sure the snapshot is allocated 64 65grep -q 'Snapshot is allocated' snapshot 66 67for i in `seq 1 10` ; do echo "hello >$i<" > trace_marker; done 68 69test_trace trace 1 70test_trace snapshot 2 71 72do_reset 73 74exit 0 75