libnice/tests/libnice.supp
2020-05-18 17:17:09 +00:00

613 lines
7.8 KiB
Text

{
gnutls-init-calloc
Memcheck:Leak
fun:calloc
...
fun:gtls_gnutls_init
}
{
gnutls-init-realloc
Memcheck:Leak
fun:realloc
...
fun:gtls_gnutls_init
}
{
g-tls-backend-gnutls-init
Memcheck:Leak
fun:g_once_impl
fun:g_tls_backend_gnutls_init
}
{
p11-tokens-init
Memcheck:Leak
fun:calloc
...
fun:create_tokens_inlock
fun:initialize_module_inlock_reentrant
}
{
gobject-init-malloc
Memcheck:Leak
fun:malloc
...
fun:gobject_init_ctor
}
{
gobject-init-realloc
Memcheck:Leak
fun:realloc
...
fun:gobject_init_ctor
}
{
gobject-init-calloc
Memcheck:Leak
fun:calloc
...
fun:gobject_init_ctor
}
{
g-type-register-dynamic
Memcheck:Leak
fun:malloc
...
fun:g_type_register_dynamic
}
{
g-type-register-static
Memcheck:Leak
fun:malloc
...
fun:g_type_register_static
}
{
g-type-register-static-realloc
Memcheck:Leak
fun:realloc
...
fun:g_type_register_static
}
{
g-type-register-static-calloc
Memcheck:Leak
fun:calloc
...
fun:g_type_register_static
}
{
g-type-add-interface-dynamic
Memcheck:Leak
fun:malloc
...
fun:g_type_add_interface_dynamic
}
{
g-type-add-interface-static
Memcheck:Leak
fun:malloc
...
fun:g_type_add_interface_static
}
{
g-test-rand-init
Memcheck:Leak
fun:calloc
...
fun:g_rand_new_with_seed_array
fun:test_run_seed
...
fun:g_test_run
}
{
g-test-rand-init2
Memcheck:Leak
fun:calloc
...
fun:g_rand_new_with_seed_array
...
fun:get_global_random
...
fun:g_test_init
}
{
g-quark-table-new
Memcheck:Leak
fun:g_hash_table_new
...
fun:quark_new
}
{
g-quark-table-resize
Memcheck:Leak
fun:g_hash_table_resize
...
fun:quark_new
}
{
g-type-interface-init
Memcheck:Leak
fun:malloc
...
fun:type_iface_vtable_base_init_Wm
}
{
g-type-class-init
Memcheck:Leak
fun:calloc
...
fun:type_class_init_Wm
}
{
g-io-module-default-singleton-malloc
Memcheck:Leak
fun:malloc
...
fun:g_type_create_instance
...
fun:_g_io_module_get_default
}
{
g-io-module-default-singleton-module
Memcheck:Leak
fun:calloc
...
fun:g_module_open
...
fun:_g_io_module_get_default
}
{
g-get-language-names
Memcheck:Leak
fun:malloc
...
fun:g_get_language_names
}
{
g-static-mutex
Memcheck:Leak
fun:malloc
...
fun:g_static_mutex_get_mutex_impl
}
{
g-system-thread-init
Memcheck:Leak
fun:calloc
...
fun:g_system_thread_new
}
{
g-io-module-default-proxy-resolver-gnome
Memcheck:Leak
fun:calloc
...
fun:g_proxy_resolver_gnome_init
...
fun:_g_io_module_get_default
}
{
g-private-get
drd:ConflictingAccess
fun:g_private_get
}
{
g-private-get-helgrind
Helgrind:Race
fun:g_private_get
}
{
g-private-set
drd:ConflictingAccess
fun:g_private_set
}
{
g-private-set-helgrind
Helgrind:Race
fun:g_private_set
}
{
g-type-construct-free
drd:ConflictingAccess
fun:g_type_free_instance
}
{
g-type-construct-free-helgrind
Helgrind:Race
fun:g_type_free_instance
}
{
g-variant-unref
drd:ConflictingAccess
fun:g_variant_unref
}
{
g-variant-unref-helgrind
Helgrind:Race
fun:g_variant_unref
}
# TODO: haven't checked these entirely rigorously
{
g-unix-signals-main
drd:ConflictingAccess
fun:_g_main_create_unix_signal_watch
}
{
g-unix-signals-dispatch
drd:ConflictingAccess
...
fun:dispatch_unix_signals*
}
{
g-unix-signals-dispatch-helgrind
Helgrind:Race
...
fun:dispatch_unix_signals*
}
{
g-unix-signals-other
drd:ConflictingAccess
fun:g_unix_signal_watch*
}
{
g-unix-signals-other-helgrind
Helgrind:Race
fun:g_unix_signal_watch*
}
{
g-unix-signals-handler
drd:ConflictingAccess
fun:g_unix_signal_handler*
}
{
g-unix-signals-handler-helgrind
Helgrind:Race
fun:g_unix_signal_handler*
}
{
g-unix-signals-worker
drd:ConflictingAccess
fun:glib_worker_main
}
{
g-unix-signals-worker-helgrind
Helgrind:Race
fun:glib_worker_main
}
# TODO: haven't checked this thoroughly either
{
g-wakeup-acknowledge
drd:ConflictingAccess
fun:read
fun:g_wakeup_acknowledge
}
# TODO: or these
{
g-type-fundamental
drd:ConflictingAccess
fun:g_type_fundamental
}
{
g-type-fundamental-helgrind
Helgrind:Race
fun:g_type_fundamental
}
{
g-type-class-peek-static
drd:ConflictingAccess
fun:g_type_class_peek_static
}
{
g-type-class-peek-static-helgrind
Helgrind:Race
fun:g_type_class_peek_static
}
{
g-type-is-a
drd:ConflictingAccess
...
fun:g_type_is_a
}
{
g-type-is-a-helgrind
Helgrind:Race
...
fun:g_type_is_a
}
# TODO: ????
{
g-inet-address-get-type
drd:ConflictingAccess
fun:g_inet_address_get_type
}
{
g-inet-address-get-type-helgrind
Helgrind:Race
fun:g_inet_address_get_type
}
{
nice-get-type-helgrind
Helgrind:Race
fun:nice_*_get_type
}
# From: https://github.com/fredericgermain/valgrind/blob/master/glibc-2.X-drd.supp
{
drd-libc-stdio
drd:ConflictingAccess
obj:*/lib*/libc-*
}
{
drd-libc-recv
drd:ConflictingAccess
fun:recv
}
{
drd-libc-send
drd:ConflictingAccess
fun:send
}
# GSources do an opportunistic ref count check
{
g-source-set-ready-time
drd:ConflictingAccess
fun:g_source_set_ready_time
}
{
g-source-set-ready-time-helgrind
Helgrind:Race
fun:g_source_set_ready_time
}
# TODO: Check this
{
g-source-iter-next
Helgrind:Race
fun:g_source_iter_next
fun:g_main_context_*
fun:g_main_context_iterate
}
{
g-object-instance-private
drd:ConflictingAccess
fun:*_get_instance_private
}
{
g-object-instance-private-helgrind
Helgrind:Race
fun:*_get_instance_private
}
# GLib legitimately calls pthread_cond_signal without a mutex held
{
g-task-thread-complete
drd:CondErr
...
fun:g_cond_signal
fun:g_task_thread_complete
}
{
g-task-thread-complete
Helgrind:Misc
...
fun:g_cond_signal
fun:g_task_thread_complete
}
# False positive
{
nice-output-stream-cond
Helgrind:Misc
...
fun:g_cond_clear
fun:write_data_unref
}
# False positive, but I can't explain how (FIXME)
{
g-task-cond
Helgrind:Misc
...
fun:g_cond_clear
fun:g_task_finalize
}
# TODO FIXME: This is definitely a race.
# https://bugzilla.gnome.org/show_bug.cgi?id=735754
{
g-tls-base-stream-close
Helgrind:Race
...
fun:g_*_stream_close
fun:streams_removed_cb
}
{
g-tls-base-stream-close2
Helgrind:Race
...
fun:g_*_stream_close
fun:g_tls_connection_gnutls_close
}
# Real race, but is_cancelled() is an opportunistic function anyway
{
g-cancellable-is-cancelled
Helgrind:Race
fun:g_cancellable_is_cancelled
}
# False positive
{
g-main-context-cond
Helgrind:Misc
...
fun:g_cond_clear
fun:g_main_context_unref
}
# False positives
{
g-source-unlocked
Helgrind:Race
fun:g_source_*_unlocked
}
{
g-source-internal
Helgrind:Race
fun:g_source_*_internal
}
# FIXME: Probably actually a race
{
test-io-stream-common-termination
Helgrind:Race
fun:check_for_termination
}
{
test-io-stream-common-wait
Helgrind:Race
fun:wait_for_start
}
{
test-io-stream-common-main
Helgrind:Race
fun:main_thread_cb
}
{
test-io-stream-common-read
Helgrind:Race
fun:read_thread_cb
}
{
test-io-stream-common-write
Helgrind:Race
fun:write_thread_cb
}
# False positive
{
g_object_real_dispose
Helgrind:Race
fun:g_object_real_dispose
}
# False positive
{
g_object_new_valist
Helgrind:Race
...
fun:g_object_new_valist
}
# GStreamer leaks, we know
{
gst-check-init
Memcheck:Leak
...
fun:gst_check_init
}
{
g-quark-init
Memcheck:Leak
...
fun:g_quark_init
}
# For Glib in RHEL 7
{
g_type_register_fundamental-rhel7
Memcheck:Leak
...
fun:g_type_register_fundamental
}
{
dl-init-rhel7
Memcheck:Leak
...
fun:_dl_init
}
{
g-type-class-ref-rhel7
Memcheck:Leak
...
fun:g_type_class_ref
}
{
invalid-free-in-rhel7
Memcheck:Free
fun:free
fun:__libc_freeres
}
{
g-thread-pool-push-rhel7
Memcheck:Leak
...
fun:g_thread_pool_push
}
{
exit-shell-rhel7
Memcheck:Leak
...
fun:exit_shell
}
{
g-bus-rhel7
Memcheck:Leak
...
fun:g_bus_get_sync
}
# glibc does not deallocate thread-local storage
{
<tls>
Memcheck:Leak
...
fun:_dl_allocate_tls
fun:pthread_create@@*
}
{
<tls>
Memcheck:Leak
...
fun:_dl_allocate_tls
}