Add documentation on running clients with Valgrind

Quick documentation on how Valgrind can be run in clients without
triggering false positives.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55933
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
This commit is contained in:
Arun Raghavan 2012-10-12 22:04:11 +05:30 committed by Simon McVittie
parent d9f470a7f4
commit ad6e1b0420
1 changed files with 24 additions and 0 deletions

24
README.valgrind Normal file
View File

@ -0,0 +1,24 @@
Running D-Bus clients with Valgrind
====
When running programs using libdbus in Valgrind, some special care needs to be
taken so as to avoid incorrect detection of leaks in libdbus. To avoid these
false positives, do the following:
* Grab a copy of the D-Bus source code
* Run configure with the --enable-developer and --with-valgrind options
* Run make
* Either make sure your code calls dbus_shutdown() (at least while running in
Valgrind) or set DBUS_MESSAGE_CACHE=0 in your environment
* Run Valgrind on your program with the /path/to/dbus/source/dbus/.libs in your
LD_LIBRARY_PATH
Your Valgrind log should now be free of any (spurious) libdbus-related leaks.
For the curious, the DBUS_MESSAGE_CACHE=0 is required because by
default, libdbus uses a recyclable pool of message structs. These help
performance a bit.