]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
FreeBSD regtest: clean up none auxv test
authorPaul Floyd <pjfloyd@wanadoo.fr>
Wed, 17 Sep 2025 18:05:09 +0000 (20:05 +0200)
committerPaul Floyd <pjfloyd@wanadoo.fr>
Wed, 17 Sep 2025 18:05:09 +0000 (20:05 +0200)
I got fed up with this changing all the time, needing endless
expecteds for x86, amd65, arm64, and each FreeBSD version

So now I'm generating the expected on the fly, doing the same auxv
filtering as previously plus swapping unsupported AT_ values
with AT_IGNORE / number 01. The awk script will still need occasional
maintenance but it should be less frequent.

12 files changed:
none/tests/freebsd/Makefile.am
none/tests/freebsd/auxv.stderr.exp [deleted file]
none/tests/freebsd/auxv.stderr.exp-32on64 [deleted file]
none/tests/freebsd/auxv.stderr.exp-arm64 [deleted file]
none/tests/freebsd/auxv.stderr.exp-freebsd13 [deleted file]
none/tests/freebsd/auxv.stderr.exp-freebsd131 [deleted file]
none/tests/freebsd/auxv.stderr.exp-freebsd14 [deleted file]
none/tests/freebsd/auxv.vgtest
none/tests/freebsd/auxv_script.stderr.exp [deleted file]
none/tests/freebsd/auxv_script.stderr.exp-arm64 [deleted file]
none/tests/freebsd/auxv_script.vgtest
none/tests/freebsd/filter_pre_auxv [new file with mode: 0755]

index 66ef0c47ca414b15ae2c06a164ba7f9745a7091a..2353865276a02d9986b28755b89a7d47318e1105 100644 (file)
@@ -1,19 +1,12 @@
 
 include $(top_srcdir)/Makefile.tool-tests.am
 
-dist_noinst_SCRIPTS = filter_stderr test.sh filter_452274 filter_auxv filter_fdleak auxv_script
+dist_noinst_SCRIPTS = filter_stderr test.sh filter_452274 filter_auxv \
+                      filter_pre_auxv filter_fdleak auxv_script
 
 EXTRA_DIST = \
        auxv.vgtest \
-       auxv.stderr.exp \
-       auxv.stderr.exp-32on64 \
-       auxv.stderr.exp-freebsd13 \
-       auxv.stderr.exp-freebsd131 \
-       auxv.stderr.exp-freebsd14 \
-       auxv.stderr.exp-arm64 \
        auxv_script.vgtest \
-       auxv_script.stderr.exp \
-       auxv_script.stderr.exp-arm64 \
        bug452274.vgtest \
        bug452274.stderr.exp \
        bug498317.vgtest bug498317.stderr.exp \
diff --git a/none/tests/freebsd/auxv.stderr.exp b/none/tests/freebsd/auxv.stderr.exp
deleted file mode 100644 (file)
index e106f06..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
diff --git a/none/tests/freebsd/auxv.stderr.exp-32on64 b/none/tests/freebsd/auxv.stderr.exp-32on64
deleted file mode 100644 (file)
index db7060a..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
-val: AT_USRSTACKBASE int: 35 ptr: 0x........
-val: AT_USRSTACKLIM int: 36 ptr: 0x........
diff --git a/none/tests/freebsd/auxv.stderr.exp-arm64 b/none/tests/freebsd/auxv.stderr.exp-arm64
deleted file mode 100644 (file)
index 738a284..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_HWCAP int: 25 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
-val: AT_USRSTACKBASE int: 35 ptr: 0x........
-val: AT_USRSTACKLIM int: 36 ptr: 0x........
diff --git a/none/tests/freebsd/auxv.stderr.exp-freebsd13 b/none/tests/freebsd/auxv.stderr.exp-freebsd13
deleted file mode 100644 (file)
index 1740ed9..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
diff --git a/none/tests/freebsd/auxv.stderr.exp-freebsd131 b/none/tests/freebsd/auxv.stderr.exp-freebsd131
deleted file mode 100644 (file)
index 7010bfa..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
-val: AT_IGNORE int: 01 ptr: 0x........
diff --git a/none/tests/freebsd/auxv.stderr.exp-freebsd14 b/none/tests/freebsd/auxv.stderr.exp-freebsd14
deleted file mode 100644 (file)
index dcca09f..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_USRSTACKBASE int: 35 ptr: 0x........
-val: AT_USRSTACKLIM int: 36 ptr: 0x........
index 098f301342ea42064d3dd59a9a9f608041fff84f..a2643a0796247ce02cad0622fccfe4291554948f 100644 (file)
@@ -1,4 +1,6 @@
+prereq: ./auxv 2>&1 | ./filter_pre_auxv > auxv.stderr.exp
 prog: auxv
 vgopts: -q
 stderr_filter: filter_auxv
