]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Bug 493959 - s390x: Fix regtest failure for op00 with /bin/dash
authorFlorian Krohm <flo2030@eich-krohm.de>
Tue, 29 Oct 2024 15:24:31 +0000 (16:24 +0100)
committerAndreas Arnez <arnez@linux.ibm.com>
Tue, 29 Oct 2024 15:46:34 +0000 (16:46 +0100)
On different machines /bin/sh may be impersonated by different shells, and
those behave differently as to whether they write "Illegal instruction ..."
to stderr.  While newer versions of bash do not, dash does.

For the op00 test case this means that an additional line may be written
to `op00.stderr.out', depending on which shell is being used.  Hence
adding "Illegal instruction ..." as an expected line to `op00.stderr.exp'
wouldn't work on all systems.

Instead, fix this issue by adding the case of "illegal instruction" to the
general filtering logic in filter_stderr_basic.in, where various other
messages of this kind are already filtered out.

Reviewed-by: Andreas Arnez <arnez@linux.ibm.com>
NEWS
tests/filter_stderr_basic.in

diff --git a/NEWS b/NEWS
index 8fb685ffaa2e2f69201acaa086656845d240ba24..329bcdb6548c23623b20f7a1abaede049000bb8a 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -79,6 +79,7 @@ are not entered into bugzilla tend to get forgotten about or ignored.
 493454  Missing FUSE_COMPATIBLE_MAY_BLOCK markers
 493507  direct readlink syscall from PRE handler is incompatible with
         FUSE_COMPATIBLE_MAY_BLOCK
+493959  s390x: Fix regtest failure for none/tests/s390x/op00
 493970  s390x: Store/restore FPC upon helper call causes slowdown
 494252  s390x: incorrect disassembly for LOCHI and friends
 495278  PowerPC instruction dcbf should allow the L field values of 4, 6 on
index 6f7dec1d3d83def2811c1d583dcc4c8398e5c568..f32266c0b7523dac8d84cc31538c7a1ee87fb9cc 100755 (executable)
@@ -49,11 +49,10 @@ $SED "/warning: line info addresses out of order/d" |
 $SED "/main Warning: due to transparent memory mappings with MAP_STACK/d" |
 $SED "/main --sanity-level=3 and above may give spurious errors./d" |
 
-# Older bash versions print abnormal termination messages on the stderr
-# of the bash process. Newer bash versions redirect such messages properly.
-# Suppress any redirected abnormal termination messages. You can find the
-# complete list of messages in the bash source file siglist.c.
-perl -n -e 'print if !/^(Segmentation fault|Alarm clock|Aborted|Bus error|Killed)( \(core dumped\))?$/' |
+# Filter out abnormal termination messages. Depending on which shell is
+# pointed to by /bin/sh those messages will be written to stderr or not.
+# E.g. dash writes them to stderr, whereas bash does not.
+perl -n -e 'print if !/^(Illegal instruction|Segmentation fault|Alarm clock|Aborted|Bus error|Killed)( \(core dumped\))?$/' |
 
 # Similar as above, but for ksh on Solaris/illumos.
 perl -n -e 'print if !/^(Memory fault|Killed) $/' |