|
From: Philippe W. <phi...@sk...> - 2023-01-11 10:50:41
|
On Tue, 2023-01-10 at 14:40 +0100, Mark Wielaard wrote: > 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? Yes, the approach looks correct to me (but I did not test the patch). I think it would be good to put a specific comment for the new filter patterns to indicate that these are to remove the loading error messages when running in a .vg_in_place/not installed setup. because a missing file looks frightening :). Thanks Philippe |