X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=tests%2Fregression%2Fkernel%2Ftest_event_basic;h=ac9ec05492cf2462f422af01b2fd19e2710dfc5b;hb=HEAD;hp=2906ec71ebddcf1b75e14564895fba8d23086459;hpb=bf6ae429bc7bf2fefdce61e48806768dab7567d5;p=lttng-tools.git diff --git a/tests/regression/kernel/test_event_basic b/tests/regression/kernel/test_event_basic index 2906ec71e..e57cd6d26 100755 --- a/tests/regression/kernel/test_event_basic +++ b/tests/regression/kernel/test_event_basic @@ -1,68 +1,69 @@ #!/bin/bash # -# Copyright (C) - 2013 Christian Babeux +# Copyright (C) 2013 Christian Babeux # -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License, version 2 only, as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 51 -# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. TEST_DESC="Kernel tracer - Basic event" CURDIR=$(dirname $0)/ TESTDIR=$CURDIR/../.. -NUM_TESTS=20 +NUM_TESTS=21 + +TESTCMD="/bin/true" source $TESTDIR/utils/utils.sh function test_event_basic() { - TRACE_PATH=$(mktemp -d) + TRACE_PATH=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX") SESSION_NAME="kernel_event_basic" 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_free" + lttng_enable_kernel_event $SESSION_NAME "sched_process_fork" + + start_lttng_tracing_ok - start_lttng_tracing - stop_lttng_tracing + # 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_path_kernel "$TRACE_PATH" "" validate_trace "sched_switch" $TRACE_PATH validate_trace "sched_process_exit" $TRACE_PATH - validate_trace "sched_process_free" $TRACE_PATH + validate_trace "sched_process_fork" $TRACE_PATH - destroy_lttng_session $SESSION_NAME + destroy_lttng_session_ok $SESSION_NAME rm -rf $TRACE_PATH } function test_enable_after_start() { - TRACE_PATH=$(mktemp -d) + TRACE_PATH=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX") 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 + start_lttng_tracing_ok lttng_enable_kernel_event $SESSION_NAME "sched_process_exit" - 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 - destroy_lttng_session $SESSION_NAME + destroy_lttng_session_ok $SESSION_NAME rm -rf $TRACE_PATH } @@ -72,14 +73,9 @@ plan_tests $NUM_TESTS print_test_banner "$TEST_DESC" -if [ "$(id -u)" == "0" ]; then - isroot=1 -else - isroot=0 -fi - -skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || +check_skip_kernel_test $NUM_TESTS "Skipping all tests." || { + validate_lttng_modules_present start_lttng_sessiond test_event_basic