X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=tests%2Fregression%2Fkernel%2Ftest_event_basic;h=b0ed0ea9021ae916fc219cadbda698d0bd2cdd23;hp=5c19744d3b4c0eeb5d74fd373b3931ae49622572;hb=9d16b343fb9e781fc8d8fa3c448a3f382306dd33;hpb=e3bef7256ce348cf232ede3f36721e661cfda2a7 diff --git a/tests/regression/kernel/test_event_basic b/tests/regression/kernel/test_event_basic index 5c19744d3..b0ed0ea90 100755 --- a/tests/regression/kernel/test_event_basic +++ b/tests/regression/kernel/test_event_basic @@ -1,25 +1,17 @@ #!/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=12 +NUM_TESTS=20 + +TESTCMD="/bin/true" source $TESTDIR/utils/utils.sh @@ -28,20 +20,49 @@ 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_free" + 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" - 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 } @@ -62,6 +83,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 }