Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Please valgrind.
[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 problem in glibc, where makecontext does not reset the EBP register,
30 # and backtrace goes too far when walking up the stack frames
31 {
32    Invalid read in backtrace, called after makecontext
33    Memcheck:Addr4
34    fun:backtrace
35    ...
36    fun:makecontext
37 }
38
39 #There seems to be an issue with libc using an uninitialized value somewhere in dlopen
40 {
41    Invalid read in dl_start
42    Memcheck:Cond
43    fun:index
44    fun:expand_dynamic_string_token
45    ...
46    fun:_dl_start
47 }
48
49 # There are memory leaks when using dlopen
50 {
51    Memory leak in libc/dlopen
52    Memcheck:Leak
53    ...
54    fun:_dlerror_run
55 }
56
57 # 72704 bytes leak from GCC >5.1 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64535
58 {
59    Memory leak in dl_init
60    Memcheck:Leak
61    match-leak-kinds:reachable
62    fun:malloc
63    obj:/usr/lib/*/libstdc++.so.*
64    fun:call_init.part.0
65    ...
66    fun:_dl_init
67 }
68
69 {
70    Leaks in test-help-version and test-help-logs (early call to exit())
71    Memcheck:Leak
72    match-leak-kinds: reachable
73    fun:_Znwm
74    fun:_ZN7simgrid3s4u6EngineC1EPiPPc
75    fun:main
76    ...
77    obj:*/basic-parsing-test
78 }
79
80 #Ignore leaks in SMPI sample codes
81 {
82    Leaks in SMPI sample codes
83    Memcheck:Leak
84    match-leak-kinds: all
85    fun:malloc
86    fun:smpi_simulated_main_
87 }
88
89 #This test has an intentional leak
90 {
91    Intentional leak in SMPI sample codes
92    Memcheck:Leak
93    match-leak-kinds: all
94    fun:MPI_Comm_dup
95    obj:coll-allreduce-with-leaks*
96 }
97
98 #Memory leaks appearing to be in libcgraph.  They can be seen with the
99 # following simple program:
100 # ,----
101 # | #include <stdio.h>
102 # | #include <graphviz/cgraph.h>
103 # | int main(int argc, char *argv[])
104 # | {
105 # |     if (argc == 1) {
106 # |         printf("Usage: %s <dotfile>\n", argv[0]);
107 # |         return 1;
108 # |     }
109 # |     Agraph_t *g;
110 # |     FILE *inf = fopen(argv[1], "r");
111 # |     g = agread(inf, 0);
112 # |     fclose(inf);
113 # |     agclose(g);
114 # |     return 0;
115 # | }
116 # `----
117 {
118    Memory leak in libcgraph (1/3)
119    Memcheck:Leak
120    fun:malloc
121    ...
122    fun:aaglex
123    fun:aagparse
124    fun:agconcat
125 }
126 {
127    Memory leak in libcgraph (2/3)
128    Memcheck:Leak
129    fun:calloc
130    ...
131    obj:*/libcgraph.so*
132    fun:aagparse
133    fun:agconcat
134 }
135 {
136    Memory leak in libcgraph (3/3)
137    Memcheck:Leak
138    fun:malloc
139    ...
140    fun:agnode
141    obj:*/libcgraph.so*
142    fun:aagparse
143    fun:agconcat
144 }
145
146 # libunwind seems to be using msync poorly, thus triggering these
147 # https://github.com/JuliaLang/julia/issues/4533
148 {
149    msync unwind
150    Memcheck:Param
151    msync(start)
152    ...
153    obj:*/libpthread*.so
154    ...
155 }
156
157 {
158    ignore unwind cruft
159    Memcheck:Param
160    rt_sigprocmask(set)
161    ...
162    obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
163    ...
164 }
165 {
166    ignore unwind cruft
167    Memcheck:Param
168    msync(start)
169    ...
170    obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
171    ...
172 }
173 {
174    ignore unwind cruft
175    Memcheck:Param
176    write(buf)
177    ...
178    fun:_ULx86_64_step
179    obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
180 }
181
182 {
183    ignore unwind invalid reads
184    Memcheck:Addr8
185    fun:_Ux86_64_setcontext
186 }
187
188 # Java cruft
189 {
190   JavaCruft 1
191   Memcheck:Addr4
192   ...
193   fun:_ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread
194   fun:JVM_DoPrivileged
195   ...
196 }
197 {
198    JavaCruft 2
199    Memcheck:Cond
200    ...
201    fun:_ZN13CompileBroker25invoke_compiler_on_methodEP11CompileTask
202    ...
203 }
204
205 {
206    Somewhere within the Java conditions and monitors
207    Memcheck:Cond
208    fun:MarsagliaXORV
209    ...
210 }
211
212 #ignore python cruft
213 {
214    ignore python cruft 1
215    Memcheck:Cond
216    ...
217    obj:/usr/bin/python*
218 }
219
220 {
221    ignore python cruft 2
222    Memcheck:Addr4
223    ...
224    obj:/usr/bin/python*
225 }
226
227 {
228    ignore python cruft 3
229    Memcheck:Value8
230    ...
231    obj:/usr/bin/python*
232 }