
On Fri, Jan 30, 2009 at 11:41:16AM +0000, Daniel P. Berrange wrote:
The LXC driver makes use of new clone flags for creating containers. It creates a dummy container which immediately exits in order to test for availabilty of this feature in the kernel. Unfortunately valgrind has no knowledge of these new clone flags, gets very very unhappy and then reports bogus memory leaks, bogus illegal instructions, and then often SEGV's itself. Not cool. While obviously valgrind needs fixing, I looked at its code, and it doesn't seem easy, so this patch adds a quick check for a LD_PRELOAD environemnt variable which contains a library whose name contains 'vgpreload'. If it sees this, LXC driver totally disables itself. This lets me reliably valgrind the libvirtd daemon again.
Okay, this is a workaround hack, I'm fine applying it but we should log this somewhere (TODO ?) to think about cleaning this up when valgrind get fixed. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/