Add yet-another dlopen-related suppression
[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 ### syscall suppressions
6
7 {
8    <clone on Wim's Debian>
9    Memcheck:Param
10    clone(parent_tidptr)
11    fun:clone
12    fun:clone
13 }
14
15 {
16    <clone on Wim's Debian>
17    Memcheck:Param
18    clone(child_tidptr)
19    fun:clone
20    fun:clone
21 }
22
23 {
24    <clone on Wim's Debian>
25    Memcheck:Param
26    clone(tlsinfo)
27    fun:clone
28    fun:clone
29 }
30
31 ### glibc suppressions
32
33 {
34    <conditional jump on wim's debian 2/2/06>
35    Memcheck:Cond
36    obj:/lib/ld-2.3.*.so
37    fun:dl_open_worker
38    obj:/lib/ld-2.3.*.so
39    fun:_dl_open
40    fun:dlopen_doit
41    obj:/lib/ld-2.3.*.so
42    fun:_dlerror_run
43    fun:dlopen@@GLIBC_2.1
44    fun:g_module_open
45    fun:gst_plugin_load_file
46    fun:gst_plugin_load
47    fun:test_load_coreelements
48    fun:srunner_run_all
49    fun:main
50 }
51
52 # glibc does not deallocate thread-local storage
53
54 {
55    <tls>
56    Memcheck:Leak
57    fun:calloc
58    fun:_dl_allocate_tls
59    fun:pthread_create@@*
60 }
61
62 # I get an extra stack entry on x86/dapper
63 {
64    <tls>
65    Memcheck:Leak
66    fun:calloc
67    obj:/lib/ld-2.3.*.so
68    fun:_dl_allocate_tls
69    fun:pthread_create@@*
70 }
71
72
73 {
74    <pthread strstr>
75    Memcheck:Cond
76    fun:strstr
77    fun:__pthread_initialize_minimal
78    obj:/lib/libpthread-*.so
79    obj:/lib/libpthread-*.so
80    fun:call_init
81    fun:_dl_init
82    obj:/lib/ld-*.so
83 }
84
85 # a thread-related free problem in glibc from Edgard
86 {
87    __libc_freeres_rw_acess
88    Memcheck:Addr4
89    obj:*
90    obj:*
91    obj:*
92    obj:*
93    obj:*
94    fun:__libc_freeres
95 }
96
97 {
98    <a conditional jump on wim's debian>
99    Memcheck:Cond
100    obj:/lib/ld-2.3.*.so
101    obj:/lib/ld-2.3.*.so
102    obj:/lib/ld-2.3.*.so
103    obj:/lib/ld-2.3.*.so
104    obj:/lib/ld-2.3.*.so
105 }
106
107 # g_module_open-related problems
108 {
109    <started showing up on fc4-quick>
110    Memcheck:Addr2
111    fun:memcpy
112    fun:_dl_map_object_deps
113    fun:dl_open_worker
114    fun:_dl_catch_error
115    fun:_dl_open
116    fun:dlopen_doit
117    fun:_dl_catch_error
118    fun:_dlerror_run
119    fun:dlopen@@GLIBC_2.1
120    fun:g_module_open
121    fun:gst_plugin_load_file
122    fun:gst_registry_scan_path_level
123    fun:gst_registry_scan_path_level
124    fun:gst_registry_scan_path_level
125    fun:init_post
126    fun:g_option_context_parse
127    fun:gst_init_check
128    fun:gst_init
129    fun:gst_check_init
130    fun:main
131 }
132
133 {
134    <started showing up on fc4-quick>
135    Memcheck:Addr4
136    fun:memcpy
137    fun:_dl_map_object_deps
138    fun:dl_open_worker
139    fun:_dl_catch_error
140    fun:_dl_open
141    fun:dlopen_doit
142    fun:_dl_catch_error
143    fun:_dlerror_run
144    fun:dlopen@@GLIBC_2.1
145    fun:g_module_open
146    fun:gst_plugin_load_file
147    fun:gst_registry_scan_path_level
148    fun:gst_registry_scan_path_level
149    fun:gst_registry_scan_path_level
150    fun:init_post
151    fun:g_option_context_parse
152    fun:gst_init_check
153    fun:gst_init
154    fun:gst_check_init
155    fun:main
156 }
157
158 {
159    <g_module_open on wim's debian>
160    Memcheck:Cond
161    obj:/lib/ld-2.3.*.so
162    obj:/lib/ld-2.3.*.so
163    obj:/lib/ld-2.3.*.so
164    fun:do_sym
165    fun:_dl_sym
166    fun:dlsym_doit
167    obj:/lib/ld-2.3.*.so
168    fun:_dlerror_run
169    fun:dlsym
170    fun:g_module_symbol
171    fun:g_module_open
172    fun:gst_plugin_load_file
173 }
174
175 {
176    <g_module_open on wim's debian>
177    Memcheck:Cond
178    obj:/lib/ld-2.3.*.so
179    obj:/lib/ld-2.3.*.so
180    obj:/lib/ld-2.3.*.so
181    fun:dl_open_worker
182    obj:/lib/ld-2.3.*.so
183    fun:_dl_open
184    fun:dlopen_doit
185    obj:/lib/ld-2.3.*.so
186    fun:_dlerror_run
187    fun:dlopen@@GLIBC_2.1
188    fun:g_module_open
189    fun:gst_plugin_load_file
190 }
191 {
192    <g_module_open on wim's debian>
193    Memcheck:Cond
194    obj:/lib/ld-2.3.*.so
195    fun:dl_open_worker
196    obj:/lib/ld-2.3.*.so
197    fun:_dl_open
198    fun:dlopen_doit
199    obj:/lib/ld-2.3.*.so
200    fun:_dlerror_run
201    fun:dlopen@@GLIBC_2.1
202    fun:g_module_open
203    fun:gst_plugin_load_file
204    fun:gst_plugin_load_by_name
205    fun:gst_plugin_feature_load
206 }
207
208 {
209    <leak on wim's debian in g_module_open>
210    Memcheck:Leak
211    fun:malloc
212    obj:/lib/ld-2.3.*.so
213    fun:dl_open_worker
214    obj:/lib/ld-2.3.*.so
215    fun:_dl_open
216    fun:dlopen_doit
217    obj:/lib/ld-2.3.*.so
218    fun:_dlerror_run
219    fun:dlopen@@GLIBC_2.1
220    fun:g_module_open
221    fun:gst_plugin_load_file
222    fun:gst_plugin_load_by_name
223 }
224
225 {
226    <invalid read on wim's debian>
227    Memcheck:Addr4
228    obj:/lib/ld-2.3.*.so
229    obj:/lib/ld-2.3.*.so
230    obj:/lib/ld-2.3.*.so
231    obj:/lib/ld-2.3.*.so
232    obj:/lib/ld-2.3.*.so
233    obj:/lib/ld-2.3.*.so
234    obj:/lib/ld-2.3.*.so
235    fun:dl_open_worker
236    obj:/lib/ld-2.3.*.so
237    fun:_dl_open
238    fun:dlopen_doit
239    obj:/lib/ld-2.3.*.so
240 }
241
242 {
243    <invalid read on wim's debian>
244    Memcheck:Addr4
245    obj:/lib/ld-2.3.*.so
246    obj:/lib/ld-2.3.*.so
247    obj:/lib/ld-2.3.*.so
248    obj:/lib/ld-2.3.*.so
249    obj:/lib/ld-2.3.*.so
250    obj:/lib/ld-2.3.*.so
251    fun:dl_open_worker
252    obj:/lib/ld-2.3.*.so
253    fun:_dl_open
254    fun:dlopen_doit
255    obj:/lib/ld-2.3.*.so
256    fun:_dlerror_run
257 }
258
259 {
260    <invalid read on wim's debian - 2006-02-02>
261    Memcheck:Addr4
262    obj:/lib/ld-2.3.*.so
263    obj:/lib/ld-2.3.*.so
264    obj:/lib/ld-2.3.*.so
265    fun:dl_open_worker
266    obj:/lib/ld-2.3.*.so
267    fun:_dl_open
268    fun:dlopen_doit
269    obj:/lib/ld-2.3.*.so
270    fun:_dlerror_run
271    fun:dlopen@@GLIBC_2.1
272    fun:g_module_open
273 }
274
275 {
276    <invalid read on wim's debian - 2006-02-02>
277    Memcheck:Addr4
278    obj:/lib/ld-2.3.*.so
279    obj:/lib/ld-2.3.*.so
280    fun:dl_open_worker
281    obj:/lib/ld-2.3.*.so
282    fun:_dl_open
283    fun:dlopen_doit
284    obj:/lib/ld-2.3.*.so
285    fun:_dlerror_run
286    fun:dlopen@@GLIBC_2.1
287    fun:g_module_open
288 }
289
290 {
291    <invalid read on wim's debian - 2006-02-02>
292    Memcheck:Addr4
293    obj:/lib/ld-2.3.*.so
294    obj:/lib/ld-2.3.*.so
295    obj:/lib/ld-2.3.*.so
296    fun:do_sym
297    fun:_dl_sym
298    fun:dlsym_doit
299    obj:/lib/ld-2.3.*.so
300    fun:_dlerror_run
301    fun:dlsym
302    fun:g_module_symbol
303    fun:g_module_open
304 }
305
306 {
307    <futex on Andy's 64-bit ubuntu>
308    Memcheck:Param
309    futex(uaddr2)
310    fun:pthread_once
311    obj:/lib/libc-2.3.*.so
312    obj:/lib/libc-2.3.*.so
313    fun:mbsnrtowcs
314    fun:vfprintf
315    fun:vsprintf
316    fun:sprintf
317    obj:/lib/libc-2.3.*.so
318    fun:tmpfile
319    fun:setup_pipe
320    fun:setup_messaging_with_key
321    fun:setup_messaging
322 }
323
324 # valgrind doesn't allow me to specify a suppression for Addr1, Addr2, Addr4
325 # as Addr*, so 3 copies for that; and then 2 of each for that pesky memcpy
326 {
327    <Invalid read of size 1, 2, 4 on thomas's FC4>
328    Memcheck:Addr1
329    fun:_dl_signal_error
330    fun:_dl_map_object_deps
331    fun:dl_open_worker
332    fun:_dl_catch_error
333    fun:_dl_open
334    fun:dlopen_doit
335    fun:_dl_catch_error
336    fun:_dlerror_run
337    fun:dlopen@@GLIBC_2.1
338    fun:g_module_open
339 }
340
341 {
342    <Invalid read of size 1, 2, 4 on thomas's FC4>
343    Memcheck:Addr2
344    fun:_dl_signal_error
345    fun:_dl_map_object_deps
346    fun:dl_open_worker
347    fun:_dl_catch_error
348    fun:_dl_open
349    fun:dlopen_doit
350    fun:_dl_catch_error
351    fun:_dlerror_run
352    fun:dlopen@@GLIBC_2.1
353    fun:g_module_open
354 }
355 {
356    <Invalid read of size 1, 2, 4 on thomas's FC4>
357    Memcheck:Addr4
358    fun:_dl_signal_error
359    fun:_dl_map_object_deps
360    fun:dl_open_worker
361    fun:_dl_catch_error
362    fun:_dl_open
363    fun:dlopen_doit
364    fun:_dl_catch_error
365    fun:_dlerror_run
366    fun:dlopen@@GLIBC_2.1
367    fun:g_module_open
368 }
369
370 {
371    <Invalid read of size 1, 2, 4 on thomas's FC4>
372    Memcheck:Addr1
373    fun:memcpy
374    fun:_dl_signal_error
375    fun:_dl_map_object_deps
376    fun:dl_open_worker
377    fun:_dl_catch_error
378    fun:_dl_open
379    fun:dlopen_doit
380    fun:_dl_catch_error
381    fun:_dlerror_run
382    fun:dlopen@@GLIBC_2.1
383    fun:g_module_open
384 }
385
386 {
387    <Invalid read of size 1, 2, 4 on thomas's FC4>
388    Memcheck:Addr2
389    fun:memcpy
390    fun:_dl_signal_error
391    fun:_dl_map_object_deps
392    fun:dl_open_worker
393    fun:_dl_catch_error
394    fun:_dl_open
395    fun:dlopen_doit
396    fun:_dl_catch_error
397    fun:_dlerror_run
398    fun:dlopen@@GLIBC_2.1
399    fun:g_module_open
400 }
401 {
402    <Invalid read of size 1, 2, 4 on thomas's FC4>
403    Memcheck:Addr4
404    fun:memcpy
405    fun:_dl_signal_error
406    fun:_dl_map_object_deps
407    fun:dl_open_worker
408    fun:_dl_catch_error
409    fun:_dl_open
410    fun:dlopen_doit
411    fun:_dl_catch_error
412    fun:_dlerror_run
413    fun:dlopen@@GLIBC_2.1
414    fun:g_module_open
415 }
416
417 {
418    <Addr8 on Andy's AMD64 ubuntu in dl_open>
419    Memcheck:Addr8
420    obj:/lib/ld-2.3.*.so
421    obj:/lib/ld-2.3.*.so
422    obj:/lib/ld-2.3.*.so
423    obj:/lib/ld-2.3.*.so
424    obj:/lib/ld-2.3.*.so
425    obj:/lib/ld-2.3.*.so
426    obj:/lib/ld-2.3.*.so
427    obj:/lib/libc-2.3.*.so
428    obj:/lib/ld-2.3.*.so
429    fun:_dl_open
430    obj:/lib/libdl-2.3.*.so
431    obj:/lib/ld-2.3.*.so
432 }
433
434 {
435    <Conditional jump on Andy's AMD64 ubuntu>
436    Memcheck:Cond
437    obj:/lib/ld-2.3.*.so
438    obj:/lib/libc-2.3.*.so
439    obj:/lib/ld-2.3.*.so
440    fun:_dl_open
441    obj:/lib/libdl-2.3.*.so
442    obj:/lib/ld-2.3.*.so
443    obj:/lib/libdl-2.3.*.so
444    fun:dlopen
445    fun:g_module_open
446    fun:gst_plugin_load_file
447    fun:gst_plugin_load_by_name
448    fun:gst_plugin_feature_load
449 }
450
451 {
452    <Mike's x86 dapper>
453    Memcheck:Addr4
454    obj:/lib/ld-2.3.6.so
455    obj:/lib/ld-2.3.6.so
456    obj:/lib/tls/i686/cmov/libc-2.3.6.so
457    obj:/lib/ld-2.3.6.so
458    fun:_dl_open
459    obj:/lib/tls/i686/cmov/libdl-2.3.6.so
460    obj:/lib/ld-2.3.6.so
461    obj:/lib/tls/i686/cmov/libdl-2.3.6.so
462    fun:dlopen
463 }
464
465 {
466    <Mike's x86 dapper>
467    Memcheck:Cond
468    obj:/lib/ld-2.3.6.so
469    obj:/lib/tls/i686/cmov/libc-2.3.6.so
470    obj:/lib/ld-2.3.6.so
471    fun:_dl_open
472    obj:/lib/tls/i686/cmov/libdl-2.3.6.so
473    obj:/lib/ld-2.3.6.so
474    obj:/lib/tls/i686/cmov/libdl-2.3.6.so
475    fun:dlopen
476 }
477
478 {
479    <Another dapper one>
480    Memcheck:Cond
481    obj:/lib/ld-2.3.6.so
482    obj:/lib/ld-2.3.6.so
483    obj:/lib/ld-2.3.6.so
484    obj:/lib/tls/i686/cmov/libc-2.3.6.so
485    obj:/lib/ld-2.3.6.so
486    fun:_dl_open
487    obj:/lib/tls/i686/cmov/libdl-2.3.6.so
488    obj:/lib/ld-2.3.6.so
489    obj:/lib/tls/i686/cmov/libdl-2.3.6.so
490    fun:dlopen
491 }
492
493 ### glib suppressions
494 {
495    <g_parse_debug_string>
496    Memcheck:Cond
497    fun:g_parse_debug_string
498    obj:/usr/lib*/libglib-2.0.so.*
499    fun:g_slice_alloc
500    fun:g_slice_alloc0
501    fun:g_list_append
502    fun:g_option_context_add_group
503    fun:gst_init_check
504    fun:gst_init
505    fun:gst_check_init
506    fun:main
507 }
508
509 {
510    <g_type_init malloc>
511    Memcheck:Leak
512    fun:malloc
513    fun:g_malloc
514    fun:g_strdup
515    fun:g_quark_from_string
516    obj:*
517    obj:*
518    fun:g_type_register_fundamental
519    obj:*
520    fun:g_type_init_with_debug_flags
521    fun:g_type_init
522    fun:init_pre
523 }
524
525 {
526    <g_type_init calloc>
527    Memcheck:Leak
528    fun:calloc
529    fun:g_malloc0
530    obj:*
531    obj:*
532    fun:g_type_register_fundamental
533 }
534
535 {
536    <g_type_init calloc 2>
537    Memcheck:Leak
538    fun:calloc
539    fun:g_malloc0
540    obj:*
541    obj:*
542    fun:g_type_init_with_debug_flags
543 }
544
545 ### GStreamer suppressions
546
547 # ds is saying he's rewriting the registry anyway
548 {
549    <registry>
550    Memcheck:Leak
551    fun:malloc
552    fun:g_malloc
553    fun:g_strdup
554    fun:read_string
555    fun:load_plugin
556    fun:gst_xml_registry_load
557    fun:gst_registry_load
558    fun:_registry_load_func
559    fun:g_list_foreach
560    fun:gst_registry_pool_load_all
561    fun:init_post
562    fun:init_popt_callback
563 }
564
565 #pthread memleaks
566
567 {
568    Thread creation leak
569    Memcheck:Leak
570    fun:calloc
571    fun:allocate_dtv
572    fun:_dl_allocate*
573    fun:_dl_allocate*
574    fun:__pthread_initialize_minimal
575 }
576
577 {
578    Thread management leak
579    Memcheck:Leak
580    fun:calloc
581    fun:allocate_dtv
582    fun:_dl_allocate*
583    fun:_dl_allocate*
584    fun:__pthread_*
585 }
586
587 {
588    Thread management leak 2
589    Memcheck:Leak
590    fun:memalign
591    fun:_dl_allocate*
592    fun:_dl_allocate*
593    fun:__pthread_*
594 }
595
596 {
597    pthread_create Syscall param write(buf) points to uninitialised byte(s)
598    Memcheck:Param
599    write(buf)
600    fun:pthread_create@@GLIBC_2.2.5
601    fun:g_thread_create*
602
603 }
604
605 # nss_parse_* memleak (used by g_option_context_parse)
606 {
607    nss_parse_* memleak
608    Memcheck:Leak
609    fun:malloc
610    fun:nss_parse_service_list
611    fun:__nss_database_lookup
612 }
613
614 # liboil suppressions
615 {
616    <liboil cpu_fault_check_try>
617    Memcheck:Value8
618    obj:/usr/lib/liboil-0.3.so.0.1.0
619    obj:/usr/lib/liboil-0.3.so.0.1.0
620    obj:/usr/lib/liboil-0.3.so.0.1.0
621    fun:oil_cpu_fault_check_try
622    fun:oil_test_check_impl
623    fun:oil_class_optimize
624    fun:oil_optimize_all
625    fun:oil_init
626 }