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

do_reset() {
    echo > set_event
    clear_trace
}

fail() { #msg
    do_reset
    echo $1
    exit -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:sched_switch' > set_event
usleep 1

count=`cat trace | grep sched_switch | wc -l`
if [ $count -eq 0 ]; then
    fail "sched_switch events are not recorded"
fi

do_reset

echo 1 > events/sched/sched_switch/enable
usleep 1

count=`cat trace | grep sched_switch | wc -l`
if [ $count -eq 0 ]; then
    fail "sched_switch events are not recorded"
fi

do_reset

echo 0 > events/sched/sched_switch/enable
usleep 1

count=`cat trace | grep sched_switch | wc -l`
if [ $count -ne 0 ]; then
    fail "sched_switch events should not be recorded"
fi

do_reset

exit 0
