3 # Copyright (C) 2012 David Goulet <dgoulet@efficios.com>
5 # SPDX-License-Identifier: LGPL-2.1-only
7 TEST_DESC
="Streaming - Kernel tracing"
10 TESTDIR
=$CURDIR/..
/..
/..
11 EVENT_NAME
="sched_switch"
14 TRACE_PATH
=$
(mktemp
-d -t tmp.test_streaming_kernel_trace_path.XXXXXX
)
18 source $TESTDIR/utils
/utils.sh
20 function test_kernel_before_start
()
22 diag
"Test kernel streaming with event enable BEFORE start"
23 create_lttng_session_uri
$SESSION_NAME net
://localhost
24 lttng_enable_kernel_event
$SESSION_NAME $EVENT_NAME
25 start_lttng_tracing_ok
$SESSION_NAME
28 stop_lttng_tracing_ok
$SESSION_NAME
29 destroy_lttng_session_ok
$SESSION_NAME
32 # Deactivated since this feature is not yet available where we can enable
33 # an event AFTERE tracing has started.
34 function test_kernel_after_start
()
36 diag
"Test kernel streaming with event enable AFTER start"
37 create_lttng_session_uri
$SESSION_NAME net
://localhost
38 start_lttng_tracing_ok
$SESSION_NAME
39 lttng_enable_kernel_event
$SESSION_NAME $EVENT_NAME
42 stop_lttng_tracing_ok
$SESSION_NAME
43 destroy_lttng_session_ok
$SESSION_NAME
48 print_test_banner
"$TEST_DESC"
50 if [ "$(id -u)" == "0" ]; then
56 skip
$isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS ||
58 validate_lttng_modules_present
60 start_lttng_relayd
"-o $TRACE_PATH"
63 tests
=( test_kernel_before_start
)
65 for fct_test
in ${tests[@]};
67 SESSION_NAME
=$
(randstring
16 0)
71 validate_trace_path_kernel_network
"$TRACE_PATH" "$SESSION_NAME"
72 validate_trace
$EVENT_NAME $TRACE_PATH/$HOSTNAME/$SESSION_NAME*
74 # Only delete if successful