diff options
author | practicalswift <practicalswift@users.noreply.github.com> | 2017-11-12 17:07:35 +0100 |
---|---|---|
committer | practicalswift <practicalswift@users.noreply.github.com> | 2017-11-12 17:11:47 +0100 |
commit | 4a426d89002034ed1c127624cae95b4a7f540dd1 (patch) | |
tree | 049e310c82e9ca462c8a44c6d17a15f58e20c723 | |
parent | 84e2462ccf0af7e48c8ac7cbea6a37a077af0e11 (diff) |
Add note about Valgrind suppressions file in developer-notes.md
-rw-r--r-- | doc/developer-notes.md | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/doc/developer-notes.md b/doc/developer-notes.md index d783a7a8ae..de0026a0a5 100644 --- a/doc/developer-notes.md +++ b/doc/developer-notes.md @@ -165,6 +165,21 @@ can be very difficult to track down. Compiling with -DDEBUG_LOCKORDER (configure CXXFLAGS="-DDEBUG_LOCKORDER -g") inserts run-time checks to keep track of which locks are held, and adds warnings to the debug.log file if inconsistencies are detected. +**Valgrind suppressions file** + +Valgrind is a programming tool for memory debugging, memory leak detection, and +profiling. The repo contains a Valgrind suppressions file +([`valgrind.supp`](https://github.com/bitcoin/bitcoin/blob/master/contrib/valgrind.supp)) +which includes known Valgrind warnings in our dependencies that cannot be fixed +in-tree. Example use: + +```shell +$ valgrind --suppressions=contrib/valgrind.supp src/test/test_bitcoin +$ valgrind --suppressions=contrib/valgrind.supp --leak-check=full \ + --show-leak-kinds=all src/test/test_bitcoin --log_level=test_suite +$ valgrind -v --leak-check=full src/bitcoind -printtoconsole +``` + Locking/mutex usage notes ------------------------- |