|
From: Mark W. <ma...@kl...> - 2023-01-10 13:40:45
|
Hi, On Mon, 2023-01-09 at 08:53 +0100, Paul Floyd wrote: > Unfortunately I think that there is a problem on FreeBSD. As already > said there is an issue on a clean system when running in the build > directory. Because the auto-load uses VG_LIBDIR which is based on the > configure -prefix rather than the in-place location the scripts won't > load if you haven't done a make install. > > The same should hold for the nightly tests. The script does a make / > make check / make install and then a make regtest in the build dir. > So that should work. > > I also see that several of the Linux nightlies also have failures. This issue seems indeed that you get warnings like: warning: Missing auto-load script at offset 0 in section .debug_gdb_scripts of file /home/mark/src/valgrind/./.in_place/vgpreload_core-amd64-linux.so. Use `info auto-load python-scripts [REGEXP]' to list them. Unless you explicitly installed valgrind-monitor.py in the VG_LIBDIR path. The following filters help with that: diff --git a/gdbserver_tests/filter_gdb.in b/gdbserver_tests/filter_gdb.in index 03f26dc86..b70dc5201 100755 --- a/gdbserver_tests/filter_gdb.in +++ b/gdbserver_tests/filter_gdb.in @@ -18,6 +18,9 @@ cat > $PATTERNFILE <<EOF # delete messages produced by valgrind python code loading. /Loaded.*valgrind-monitor.py$/d /Type "help valgrind" for more info\.$/d +/warning: Missing auto-load script.*/d +/of file .*vgpreload.*so.*/d +/Use.*info auto-load python-scripts.*/d # delete messages produced when GDB auto-load denies loading python code. # Note that the first pattern is also present in filter_vgdb.in diff --git a/gdbserver_tests/filter_vgdb.in b/gdbserver_tests/filter_vgdb.in index fb5c484bf..13e9a344e 100755 --- a/gdbserver_tests/filter_vgdb.in +++ b/gdbserver_tests/filter_vgdb.in @@ -32,6 +32,9 @@ $SED -e '/_exit.c: Inappropriate ioctl for device\./d' | # filter python loading denied error message (see also filter_gdb.in) $SED -e '/warning: File .*valgrind-monitor.py.*declined.*/d' | +$SED -e '/warning: Missing auto-load script.*/d' | +$SED -e '/of file .*vgpreload.*so.*/d' | +$SED -e '/Use.*info auto-load python-scripts.*/d' | # and filter out any remaining empty lines $SED -e '/^$/d' Does that look correct? Cheers, Mark |