X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=tests%2Fregression%2Fkernel%2Ftest_event_basic;h=1a10a2ce23ab7acd62af68823c25a6dadaa1b7ec;hp=4de94dc670fe07a6b338fa40f9db5f9bf5e5801a;hb=5f0d4e78e640b8baaf900fe52f491155ad6d8168;hpb=5d2e1e66a968d9e555f9b8b00d0589ebfaf3de32 diff --git a/tests/regression/kernel/test_event_basic b/tests/regression/kernel/test_event_basic index 4de94dc67..1a10a2ce2 100755 --- a/tests/regression/kernel/test_event_basic +++ b/tests/regression/kernel/test_event_basic @@ -19,31 +19,60 @@ TEST_DESC="Kernel tracer - Basic event" CURDIR=$(dirname $0)/ TESTDIR=$CURDIR/../.. -NUM_TESTS=12 +NUM_TESTS=20 -source $TESTDIR/utils/utils.sh +TESTCMD="/bin/true" -print_test_banner "$TEST_DESC" +source $TESTDIR/utils/utils.sh function test_event_basic() { TRACE_PATH=$(mktemp -d) SESSION_NAME="kernel_event_basic" - create_lttng_session $SESSION_NAME $TRACE_PATH + create_lttng_session_ok $SESSION_NAME $TRACE_PATH + + lttng_enable_kernel_event $SESSION_NAME "sched_switch" + lttng_enable_kernel_event $SESSION_NAME "sched_process_exit" + lttng_enable_kernel_event $SESSION_NAME "sched_process_fork" + + start_lttng_tracing_ok + + # Running a process and waiting for its completion forces the triggering of + # fork, sched_switch and exit events + eval ${TESTCMD} + stop_lttng_tracing_ok + + validate_trace "sched_switch" $TRACE_PATH + validate_trace "sched_process_exit" $TRACE_PATH + validate_trace "sched_process_fork" $TRACE_PATH + + destroy_lttng_session_ok $SESSION_NAME + + rm -rf $TRACE_PATH +} + +function test_enable_after_start() +{ + TRACE_PATH=$(mktemp -d) + SESSION_NAME="kernel_enable_after_start" + + create_lttng_session_ok $SESSION_NAME $TRACE_PATH lttng_enable_kernel_event $SESSION_NAME "sched_switch" + + start_lttng_tracing_ok lttng_enable_kernel_event $SESSION_NAME "sched_process_exit" - lttng_enable_kernel_event $SESSION_NAME "sched_process_free" - start_lttng_tracing - stop_lttng_tracing + # Running a process and waiting for its completion forces the triggering of + # sched_switch and exit events + eval ${TESTCMD} + stop_lttng_tracing_ok validate_trace "sched_switch" $TRACE_PATH validate_trace "sched_process_exit" $TRACE_PATH - validate_trace "sched_process_free" $TRACE_PATH - destroy_lttng_session $SESSION_NAME + destroy_lttng_session_ok $SESSION_NAME rm -rf $TRACE_PATH } @@ -51,6 +80,8 @@ function test_event_basic() # MUST set TESTDIR before calling those functions plan_tests $NUM_TESTS +print_test_banner "$TEST_DESC" + if [ "$(id -u)" == "0" ]; then isroot=1 else @@ -62,6 +93,7 @@ skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || start_lttng_sessiond test_event_basic + test_enable_after_start stop_lttng_sessiond }