Fix: tests: use SIGSTOP for crash extraction test
[lttng-tools.git] / tests / regression / tools / crash / test_crash
index 35a5bd7bcb72fd858cd3338de2fe1d308157de1c..5b9a27c58abce165e85cc4a8150f07cf2d93d4fe 100755 (executable)
@@ -31,7 +31,7 @@ NR_ITER=-1
 # Temp file output
 OUTPUT_DIR=$(mktemp -d)
 
-NUM_TESTS=71
+NUM_TESTS=73
 
 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()
@@ -368,6 +360,9 @@ function test_lttng_crash_extraction_sigkill()
        # Generate 10 events
        $TESTAPP_BIN 10 0
 
+       sigstop_lttng_sessiond
+       sigstop_lttng_consumerd
+
        # Kill the consumers then sessiond with sigkill
        stop_lttng_consumerd SIGKILL
        stop_lttng_sessiond SIGKILL
@@ -385,6 +380,14 @@ 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
@@ -395,6 +398,7 @@ TESTS=(
        test_lttng_crash_extraction_sigkill
 )
 
+trap interrupt_cleanup SIGTERM SIGINT
 
 for fct_test in ${TESTS[@]};
 do
This page took 0.02368 seconds and 4 git commands to generate.