1#!/bin/sh 2# description: event trigger - test event enable/disable trigger 3# flags: instance 4 5do_reset() { 6 reset_trigger 7 echo > set_event 8 clear_trace 9} 10 11fail() { #msg 12 do_reset 13 echo $1 14 exit $FAIL 15} 16 17if [ ! -f set_event -o ! -d events/sched ]; then 18 echo "event tracing is not supported" 19 exit_unsupported 20fi 21 22if [ ! -f events/sched/sched_process_fork/trigger ]; then 23 echo "event trigger is not supported" 24 exit_unsupported 25fi 26 27reset_tracer 28do_reset 29 30FEATURE=`grep enable_event events/sched/sched_process_fork/trigger` 31if [ -z "$FEATURE" ]; then 32 echo "event enable/disable trigger is not supported" 33 exit_unsupported 34fi 35 36echo "Test enable_event trigger" 37echo 0 > events/sched/sched_switch/enable 38echo 'enable_event:sched:sched_switch' > events/sched/sched_process_fork/trigger 39( echo "forked") 40if [ `cat events/sched/sched_switch/enable` != '1*' ]; then 41 fail "enable_event trigger on sched_process_fork did not work" 42fi 43 44reset_trigger 45 46echo "Test disable_event trigger" 47echo 1 > events/sched/sched_switch/enable 48echo 'disable_event:sched:sched_switch' > events/sched/sched_process_fork/trigger 49( echo "forked") 50if [ `cat events/sched/sched_switch/enable` != '0*' ]; then 51 fail "disable_event trigger on sched_process_fork did not work" 52fi 53 54reset_trigger 55 56echo "Test semantic error for event enable/disable trigger" 57! echo 'enable_event:nogroup:noevent' > events/sched/sched_process_fork/trigger 58! echo 'disable_event+1' > events/sched/sched_process_fork/trigger 59echo 'enable_event:sched:sched_switch' > events/sched/sched_process_fork/trigger 60! echo 'enable_event:sched:sched_switch' > events/sched/sched_process_fork/trigger 61! echo 'disable_event:sched:sched_switch' > events/sched/sched_process_fork/trigger 62 63do_reset 64 65exit 0 66