From: Serguei Makarov Date: Thu, 14 Oct 2021 20:44:23 +0000 (-0400) Subject: stap_run.exp: accept 'WARNING: Child process exited due to signal' X-Git-Tag: release-4.6~46 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=6d4b6424c6e410caba46bcfddb1d5109e81fef1d;p=systemtap.git stap_run.exp: accept 'WARNING: Child process exited due to signal' This was causing numerous spurious FAIL outcomes on RHEL[89]. The extra "WARNING: Child process exited due to signal" is not an error, it's merely stap communicating to the user that the child process was interrupted, which is exactly what we do. Not sure why it's printed on some systems and not others. XXX There may be a deeper issue in that the tiny do-nothing binary probed by the testcase (e.g. testsuite/systemtap.base/at_register.c) was supposed to stop on its own and didn't. Adding a delay to the first kill -INT $mypid makes the problem more obvious. --- diff --git a/testsuite/lib/stap_run.exp b/testsuite/lib/stap_run.exp index 79e8383ff..780994c02 100644 --- a/testsuite/lib/stap_run.exp +++ b/testsuite/lib/stap_run.exp @@ -30,6 +30,7 @@ proc stap_run { TEST_NAME {LOAD_GEN_FUNCTION ""} {OUTPUT_CHECK_STRING ""} args } set probe_errors 0 set skipped_probes 0 set warning_regexp {^WARNING: Number of errors: ([0-9]+), skipped probes: ([0-9]+)\r\n} + set warning_child_regexp {^WARNING: Child process exited with signal [0-9]+ \(.*\)\r\n} if {[info procs installtest_p] != "" && ![installtest_p]} { untested $TEST_NAME; return } @@ -82,6 +83,8 @@ proc stap_run { TEST_NAME {LOAD_GEN_FUNCTION ""} {OUTPUT_CHECK_STRING ""} args } set probe_errors $expect_out(1,string) set skipped_probes $expect_out(2,string) exp_continue} + -re $warning_child_regexp { + exp_continue} -re $output { pass "$TEST_NAME shutdown and output" expect {