X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=tests%2Fregression%2Ftools%2Fcrash%2Ftest_crash;h=b941ff3b22a1ee1c7830a18f6ec23f4fc93e0330;hb=f0784451e9e671a1acd6eac0dc0c750a7d83b4eb;hp=be61cda2fb2dfa4c0399829276144a020e862299;hpb=3e46b4ca56f63bddb99098556060898e07df8c06;p=lttng-tools.git diff --git a/tests/regression/tools/crash/test_crash b/tests/regression/tools/crash/test_crash index be61cda2f..b941ff3b2 100755 --- a/tests/regression/tools/crash/test_crash +++ b/tests/regression/tools/crash/test_crash @@ -1,19 +1,9 @@ #!/bin/bash # -# Copyright (C) - 2015 Jonathan Rajotte +# Copyright (C) 2015 Jonathan Rajotte # -# This library is free software; you can redistribute it and/or modify it under -# the terms of the GNU Lesser General Public License as published by the Free -# Software Foundation; version 2.1 of the License. +# SPDX-License-Identifier: LGPL-2.1-only # -# This library 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 Lesser General Public License for more -# details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA TEST_DESC="LTTng-crash & shm testing" @@ -31,7 +21,9 @@ NR_ITER=-1 # Temp file output OUTPUT_DIR=$(mktemp -d) -NUM_TESTS=71 +LAST_APP_PID= + +NUM_TESTS=77 source $TESTDIR/utils/utils.sh @@ -48,8 +40,9 @@ function start_test_app() local tmp_file=$(mktemp -u) # Start application with a temporary file. - $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT $tmp_file & + $TESTAPP_BIN -i $NR_ITER -w $NR_USEC_WAIT --sync-after-first-event $tmp_file & ret=$? + LAST_APP_PID="${!}" APPS_PID="${APPS_PID} ${!}" ok $ret "Start application to trace" @@ -81,6 +74,7 @@ function stop_test_app() diag "Stopping $p" kill ${p} 2>/dev/null wait ${p} 2>/dev/null + diag "Stopped $p" done } @@ -106,6 +100,8 @@ function test_shm_path_per_pid() create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path" enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-pid" + start_lttng_tracing_ok $session_name + diag "Shm: clean state" file_count=$(find $shm_path -mindepth 1 -maxdepth 1 | wc -l) test $file_count -eq "0" @@ -116,7 +112,7 @@ function test_shm_path_per_pid() diag "Shm: check folder creation and structure" start_test_app - first_app_pid=$APPS_PID + first_app_pid=$LAST_APP_PID shm_session_path=$(find $shm_path -mindepth 1 -maxdepth 1) file_count=$(echo "$shm_session_path"| wc -l) @@ -139,6 +135,7 @@ function test_shm_path_per_pid() diag "Shm: check basic creation of second ust application" start_test_app + second_app_pid=$LAST_APP_PID second_pid_path=$(find $shm_session_path/ust/pid -mindepth 1 -maxdepth 1) ok $? "Pid path exist found $second_pid_path" @@ -148,6 +145,7 @@ function test_shm_path_per_pid() # Stop first test application and check for cleanup stop_test_app "$first_app_pid" + APPS_PID="$second_app_pid" verify_path_dont_exists "$first_pid_path" ok $? "First pid cleanup" @@ -174,6 +172,8 @@ function test_shm_path_per_uid() create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path" enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-uid" + start_lttng_tracing_ok $session_name + diag "Shm: test clean state" file_count=$(find $shm_path -mindepth 1 -maxdepth 1 | wc -l) test $file_count -eq "0" @@ -228,8 +228,8 @@ function test_lttng_crash() start_lttng_tracing_ok $session_name # Generate 10 events - $TESTAPP_BIN 10 0 - stop_lttng_tracing + $TESTAPP_BIN -i 10 -w 0 + stop_lttng_tracing_ok crash_recup_count=$($LTTNG_CRASH $shm_path | wc -l) test $crash_recup_count -eq "10" @@ -266,8 +266,8 @@ function test_lttng_crash_extraction() start_lttng_tracing_ok $session_name # Generate 10 events - $TESTAPP_BIN 10 0 - stop_lttng_tracing + $TESTAPP_BIN -i 10 -w 0 + stop_lttng_tracing_ok $LTTNG_CRASH -x $extraction_path $shm_path ok $? "Extraction of crashed buffers to path" @@ -295,6 +295,8 @@ function test_shm_path_per_pid_sigint() create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path" enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-pid" + start_lttng_tracing_ok $session_name + start_test_app start_test_app shm_session_path=$(find $shm_path -mindepth 1 -maxdepth 1) @@ -324,6 +326,8 @@ function test_shm_path_per_uid_sigint() create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path" enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-uid" + start_lttng_tracing_ok $session_name + start_test_app start_test_app shm_session_path=$(find $shm_path -mindepth 1 -maxdepth 1) @@ -358,7 +362,10 @@ function test_lttng_crash_extraction_sigkill() start_lttng_tracing_ok $session_name # Generate 10 events - $TESTAPP_BIN 10 0 + $TESTAPP_BIN -i 10 -w 0 + + sigstop_lttng_sessiond + sigstop_lttng_consumerd # Kill the consumers then sessiond with sigkill stop_lttng_consumerd SIGKILL @@ -381,8 +388,7 @@ function interrupt_cleanup() { diag "*** Cleaning-up test ***" stop_test_apps - stop_lttng_sessiond - exit 1 + full_cleanup } TESTS=(