#!/bin/sh
# description: event tracing - enable/disable with subsystem level files

do_reset() {
    echo > set_event
    clear_trace
}

fail() { #msg
    do_reset
    echo $1
    exit $FAIL
}

yield() {
    ping localhost -c 1 || sleep .001 || usleep 1 || sleep 1
}

if [ ! -f set_event -o ! -d events/sched ]; then
    echo "event tracing is not supported"
    exit_unsupported
fi

reset_tracer
do_reset

echo 'sched:*' > set_event

yield

count=`cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l`
if [ $count -lt 3 ]; then
    fail "at least fork, exec and exit events should be recorded"
fi

do_reset

echo 1 > events/sched/enable

yield

count=`cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l`
if [ $count -lt 3 ]; then
    fail "at least fork, exec and exit events should be recorded"
fi

do_reset

echo 0 > events/sched/enable

yield

count=`cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l`
if [ $count -ne 0 ]; then
    fail "any of scheduler events should not be recorded"
fi

do_reset

exit 0
