Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
RegionSnap: only use pointers to regions for sake of simplicity
[simgrid.git] / tools / simgrid.supp
1 # Valgrind suppressions for stuff that we cannot control
2
3 # Memory leaks in standard tools (e.g. dash, tail, or sort)
4 {
5    Memory leak in /bin tools
6    Memcheck:Leak
7    ...
8    obj:/bin/*
9 }
10
11 {
12    Memory leak in /usr/bin tools
13    Memcheck:Leak
14    ...
15    obj:/usr/bin/*
16 }
17
18 {
19    Memory leak in cmake
20    Memcheck:Leak
21    match-leak-kinds:reachable
22    ...
23    fun:_ZN4Json5Value13nullSingletonEv
24    obj:*/libjsoncpp.so*
25    ...
26    fun:_dl_init
27 }
28
29 # There's a constant leak of 56 bytes in the depths of libc which
30 # manifests, for example, when using backtrace()
31 {
32    Memory leak in libc/dlopen with -pthread
33    Memcheck:Leak
34    fun:malloc
35    fun:_dl_map_object_deps
36    fun:dl_open_worker
37    fun:_dl_catch_error
38    fun:_dl_open
39    fun:do_dlopen
40    fun:_dl_catch_error
41    fun:dlerror_run
42    fun:__libc_dlopen_mode
43 }
44
45 # Another problem in glibc, where makecontext does not reset the EBP register,
46 # and backtrace goes too far when walking up the stack frames
47 {
48    Invalid read in backtrace, called after makecontext
49    Memcheck:Addr4
50    fun:backtrace
51    ...
52    fun:makecontext
53 }
54
55 #There seems to be an issue with libc using an uninitialized value somewhere in dlopen
56 {
57    Invalid read in dl_start
58    Memcheck:Cond
59    fun:index
60    fun:expand_dynamic_string_token
61    ...
62    fun:_dl_start
63 }
64
65 # 72704 bytes leak from GCC >5.1 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64535
66 {
67    Memory leak in dl_init
68    Memcheck:Leak
69    match-leak-kinds:reachable
70    fun:malloc
71    obj:/usr/lib/*/libstdc++.so.*
72    fun:call_init.part.0
73    ...
74    fun:_dl_init
75 }
76
77 #Ignore leaks in SMPI sample codes
78 {
79    Leaks in SMPI sample codes
80    Memcheck:Leak
81    match-leak-kinds: all
82    fun:malloc
83    fun:smpi_simulated_main_
84 }
85
86 #SMPI leaks the dlopen handle used to load the program
87 {
88    dlopen handle leaks (1/3)
89    Memcheck:Leak
90    match-leak-kinds:reachable
91    fun:malloc
92    ...
93    fun:dlopen@@GLIBC_*
94 }
95
96 {
97    dlopen handle leaks (2/3)
98    Memcheck:Leak
99    match-leak-kinds:reachable
100    fun:calloc
101    ...
102    fun:dlopen@@GLIBC_*
103 }
104
105 {
106    dlopen handle leaks (3/3)
107    Memcheck:Leak
108    match-leak-kinds:reachable
109    fun:realloc
110    ...
111    fun:dlopen@@GLIBC_*
112 }
113
114 # Memory leaks appearing to be in libcgraph.  They can be seen with the
115 # following simple program:
116 # ,----
117 # | #include <stdio.h>
118 # | #include <graphviz/cgraph.h>
119 # | int main(int argc, char *argv[])
120 # | {
121 # |     if (argc == 1) {
122 # |         printf("Usage: %s <dotfile>\n", argv[0]);
123 # |         return 1;
124 # |     }
125 # |     Agraph_t *g;
126 # |     FILE *inf = fopen(argv[1], "r");
127 # |     g = agread(inf, 0);
128 # |     fclose(inf);
129 # |     agclose(g);
130 # |     return 0;
131 # | }
132 # `----
133 {
134    Memory leak in libcgraph (1/3)
135    Memcheck:Leak
136    fun:malloc
137    ...
138    obj:*/libcgraph.so*
139    fun:aaglex
140    fun:aagparse
141    fun:agconcat
142 }
143 {
144    Memory leak in libcgraph (2/3)
145    Memcheck:Leak
146    fun:calloc
147    ...
148    obj:*/libcgraph.so*
149    fun:aagparse
150    fun:agconcat
151 }
152 {
153    Memory leak in libcgraph (3/3)
154    Memcheck:Leak
155    fun:malloc
156    ...
157    fun:agnode
158    obj:*/libcgraph.so*
159    fun:aagparse
160    fun:agconcat
161 }
162
163 # We're not interested by memory leaks in the Lua interpreter
164 {
165    Memory leak in lua
166    Memcheck:Leak
167    ...
168    fun:luaD_precall
169 }
170
171 # libunwind seems to be using msync poorly, thus triggering these
172 # https://github.com/JuliaLang/julia/issues/4533
173 {
174    msync unwind
175    Memcheck:Param
176    msync(start)
177    ...
178    obj:*/libpthread*.so
179    ...
180 }
181
182 {
183    ignore unwind cruft
184    Memcheck:Param
185    rt_sigprocmask(set)
186    ...
187    obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
188    ...
189 }
190 {
191    ignore unwind cruft
192    Memcheck:Param
193    msync(start)
194    ...
195    obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
196    ...
197 }
198
199 {
200    ignore unwind invalid reads
201    Memcheck:Addr8
202    fun:_Ux86_64_setcontext
203 }
204
205 # Java cruft
206 {
207   JavaCruft 1
208   Memcheck:Addr4
209   ...
210   fun:_ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread
211   fun:JVM_DoPrivileged
212   ...
213 }
214 {
215    JavaCruft 2
216    Memcheck:Cond
217    ...
218    fun:_ZN13CompileBroker25invoke_compiler_on_methodEP11CompileTask
219    ...
220 }
221
222 {
223    Somewhere within the Java conditions and monitors
224    Memcheck:Cond
225    fun:MarsagliaXORV
226    ...
227 }
228
229 #ignore python cruft
230 {
231    ignore python cruft 1
232    Memcheck:Cond
233    ...
234    obj:/usr/bin/python*
235 }
236
237 {
238    ignore python cruft 2
239    Memcheck:Addr4
240    ...
241    obj:/usr/bin/python*
242 }
243
244 {
245    ignore python cruft 3
246    Memcheck:Value8
247    ...
248    obj:/usr/bin/python*
249 }