aboutsummaryrefslogtreecommitdiff
path: root/contrib/valgrind.supp
blob: d6856b42749ed7663864aebbbe3b1dda6d0a7d44 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# 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
}