Import CStringView from the Babeltrace tree
[lttng-tools.git] / tests / regression / kernel / test_channel
... / ...
CommitLineData
1#!/bin/bash
2#
3# Copyright (C) 2018 Francis Deslauriers <francis.deslauriers@efficios.com>
4#
5# SPDX-License-Identifier: GPL-2.0-only
6#
7
8TEST_DESC="Kernel tracer - Channel configuration"
9
10CURDIR=$(dirname $0)/
11TESTDIR=$CURDIR/../..
12NUM_TESTS=8
13
14source $TESTDIR/utils/utils.sh
15
16function test_channel_buffer()
17{
18 TRACE_PATH=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX")
19 SESSION_NAME="test_session_name"
20 CHANNEL_NAME="test_channel_name"
21 create_lttng_session_ok "$SESSION_NAME" "$TRACE_PATH"
22
23 # Try to create a tiny buffer.
24 lttng_enable_kernel_channel_ok "$SESSION_NAME" "$CHANNEL_NAME" --subbuf-size=4k --num-subbuf=1
25
26 destroy_lttng_session_ok "$SESSION_NAME"
27
28 rm -rf "$TRACE_PATH"
29}
30
31function test_channel_buffer_too_large()
32{
33 TRACE_PATH=$(mktemp -d -t "tmp.${FUNCNAME[0]}_trace_path.XXXXXX")
34 SESSION_NAME="test_session_name"
35 CHANNEL_NAME="test_channel_name"
36 create_lttng_session_ok "$SESSION_NAME" "$TRACE_PATH"
37
38 # Try to create a buffer larger than memory. This testcase will need to
39 # be adjusted if someone has a computer with 1024*1000 GB of ram.
40 lttng_enable_kernel_channel_fail "$SESSION_NAME" "$CHANNEL_NAME" --subbuf-size=1000G --num-subbuf=1024
41
42 destroy_lttng_session_ok "$SESSION_NAME"
43
44 rm -rf "$TRACE_PATH"
45}
46
47plan_tests $NUM_TESTS
48print_test_banner "$TEST_DESC"
49
50check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." ||
51{
52 start_lttng_sessiond
53
54 test_channel_buffer
55 test_channel_buffer_too_large
56
57 stop_lttng_sessiond
58}
This page took 0.023089 seconds and 4 git commands to generate.