X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=tests%2Fregression%2Ftools%2Fcrash%2Ftest_crash;h=be61cda2fb2dfa4c0399829276144a020e862299;hp=ff5d0e3261d83c149ee3d1573ba4e5fe9c879849;hb=3e46b4ca56f63bddb99098556060898e07df8c06;hpb=4c80129b997f0fde87c1355ebf2c44fda8fdb13c diff --git a/tests/regression/tools/crash/test_crash b/tests/regression/tools/crash/test_crash index ff5d0e326..be61cda2f 100755 --- a/tests/regression/tools/crash/test_crash +++ b/tests/regression/tools/crash/test_crash @@ -31,7 +31,7 @@ NR_ITER=-1 # Temp file output OUTPUT_DIR=$(mktemp -d) -NUM_TESTS=70 +NUM_TESTS=71 source $TESTDIR/utils/utils.sh @@ -87,19 +87,11 @@ function stop_test_app() function verify_path_dont_exists() { local path=$1 - local timeout_try_limit=100 - local timeout_try_count=0 - local timeout_flag=0 while find $path -mindepth 1 -maxdepth 1 &>/dev/null ; do - if [[ $timeout_try_count -gt $timeout_try_limit ]]; then - timeout_flag=1 - break - fi - timeout_try_count=$((timeout_try_count+1)) - sleep 0.1 + sleep 2 done - return $timeout_flag + return 0 } function test_shm_path_per_pid() @@ -225,6 +217,7 @@ function test_lttng_crash() local session_name=crash_test local channel_name=channel_crash local shm_path=$(mktemp -d) + local shm_path_symlink=$(mktemp -d) local event_name="tp:tptest" # Create a session in snapshot mode to deactivate any use of consumerd @@ -242,10 +235,17 @@ function test_lttng_crash() test $crash_recup_count -eq "10" ok $? "Expect 10 recup event from buffers got $crash_recup_count" + # Test with symlink + cp -rs $shm_path/. $shm_path_symlink + crash_recup_count=$($LTTNG_CRASH $shm_path_symlink | wc -l) + test $crash_recup_count -eq "10" + ok $? "Expect 10 recup event from symlink buffers got $crash_recup_count" + # Tear down destroy_lttng_session_ok $session_name stop_lttng_sessiond rm -rf $shm_path + rm -rf $shm_path_symlink } function test_lttng_crash_extraction() @@ -377,16 +377,25 @@ function test_lttng_crash_extraction_sigkill() rm -rf $extraction_dir_path } +function interrupt_cleanup() +{ + diag "*** Cleaning-up test ***" + stop_test_apps + stop_lttng_sessiond + exit 1 +} + TESTS=( test_shm_path_per_uid test_shm_path_per_pid - test_lttng_crash - test_lttng_crash_extraction test_shm_path_per_pid_sigint test_shm_path_per_uid_sigint + test_lttng_crash + test_lttng_crash_extraction test_lttng_crash_extraction_sigkill ) +trap interrupt_cleanup SIGTERM SIGINT for fct_test in ${TESTS[@]}; do