1 #!/bin/sh 2 # SPDX-License-Identifier: GPL-2.0 3 # description: event trigger - test multiple histogram triggers 4 # requires: set_event events/sched/sched_process_fork/trigger events/sched/sched_process_fork/hist 5 # flags: instance 6 7 fail() { #msg 8 echo $1 9 exit_fail 10 } 11 12 echo "Test histogram multiple triggers" 13 14 echo 'hist:keys=parent_pid:vals=child_pid' > events/sched/sched_process_fork/trigger 15 echo 'hist:keys=parent_comm:vals=child_pid' >> events/sched/sched_process_fork/trigger 16 for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done 17 grep parent_pid events/sched/sched_process_fork/hist > /dev/null || \ 18 fail "hist trigger on sched_process_fork did not work" 19 grep child events/sched/sched_process_fork/hist > /dev/null || \ 20 fail "hist trigger on sched_process_fork did not work" 21 COMM=`cat /proc/$$/comm` 22 grep "parent_comm: $COMM" events/sched/sched_process_fork/hist > /dev/null || \ 23 fail "string key on sched_process_fork did not work" 24 25 reset_trigger 26 27 echo "Test histogram with its name" 28 29 echo 'hist:name=test_hist:keys=common_pid' > events/sched/sched_process_fork/trigger 30 for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done 31 grep test_hist events/sched/sched_process_fork/hist > /dev/null || \ 32 fail "named event on sched_process_fork did not work" 33 34 echo "Test same named histogram on different events" 35 36 echo 'hist:name=test_hist:keys=common_pid' > events/sched/sched_process_exit/trigger 37 for i in `seq 1 10` ; do ( echo "forked" > /dev/null); done 38 grep test_hist events/sched/sched_process_exit/hist > /dev/null || \ 39 fail "named event on sched_process_fork did not work" 40 41 diffs=`diff events/sched/sched_process_exit/hist events/sched/sched_process_fork/hist | wc -l` 42 test $diffs -eq 0 || fail "Same name histograms are not same" 43 44 exit 0
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.