[lttng-dev] [PATCH lttng-tools] Tests: Fix nprocesses applications shutdown

Christian Babeux christian.babeux at efficios.com
Mon Mar 18 15:00:09 EDT 2013


The nprocesses test is using the SIGPIPE signal to shutdown the
spawned child applications. This is done in order to silence
the shell message such as this one:

"nprocesses/test_nprocesses: line 79: 26458 Terminated"

This mechanism is broken on systems where the SIGPIPE default handler
is overriden (thus no application shutdown occurs) in the executing
environment. This could lead to stale applications polluting the system
and causing heratic behavior in subsequent tests.

This commit add a loop and check that all the spawned applications have
been successfully killed.

Signed-off-by: Christian Babeux <christian.babeux at efficios.com>
---
 tests/regression/ust/nprocesses/test_nprocesses | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tests/regression/ust/nprocesses/test_nprocesses b/tests/regression/ust/nprocesses/test_nprocesses
index e89d02e..23d9a0a 100755
--- a/tests/regression/ust/nprocesses/test_nprocesses
+++ b/tests/regression/ust/nprocesses/test_nprocesses
@@ -74,8 +74,10 @@ destroy_lttng_session $SESSION_NAME
 
 rm -rf $TRACE_PATH
 
-# Send SIGPIPE to 'silence' bash process status such as "Process as terminated"
-killall -s PIPE -q $TEST_BIN_NAME >/dev/null 2>&1
+while [ -n "$(pidof $TEST_BIN_NAME)" ]; do
+	killall -q $TEST_BIN_NAME >/dev/null 2>&1
+	sleep 0.5
+done
 
 pass "Kill all spawned applications"
 
-- 
1.8.1.3




More information about the lttng-dev mailing list