aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorpracticalswift <practicalswift@users.noreply.github.com>2017-11-12 17:07:35 +0100
committerpracticalswift <practicalswift@users.noreply.github.com>2017-11-12 17:11:47 +0100
commit4a426d89002034ed1c127624cae95b4a7f540dd1 (patch)
tree049e310c82e9ca462c8a44c6d17a15f58e20c723 /doc
parent84e2462ccf0af7e48c8ac7cbea6a37a077af0e11 (diff)
downloadbitcoin-4a426d89002034ed1c127624cae95b4a7f540dd1.tar.xz
Add note about Valgrind suppressions file in developer-notes.md
Diffstat (limited to 'doc')
-rw-r--r--doc/developer-notes.md15
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
-------------------------