X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=tests%2Fregression%2Fkernel%2Ftest_event_basic;h=9f22d7db83984d47f7452aeea9a2de0bb5d75871;hb=8d5a3312b34841f1ecba2605acad3eaca79fd5e4;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..9f22d7db8 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 - stop_lttng_tracing + 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_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 } @@ -80,6 +81,7 @@ fi skip $isroot "Root access is needed. Skipping all tests." $NUM_TESTS || { + validate_lttng_modules_present start_lttng_sessiond test_event_basic