]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Silence false positive failure of LTP munmap01
authorMartin Cermak <mcermak@redhat.com>
Mon, 13 Oct 2025 07:53:56 +0000 (09:53 +0200)
committerMark Wielaard <mark@klomp.org>
Fri, 24 Oct 2025 15:08:18 +0000 (17:08 +0200)
After upgrading LTP testsuite version to 20250930 (tracked in bug
510169) munmap01 syscall test started failing.  It however turns out
that this testcase was substantially rewritten and the failure is
expected.  This update will silence mentioned false positive.

https://bugs.kde.org/show_bug.cgi?id=510292

NEWS
auxprogs/Makefile.am
auxprogs/filters/munmap01 [new file with mode: 0755]

diff --git a/NEWS b/NEWS
index 62a1d89141d4419fa70b388eecea135d46b216bf..ff72ff1587346c1f91d0c607b64e151d65367009 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -207,6 +207,7 @@ are not entered into bugzilla tend to get forgotten about or ignored.
 509642  Add missing ppc64-linux syswraps
 509643  Add missing s390x-linux syswraps
 510169  Update the LTP version in valgrind testsuite to 20250930
+510292  Silence false positive failure of LTP munmap01
 510694  Handle qExecAndArgs remote protocol packet
 
 To see details of a given bug, visit
index d96e7fd0a9685379d117b1178f36743964febf8a..b68cbac05a7f20d117715cba83224eb361a4355b 100644 (file)
@@ -18,7 +18,8 @@ dist_noinst_SCRIPTS = \
 LTP_FILTERS = \
        filters/mmap18 \
        filters/prctl10 \
-       filters/select03
+       filters/select03 \
+       filters/munmap01
 
 LTP_PATCHES =
 
diff --git a/auxprogs/filters/munmap01 b/auxprogs/filters/munmap01
new file mode 100755 (executable)
index 0000000..b063ba8
--- /dev/null
@@ -0,0 +1,35 @@
+#!/bin/awk -f
+
+# Filter out stuff like the following, since it is expected output for the munmap01 testcase:
+
+# munmap01: unempty log2.filtered:
+# ==1980523==
+# ==1980523== Process terminating with default action of signal 11 (SIGSEGV): dumping core
+# ==1980523==  Access not within mapped region at address 0x483F000
+# ==1980523==    at 0x401F9A: run (munmap01.c:46)
+# ==1980523==    by 0x40D42F: fork_testrun.isra.0 (tst_test.c:1669)
+# ==1980523==    by 0x40F894: tst_run_tcases (tst_test.c:2041)
+# ==1980523==    by 0x401DCD: main (tst_test.h:738)
+# ==1980523==  If you believe this happened as a result of a stack
+# ==1980523==  overflow in your program's main thread (unlikely but
+# ==1980523==  possible), you can try to increase the size of the
+# ==1980523==  main thread stack using the --main-stacksize= flag.
+# ==1980523==  The main thread stack size used in this run was 8388608.
+# ==1980540==
+# ==1980540== Process terminating with default action of signal 11 (SIGSEGV): dumping core
+# ==1980540==  Access not within mapped region at address 0x4840000
+# ==1980540==    at 0x401F9A: run (munmap01.c:46)
+# ==1980540==    by 0x40D42F: fork_testrun.isra.0 (tst_test.c:1669)
+# ==1980540==    by 0x40F894: tst_run_tcases (tst_test.c:2041)
+# ==1980540==    by 0x401DCD: main (tst_test.h:738)
+# ==1980540==  If you believe this happened as a result of a stack
+# ==1980540==  overflow in your program's main thread (unlikely but
+# ==1980540==  possible), you can try to increase the size of the
+# ==1980540==  main thread stack using the --main-stacksize= flag.
+# ==1980540==  The main thread stack size used in this run was 8388608.
+
+skip = 0
+/==[0-9][0-9]*==/ { skip = 1 }
+/Process terminating with default action of signal 11/ { skip = 1; skipblock=1 }
+/The main thread stack size used in this run was/ { skip = 1; skipblock=0 }
+!skip && !skipblock { print }