[Libguestfs] [PATCH nbdkit 2/4] valgrind: Add --show-leak-kinds=all and comprehensive list of suppressions.

Richard W.M. Jones rjones at redhat.com
Mon Dec 3 19:01:06 UTC 2018


On Mon, Dec 03, 2018 at 12:55:58PM -0600, Eric Blake wrote:
> A GNU make-ism - but you already mention requiring GNU make in
> README. Should we make ./configure error out hard if $MAKE is not
> GNU Make, rather than risking someone getting 80% though a build on
> BSD make and then choking when it gets here?

Yes that would be a good idea as a separate patch.  I'm always annoyed
whenever I use *BSD and type "make" instead of "gmake".  In fact I
have MAKEFLAGS=j<N> set in my environment and BSD make gives an error
about an unknown parameter which completely breaks ./configure too ...

> >+++ b/wrapper.c
> >@@ -130,8 +130,9 @@ main (int argc, char *argv[])
> >      passthru (VALGRIND);
> >      passthru ("--vgdb=no");
> >      passthru ("--leak-check=full");
> >+    passthru ("--show-leak-kinds=all");
> 
> I could understand this if we were implementing a library and wanted
> to make it easier for some other user to call our library shutdown
> to reclaim all memory that we otherwise stashed in globals - but
> when we are just a standalone app, do we really need to worry about
> memory still reachable in globals, as that's not a true leak?

Well it was a tidiness issue really.  The only actual error this
revealed was the memory leak in the bitmap patch
(https://www.redhat.com/archives/libguestfs/2018-December/msg00007.html),
and a lot of false positives which I worked my way through with a list
of suppressions.

> >      passthru ("--error-exitcode=119");
> >-    passthru_format ("--suppressions=%s/valgrind-suppressions", srcdir);
> >+    passthru_format ("--suppressions=%s/valgrind/suppressions", builddir);
> 
> Is this still right under VPATH?

I believe so ...?  Note this is the generated/concatenated file which
is why I changed srcdir to builddir.

Rich.

> >      passthru ("--trace-children=no");
> >      passthru ("--run-libc-freeres=no");
> >      passthru ("--num-callers=20");
> >
> 
> -- 
> Eric Blake, Principal Software Engineer
> Red Hat, Inc.           +1-919-301-3266
> Virtualization:  qemu.org | libvirt.org

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW




More information about the Libguestfs mailing list