common/gst.supp: add suppressions from Andy's AMD64 Ubuntu machine
[platform/upstream/gst-common.git] / gst.supp
1 ### this file contains suppressions for valgrind when running
2 ### the gstreamer unit tests
3 ### it might be useful for wider use as well
4
5
6 ### glibc suppressions
7
8 # glibc does not deallocate thread-local storage
9
10 {
11    <tls>
12    Memcheck:Leak
13    fun:calloc
14    fun:_dl_allocate_tls
15    fun:pthread_create@@*
16 }
17
18 {
19    <pthread strstr>
20    Memcheck:Cond
21    fun:strstr
22    fun:__pthread_initialize_minimal
23    obj:/lib/libpthread-*.so
24    obj:/lib/libpthread-*.so
25    fun:call_init
26    fun:_dl_init
27    obj:/lib/ld-*.so
28 }
29
30 # a thread-related free problem in glibc from Edgard
31 {
32    __libc_freeres_rw_acess
33    Memcheck:Addr4
34    obj:*
35    obj:*
36    obj:*
37    obj:*
38    obj:*
39    fun:__libc_freeres
40 }
41
42 {
43    <a conditional jump on wim's debian>
44    Memcheck:Cond
45    obj:/lib/ld-2.3.5.so
46    obj:/lib/ld-2.3.5.so
47    obj:/lib/ld-2.3.5.so
48    obj:/lib/ld-2.3.5.so
49    obj:/lib/ld-2.3.5.so
50 }
51
52 # g_module_open-related problems
53 {
54    <g_module_open on wim's debian>
55    Memcheck:Cond
56    obj:/lib/ld-2.3.5.so
57    obj:/lib/ld-2.3.5.so
58    obj:/lib/ld-2.3.5.so
59    fun:do_sym
60    fun:_dl_sym
61    fun:dlsym_doit
62    obj:/lib/ld-2.3.5.so
63    fun:_dlerror_run
64    fun:dlsym
65    fun:g_module_symbol
66    fun:g_module_open
67    fun:gst_plugin_load_file
68 }
69
70 {
71    <g_module_open on wim's debian>
72    Memcheck:Cond
73    obj:/lib/ld-2.3.5.so
74    obj:/lib/ld-2.3.5.so
75    obj:/lib/ld-2.3.5.so
76    fun:dl_open_worker
77    obj:/lib/ld-2.3.5.so
78    fun:_dl_open
79    fun:dlopen_doit
80    obj:/lib/ld-2.3.5.so
81    fun:_dlerror_run
82    fun:dlopen@@GLIBC_2.1
83    fun:g_module_open
84    fun:gst_plugin_load_file
85 }
86 {
87    <g_module_open on wim's debian>
88    Memcheck:Cond
89    obj:/lib/ld-2.3.5.so
90    fun:dl_open_worker
91    obj:/lib/ld-2.3.5.so
92    fun:_dl_open
93    fun:dlopen_doit
94    obj:/lib/ld-2.3.5.so
95    fun:_dlerror_run
96    fun:dlopen@@GLIBC_2.1
97    fun:g_module_open
98    fun:gst_plugin_load_file
99    fun:gst_plugin_load_by_name
100    fun:gst_plugin_feature_load
101 }
102
103 {
104    <leak on wim's debian in g_module_open>
105    Memcheck:Leak
106    fun:malloc
107    obj:/lib/ld-2.3.5.so
108    fun:dl_open_worker
109    obj:/lib/ld-2.3.5.so
110    fun:_dl_open
111    fun:dlopen_doit
112    obj:/lib/ld-2.3.5.so
113    fun:_dlerror_run
114    fun:dlopen@@GLIBC_2.1
115    fun:g_module_open
116    fun:gst_plugin_load_file
117    fun:gst_plugin_load_by_name
118 }
119
120 {
121    <invalid read on wim's debian>
122    Memcheck:Addr4
123    obj:/lib/ld-2.3.5.so
124    obj:/lib/ld-2.3.5.so
125    obj:/lib/ld-2.3.5.so
126    obj:/lib/ld-2.3.5.so
127    obj:/lib/ld-2.3.5.so
128    obj:/lib/ld-2.3.5.so
129    obj:/lib/ld-2.3.5.so
130    fun:dl_open_worker
131    obj:/lib/ld-2.3.5.so
132    fun:_dl_open
133    fun:dlopen_doit
134    obj:/lib/ld-2.3.5.so
135 }
136
137 {
138    <invalid read on wim's debian>
139    Memcheck:Addr4
140    obj:/lib/ld-2.3.5.so
141    obj:/lib/ld-2.3.5.so
142    obj:/lib/ld-2.3.5.so
143    obj:/lib/ld-2.3.5.so
144    obj:/lib/ld-2.3.5.so
145    obj:/lib/ld-2.3.5.so
146    fun:dl_open_worker
147    obj:/lib/ld-2.3.5.so
148    fun:_dl_open
149    fun:dlopen_doit
150    obj:/lib/ld-2.3.5.so
151    fun:_dlerror_run
152 }
153
154 {
155    <futex on Andy's 64-bit ubuntu>
156    Memcheck:Param
157    futex(uaddr2)
158    fun:pthread_once
159    obj:/lib/libc-2.3.5.so
160    obj:/lib/libc-2.3.5.so
161    fun:mbsnrtowcs
162    fun:vfprintf
163    fun:vsprintf
164    fun:sprintf
165    obj:/lib/libc-2.3.5.so
166    fun:tmpfile
167    fun:setup_pipe
168    fun:setup_messaging_with_key
169    fun:setup_messaging
170 }
171
172 # valgrind doesn't allow me to specify a suppression for Addr1, Addr2, Addr4
173 # as Addr*, so 3 copies for that; and then 2 of each for that pesky memcpy
174 {
175    <Invalid read of size 1, 2, 4 on thomas's FC4>
176    Memcheck:Addr1
177    fun:_dl_signal_error
178    fun:_dl_map_object_deps
179    fun:dl_open_worker
180    fun:_dl_catch_error
181    fun:_dl_open
182    fun:dlopen_doit
183    fun:_dl_catch_error
184    fun:_dlerror_run
185    fun:dlopen@@GLIBC_2.1
186    fun:g_module_open
187 }
188
189 {
190    <Invalid read of size 1, 2, 4 on thomas's FC4>
191    Memcheck:Addr2
192    fun:_dl_signal_error
193    fun:_dl_map_object_deps
194    fun:dl_open_worker
195    fun:_dl_catch_error
196    fun:_dl_open
197    fun:dlopen_doit
198    fun:_dl_catch_error
199    fun:_dlerror_run
200    fun:dlopen@@GLIBC_2.1
201    fun:g_module_open
202 }
203 {
204    <Invalid read of size 1, 2, 4 on thomas's FC4>
205    Memcheck:Addr4
206    fun:_dl_signal_error
207    fun:_dl_map_object_deps
208    fun:dl_open_worker
209    fun:_dl_catch_error
210    fun:_dl_open
211    fun:dlopen_doit
212    fun:_dl_catch_error
213    fun:_dlerror_run
214    fun:dlopen@@GLIBC_2.1
215    fun:g_module_open
216 }
217
218 {
219    <Invalid read of size 1, 2, 4 on thomas's FC4>
220    Memcheck:Addr1
221    fun:memcpy
222    fun:_dl_signal_error
223    fun:_dl_map_object_deps
224    fun:dl_open_worker
225    fun:_dl_catch_error
226    fun:_dl_open
227    fun:dlopen_doit
228    fun:_dl_catch_error
229    fun:_dlerror_run
230    fun:dlopen@@GLIBC_2.1
231    fun:g_module_open
232 }
233
234 {
235    <Invalid read of size 1, 2, 4 on thomas's FC4>
236    Memcheck:Addr2
237    fun:memcpy
238    fun:_dl_signal_error
239    fun:_dl_map_object_deps
240    fun:dl_open_worker
241    fun:_dl_catch_error
242    fun:_dl_open
243    fun:dlopen_doit
244    fun:_dl_catch_error
245    fun:_dlerror_run
246    fun:dlopen@@GLIBC_2.1
247    fun:g_module_open
248 }
249 {
250    <Invalid read of size 1, 2, 4 on thomas's FC4>
251    Memcheck:Addr4
252    fun:memcpy
253    fun:_dl_signal_error
254    fun:_dl_map_object_deps
255    fun:dl_open_worker
256    fun:_dl_catch_error
257    fun:_dl_open
258    fun:dlopen_doit
259    fun:_dl_catch_error
260    fun:_dlerror_run
261    fun:dlopen@@GLIBC_2.1
262    fun:g_module_open
263 }
264
265 {
266    <Addr8 on Andy's AMD64 ubuntu in dl_open>
267    Memcheck:Addr8
268    obj:/lib/ld-2.3.5.so
269    obj:/lib/ld-2.3.5.so
270    obj:/lib/ld-2.3.5.so
271    obj:/lib/ld-2.3.5.so
272    obj:/lib/ld-2.3.5.so
273    obj:/lib/ld-2.3.5.so
274    obj:/lib/ld-2.3.5.so
275    obj:/lib/libc-2.3.5.so
276    obj:/lib/ld-2.3.5.so
277    fun:_dl_open
278    obj:/lib/libdl-2.3.5.so
279    obj:/lib/ld-2.3.5.so
280 }
281
282 {
283    <Conditional jump on Andy's AMD64 ubuntu>
284    Memcheck:Cond
285    obj:/lib/ld-2.3.5.so
286    obj:/lib/libc-2.3.5.so
287    obj:/lib/ld-2.3.5.so
288    fun:_dl_open
289    obj:/lib/libdl-2.3.5.so
290    obj:/lib/ld-2.3.5.so
291    obj:/lib/libdl-2.3.5.so
292    fun:dlopen
293    fun:g_module_open
294    fun:gst_plugin_load_file
295    fun:gst_plugin_load_by_name
296    fun:gst_plugin_feature_load
297 }
298
299
300
301 ### glib suppressions
302
303 {
304    <g_type_init malloc>
305    Memcheck:Leak
306    fun:malloc
307    fun:g_malloc
308    fun:g_strdup
309    fun:g_quark_from_string
310    obj:*
311    obj:*
312    fun:g_type_register_fundamental
313    obj:*
314    fun:g_type_init_with_debug_flags
315    fun:g_type_init
316    fun:init_pre
317 }
318
319 {
320    <g_type_init calloc>
321    Memcheck:Leak
322    fun:calloc
323    fun:g_malloc0
324    obj:*
325    obj:*
326    fun:g_type_register_fundamental
327 }
328
329 {
330    <g_type_init calloc 2>
331    Memcheck:Leak
332    fun:calloc
333    fun:g_malloc0
334    obj:*
335    obj:*
336    fun:g_type_init_with_debug_flags
337 }
338
339 ### GStreamer suppressions
340
341 # ds is saying he's rewriting the registry anyway
342 {
343    <registry>
344    Memcheck:Leak
345    fun:malloc
346    fun:g_malloc
347    fun:g_strdup
348    fun:read_string
349    fun:load_plugin
350    fun:gst_xml_registry_load
351    fun:gst_registry_load
352    fun:_registry_load_func
353    fun:g_list_foreach
354    fun:gst_registry_pool_load_all
355    fun:init_post
356    fun:init_popt_callback
357 }
358
359 #pthread memleaks
360
361 {
362    Thread creation leak
363    Memcheck:Leak
364    fun:calloc
365    fun:allocate_dtv
366    fun:_dl_allocate*
367    fun:_dl_allocate*
368    fun:__pthread_initialize_minimal
369 }
370
371 {
372    Thread management leak
373    Memcheck:Leak
374    fun:calloc
375    fun:allocate_dtv
376    fun:_dl_allocate*
377    fun:_dl_allocate*
378    fun:__pthread_*
379 }
380
381 {
382    Thread management leak 2
383    Memcheck:Leak
384    fun:memalign
385    fun:_dl_allocate*
386    fun:_dl_allocate*
387    fun:__pthread_*
388 }
389
390 {
391    pthread_create Syscall param write(buf) points to uninitialised byte(s)
392    Memcheck:Param
393    write(buf)
394    fun:pthread_create@@GLIBC_2.2.5
395    fun:g_thread_create*
396
397 }
398
399 # nss_parse_* memleak (used by g_option_context_parse)
400 {
401    nss_parse_* memleak
402    Memcheck:Leak
403    fun:malloc
404    fun:nss_parse_service_list
405    fun:__nss_database_lookup
406 }