[gtk/gtk-3-24: 1/2] Add Valgrind suppressions files
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/gtk-3-24: 1/2] Add Valgrind suppressions files
- Date: Mon, 24 Feb 2020 00:08:25 +0000 (UTC)
commit b47ddb09ad8876fef9070ad0a27268af1c211b0a
Author: Philip Chimento <philip chimento gmail com>
Date: Sun Feb 23 15:39:12 2020 -0800
Add Valgrind suppressions files
This copies the suppressions files from the master branch.
See: #138
Makefile.am | 8 +-
gtk.supp | 267 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
gtk64.supp | 277 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
meson.build | 7 ++
4 files changed, 558 insertions(+), 1 deletion(-)
---
diff --git a/Makefile.am b/Makefile.am
index 622c290fe3..94a397fec0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -28,7 +28,9 @@ EXTRA_DIST += \
po/meson.build \
po-properties/meson.build \
build-aux/meson/post-install.py \
- config.h.meson
+ config.h.meson \
+ gtk.supp \
+ gtk64.supp
MAINTAINERCLEANFILES = \
$(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
@@ -40,6 +42,10 @@ MAINTAINERCLEANFILES = \
$(srcdir)/gtk-doc.make \
$(srcdir)/ChangeLog
+if OS_UNIX
+valgrinddir = $(datadir)/gtk-3.0/valgrind
+valgrind_DATA = gtk.supp gtk64.supp
+endif
## Copy .pc files to target-specific names
gtk+-x11-3.0.pc gtk+-win32-3.0.pc gtk+-quartz-3.0.pc gtk+-broadway-3.0.pc gtk+-wayland-3.0.pc: gtk+-3.0.pc
diff --git a/gtk.supp b/gtk.supp
new file mode 100644
index 0000000000..f2f0d0d406
--- /dev/null
+++ b/gtk.supp
@@ -0,0 +1,267 @@
+# Actual GTK things
+{
+ GtkWidgetClass action GPtrArray
+ Memcheck:Leak
+ fun:malloc
+ fun:g_malloc
+ fun:g_slice_alloc
+ fun:g_ptr_array_sized_new
+ fun:g_ptr_array_new
+ fun:gtk_widget_class_add_action
+}
+
+{
+ GTK media extension gio modules
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:g_malloc
+ fun:g_slice_alloc
+ fun:g_slice_alloc0
+ fun:g_type_create_instance
+ fun:g_object_new_internal
+ fun:g_object_new_with_properties
+ fun:g_object_new
+ fun:g_io_module_new
+ fun:g_io_modules_scan_all_in_directory_with_scope
+ fun:gtk_media_file_extension_init
+}
+
+{
+ gtk-style-context
+ Memcheck:Leak
+ match-leak-kinds: possible
+ fun:malloc
+ fun:g_malloc
+ ...
+ fun:gtk_css_node_declaration_make_writable
+ ...
+ fun:gtk_style_constructed
+}
+
+{
+ gtk-style-context2
+ Memcheck:Leak
+ match-leak-kinds: possible
+ fun:malloc
+ fun:g_malloc
+ ...
+ fun:gtk_css_node_declaration_make_writable_resize
+ ...
+ fun:gtk_style_constructed
+}
+
+# AMD driver
+{
+ radeonsi_dri general
+ Memcheck:Leak
+ fun:calloc
+ ...
+ obj:/usr/lib/dri/radeonsi_dri.so
+}
+
+# mesa driver stuff
+{
+ i965 addr4
+ Memcheck:Addr4
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ i965 addr8
+ Memcheck:Addr8
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ i965 memcpy
+ Memcheck:Addr8
+ fun:memcpy*
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ i965 memcpy
+ Memcheck:Addr2
+ fun:memcpy*
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ mesa memcmp 8
+ Memcheck:Addr8
+ fun:*memcmp*
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ mesa memcmp 1
+ Memcheck:Addr1
+ fun:*memcmp*
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ mesa memset 8
+ Memcheck:Addr8
+ fun:*memset*
+ obj:/usr/lib/dri/i965_dri.so
+}
+
+{
+ mesa realpath
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:realpath@@GLIBC_2.3
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_eglInitialize_global_rewrite_ptr
+}
+
+{
+ mesa calloc
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:calloc
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_eglInitialize_global_rewrite_ptr
+}
+
+{
+ mesa malloc
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ obj:/usr/lib/dri/i965_dri.so*
+}
+
+{
+ mesa glReadPixels
+ Memcheck:Addr16
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glReadPixels_global_rewrite_ptr
+}
+
+{
+ epoxy glxQueryServerString 1
+ Memcheck:Leak
+ fun:malloc
+ fun:XextAddDisplay
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glXQueryServerString_global_rewrite_ptr
+
+}
+
+{
+ epoxy glxQueryServerString 2
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:realpath*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glXQueryServerString_global_rewrite_ptr
+}
+
+{
+ epoxy glGetTexImage
+ Memcheck:Addr16
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glGetTexImage_global_rewrite_ptr
+}
+
+
+
+
+# Fontconfig
+{
+ FcFontSetList
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ obj:/usr/lib/libfontconfig.so*
+ obj:/usr/lib/libfontconfig.so*
+ fun:FcFontSetList
+}
+
+{
+ FcFontRenderPrepare
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+ obj:/usr/lib/libfontconfig.so*
+ obj:/usr/lib/libfontconfig.so*
+ fun:FcFontRenderPrepare
+}
+
+{
+ FcDefaultSubstitute
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+ obj:/usr/lib/libfontconfig.so*
+ obj:/usr/lib/libfontconfig.so*
+ fun:FcDefaultSubstitute
+}
+
+# Pixman
+{
+ pixman_image_composite32
+ Memcheck:Cond
+ obj:/usr/lib/libpixman-1.so*
+ obj:/usr/lib/libpixman-1.so*
+ fun:pixman_image_composite32
+}
+
+# Pango
+{
+ pango 1
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+ obj:/usr/lib/libfontconfig.so*
+ obj:/usr/lib/libfontconfig.so*
+ obj:/usr/lib/libcairo.so*
+ fun:pango_cairo_fc_font_map_fontset_key_substitute
+}
+
+{
+ pango 2
+ Memcheck:Leak
+ fun:realloc
+ obj:/usr/lib/libfontconfig.so*
+ obj:/usr/lib/libfontconfig.so*
+ fun:_cairo_ft_font_options_substitute
+}
diff --git a/gtk64.supp b/gtk64.supp
new file mode 100644
index 0000000000..39f4f525b1
--- /dev/null
+++ b/gtk64.supp
@@ -0,0 +1,277 @@
+# Actual GTK things
+{
+ GtkWidgetClass action GPtrArray
+ Memcheck:Leak
+ fun:malloc
+ fun:g_malloc
+ fun:g_slice_alloc
+ fun:g_ptr_array_sized_new
+ fun:g_ptr_array_new
+ fun:gtk_widget_class_add_action
+}
+
+{
+ GTK media extension gio modules
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:g_malloc
+ fun:g_slice_alloc
+ fun:g_slice_alloc0
+ fun:g_type_create_instance
+ fun:g_object_new_internal
+ fun:g_object_new_with_properties
+ fun:g_object_new
+ fun:g_io_module_new
+ fun:g_io_modules_scan_all_in_directory_with_scope
+ fun:gtk_media_file_extension_init
+}
+
+{
+ gtk-style-context
+ Memcheck:Leak
+ match-leak-kinds: possible
+ fun:malloc
+ fun:g_malloc
+ ...
+ fun:gtk_css_node_declaration_make_writable
+ ...
+ fun:gtk_style_constructed
+}
+
+{
+ gtk-style-context2
+ Memcheck:Leak
+ match-leak-kinds: possible
+ fun:malloc
+ fun:g_malloc
+ ...
+ fun:gtk_css_node_declaration_make_writable_resize
+ ...
+ fun:gtk_style_constructed
+}
+
+# AMD driver
+{
+ radeonsi_dri general
+ Memcheck:Leak
+ fun:calloc
+ ...
+ obj:/usr/lib64/dri/radeonsi_dri.so
+}
+
+# mesa driver stuff
+{
+ i965 addr4
+ Memcheck:Addr4
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ i965 addr8
+ Memcheck:Addr8
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ i965 memcpy
+ Memcheck:Addr8
+ fun:memcpy*
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ i965 memcpy
+ Memcheck:Addr2
+ fun:memcpy*
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ mesa memcmp 8
+ Memcheck:Addr8
+ fun:*memcmp*
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ mesa memcmp 1
+ Memcheck:Addr1
+ fun:*memcmp*
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ mesa memset 8
+ Memcheck:Addr8
+ fun:*memset*
+ obj:/usr/lib64/dri/i965_dri.so
+}
+
+{
+ mesa realpath
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:realpath@@GLIBC_2.3
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_eglInitialize_global_rewrite_ptr
+}
+
+{
+ mesa calloc
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:calloc
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_eglInitialize_global_rewrite_ptr
+}
+
+{
+ mesa malloc
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ obj:/usr/lib64/dri/i965_dri.so*
+}
+
+{
+ mesa glReadPixels
+ Memcheck:Addr16
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glReadPixels_global_rewrite_ptr
+}
+
+{
+ epoxy glxQueryServerString 1
+ Memcheck:Leak
+ fun:malloc
+ fun:XextAddDisplay
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glXQueryServerString_global_rewrite_ptr
+
+}
+
+{
+ epoxy glxQueryServerString 2
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:realpath*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glXQueryServerString_global_rewrite_ptr
+}
+
+{
+ epoxy glGetTexImage
+ Memcheck:Addr16
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+ fun:epoxy_glGetTexImage_global_rewrite_ptr
+}
+
+
+
+
+# Fontconfig
+{
+ FcFontSetList
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ obj:/usr/lib64/libfontconfig.so*
+ obj:/usr/lib64/libfontconfig.so*
+ fun:FcFontSetList
+}
+
+{
+ FcFontRenderPrepare
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+ obj:/usr/lib64/libfontconfig.so*
+ obj:/usr/lib64/libfontconfig.so*
+ fun:FcFontRenderPrepare
+}
+
+{
+ FcDefaultSubstitute
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+ obj:/usr/lib64/libfontconfig.so*
+ obj:/usr/lib64/libfontconfig.so*
+ fun:FcDefaultSubstitute
+}
+
+# Pixman
+{
+ pixman_image_composite32
+ Memcheck:Cond
+ obj:/usr/lib64/libpixman-1.so*
+ obj:/usr/lib64/libpixman-1.so*
+ fun:pixman_image_composite32
+}
+
+# Pango
+{
+ pango 1
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+ obj:/usr/lib64/libfontconfig.so*
+ obj:/usr/lib64/libfontconfig.so*
+ obj:/usr/lib64/libcairo.so*
+ fun:pango_cairo_fc_font_map_fontset_key_substitute
+}
+
+{
+ pango 2
+ Memcheck:Leak
+ fun:realloc
+ obj:/usr/lib64/libfontconfig.so*
+ obj:/usr/lib64/libfontconfig.so*
+ fun:_cairo_ft_font_options_substitute
+}
+
+# GLib
+{
+ glib 1
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:g_malloc
+ fun:g_quark_init
+}
diff --git a/meson.build b/meson.build
index 7efe30999d..bd61f6664c 100644
--- a/meson.build
+++ b/meson.build
@@ -980,6 +980,13 @@ meson.add_install_script('build-aux/meson/post-install.py',
gtk_libdir,
gtk_datadir)
+if host_machine.system() != 'windows'
+ # Install Valgrind suppression files (except on Windows,
+ # as Valgrind is currently not supported on Windows)
+ install_data('gtk.supp', 'gtk64.supp',
+ install_dir : join_paths(gtk_datadir, 'gtk-3.0', 'valgrind'))
+endif
+
summary = [
'',
'------',
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]