+post: rm auxv.stderr.exp
 
diff --git a/none/tests/freebsd/auxv_script.stderr.exp b/none/tests/freebsd/auxv_script.stderr.exp
deleted file mode 100644 (file)
index dcca09f..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_USRSTACKBASE int: 35 ptr: 0x........
-val: AT_USRSTACKLIM int: 36 ptr: 0x........
diff --git a/none/tests/freebsd/auxv_script.stderr.exp-arm64 b/none/tests/freebsd/auxv_script.stderr.exp-arm64
deleted file mode 100644 (file)
index 738a284..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-val: AT_PHDR int: 03 ptr: 0x........
-val: AT_PHENT int: 04 ptr: 0x........
-val: AT_PHNUM int: 05 ptr: 0x........
-val: AT_PAGESZ int: 06 ptr: 0x........
-val: AT_FLAGS int: 08 ptr: 0x........
-val: AT_ENTRY int: 09 ptr: 0x........
-val: AT_BASE int: 07 ptr: 0x........
-val: AT_EHDRFLAGS int: 24 ptr: 0x........
-val: AT_EXECPATH int: 15 ptr: 0x........
-EXECPATH: BASEDIR/valgrind/none/tests/freebsd/auxv
-val: AT_OSRELDATE int: 18 ptr: 0x........
-val: AT_CANARY int: 16 ptr: 0x........
-val: AT_CANARYLEN int: 17 ptr: 0x........
-val: AT_NCPUS int: 19 ptr: 0x........
-val: AT_PAGESIZES int: 20 ptr: 0x........
-val: AT_PAGESIZESLEN int: 21 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_STACKPROT int: 23 ptr: 0x........
-val: AT_HWCAP int: 25 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_IGNORE int: 01 ptr: 0x........
-val: AT_ARGC int: 28 ptr: 0x........
-val: AT_ARGV int: 29 ptr: 0x........
-ARGV: ./auxv
-val: AT_ENVC int: 30 ptr: 0x........
-val: AT_ENVV int: 31 ptr: 0x........
-val: AT_PS_STRINGS int: 32 ptr: 0x........
-PS_STRINGS ARGV: ./auxv
-val: AT_USRSTACKBASE int: 35 ptr: 0x........
-val: AT_USRSTACKLIM int: 36 ptr: 0x........
index ccd450a9a2e778c5dc1a174f33479a347893f8c2..b2afe075e83bcf0a75c9a2bbd662a1bc2e0c1cf1 100644 (file)
@@ -1,4 +1,6 @@
+prereq: ./auxv_script 2>&1 | ./filter_pre_auxv > auxv_script.stderr.exp
 prog: auxv_script
 vgopts: -q
 stderr_filter: filter_auxv
+post: rm auxv_script.stderr.exp
 
diff --git a/none/tests/freebsd/filter_pre_auxv b/none/tests/freebsd/filter_pre_auxv
new file mode 100755 (executable)
index 0000000..37c6368
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+# filters all auxv values that are not supported by Valgrind
+
+./filter_auxv |
+
+awk '/AT_TIMEKEEP/{$2="AT_IGNORE";$4="01"}{print}' |
+awk '/AT_HWCAP2/{$2="AT_IGNORE";$4="01"}{print}' |
+awk '/AT_HWCAP3/{$2="AT_IGNORE";$4="01"}{print}' |
+awk '/AT_HWCAP4/{$2="AT_IGNORE";$4="01"}{print}' |
+awk '/AT_BSDFLAGS/{$2="AT_IGNORE";$4="01"}{print}' |
+awk '/AT_KPRELOAD/{$2="AT_IGNORE";$4="01"}{print}'