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

do_reset() {
    echo > set_event
    clear_trace
}

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

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

reset_tracer
do_reset

echo '*:*' > set_event
count=`cat trace | grep -v ^# | wc -l`
if [ $count -eq 0 ]; then
    fail "none of events are recorded"
fi

do_reset

echo 1 > events/enable
count=`cat trace | grep -v ^# | wc -l`
if [ $count -eq 0 ]; then
    fail "none of events are recorded"
fi

do_reset

echo 0 > events/enable
count=`cat trace | grep -v ^# | wc -l`
if [ $count -ne 0 ]; then
    fail "any of events should not be recorded"
fi

do_reset

exit 0
