We had a chat about this on IRC, and I'm not very happy about any
patch that requires a special ./configure flag. We should find a way
to enable this functionality for everyone in all builds, without
impacting anyone who doesn't want to use it.
I think:
- remove the --enable-valgrind-daemon, for reasons outlined above
(I posted a patch to do that yesterday)
- have a new backend setting, just like you proposed, except it
wouldn't be conditional on any configure setting
- when (1) the backend setting is true and (2) valgrind is present
in the appliance, the init script should run `valgrind guestfsd'
- output from valgrind would go to stderr, where it is picked up by
the normal verbose output (so we don't need a special socket)
This doesn't handle the guestfsd shutdown case (but nor does the
current code, which is both racy on shutdown and introduces separate
shutdown paths for --enable-valgrind-daemon and ordinary
configurations). But we can punt on that until later. The above
would detect all memory errors except for memory leaks.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top