|
|
|
# This valgrind suppressions file includes known Valgrind warnings in our
|
|
|
|
# dependencies that cannot be fixed in-tree.
|
|
|
|
#
|
|
|
|
# Example use:
|
|
|
|
# $ 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
|
|
|
|
#
|
|
|
|
# To create suppressions for found issues, use the --gen-suppressions=all option:
|
|
|
|
# $ valgrind --suppressions=contrib/valgrind.supp --leak-check=full \
|
|
|
|
# --show-leak-kinds=all --gen-suppressions=all --show-reachable=yes \
|
|
|
|
# --error-limit=no src/test/test_bitcoin
|
|
|
|
#
|
|
|
|
# Note that suppressions may depend on OS and/or library versions.
|
|
|
|
# Tested on:
|
|
|
|
# * aarch64 (Ubuntu 22.04 system libs, clang, without gui)
|
|
|
|
# * x86_64 (Ubuntu 22.04 system libs, clang, without gui)
|
|
|
|
{
|
|
|
|
Suppress libstdc++ warning - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65434
|
|
|
|
Memcheck:Leak
|
|
|
|
match-leak-kinds: reachable
|
|
|
|
fun:malloc
|
|
|
|
obj:*/libstdc++.*
|
|
|
|
fun:call_init.part.0
|
|
|
|
fun:call_init
|
|
|
|
fun:_dl_init
|
|
|
|
obj:*/ld-*.so
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress libdb warning - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=662917
|
|
|
|
Memcheck:Cond
|
|
|
|
obj:*/libdb_cxx-*.so
|
|
|
|
fun:__log_put
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress libdb warning
|
|
|
|
Memcheck:Param
|
|
|
|
pwrite64(buf)
|
|
|
|
fun:pwrite
|
|
|
|
fun:__os_io
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress libdb warning
|
|
|
|
Memcheck:Cond
|
|
|
|
fun:__log_putr.isra.1
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress libdb warning
|
|
|
|
Memcheck:Param
|
|
|
|
pwrite64(buf)
|
|
|
|
...
|
|
|
|
obj:*/libdb_cxx-*.so
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress uninitialized bytes warning in compat code
|
|
|
|
Memcheck:Param
|
|
|
|
ioctl(TCSET{S,SW,SF})
|
|
|
|
fun:tcsetattr
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress libdb warning
|
|
|
|
Memcheck:Leak
|
|
|
|
fun:malloc
|
|
|
|
...
|
|
|
|
obj:*/libdb_cxx-*.so
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress leaks on shutdown
|
|
|
|
Memcheck:Leak
|
|
|
|
...
|
|
|
|
fun:_Z8ShutdownR11NodeContext
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Ignore GUI warning
|
|
|
|
Memcheck:Leak
|
|
|
|
...
|
|
|
|
obj:/usr/lib64/libgdk-3.so.0.2404.7
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress leveldb leak
|
|
|
|
Memcheck:Leak
|
|
|
|
match-leak-kinds: reachable
|
|
|
|
fun:_Znwm
|
|
|
|
...
|
|
|
|
fun:_ZN7leveldb6DBImpl14BackgroundCallEv
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress leveldb leak
|
|
|
|
Memcheck:Leak
|
|
|
|
fun:_Znwm
|
|
|
|
...
|
|
|
|
fun:GetCoin
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress LogInstance still reachable memory warning
|
|
|
|
Memcheck:Leak
|
|
|
|
match-leak-kinds: reachable
|
|
|
|
fun:_Znwm
|
|
|
|
fun:_Z11LogInstancev
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress secp256k1_context_create still reachable memory warning
|
|
|
|
Memcheck:Leak
|
|
|
|
match-leak-kinds: reachable
|
|
|
|
fun:malloc
|
|
|
|
...
|
|
|
|
fun:secp256k1_context_create
|
|
|
|
}
|
|
|
|
{
|
|
|
|
Suppress BCLog::Logger::StartLogging() still reachable memory warning
|
|
|
|
Memcheck:Leak
|
|
|
|
match-leak-kinds: reachable
|
|
|
|
fun:malloc
|
|
|
|
...
|
|
|
|
fun:_ZN5BCLog6Logger12StartLoggingEv
|
|
|
|
}
|