postgres.git / summary / log / commit / refs
commit fd1cf9d8407589fae354e1a5b852f33eedc7f67f
Author: Andres Freund <andres@anarazel.de>
Date: Wed Mar 09 01:34:09 2016 +0000
Add valgrind suppressions for python code.
Python's allocator does some low-level tricks for efficiency;
unfortunately they trigger valgrind errors. Those tricks can be disabled
making instrumentation easier; but few people testing postgres will have
such a build of python. So add broad suppressions of the resulting
errors.
See also https://svn.python.org/projects/python/trunk/Misc/README.valgrind
This possibly will suppress valid errors, but without it it's basically
impossible to use valgrind with plpython code.
Author: Andres Freund
Backpatch: 9.4, where we started to maintain valgrind suppressions
src/tools/valgrind.supp | 66 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)
diff --git a/src/tools/valgrind.supp b/src/tools/valgrind.supp
index 710ae25b671..f0436789275 100644
--- a/src/tools/valgrind.supp
+++ b/src/tools/valgrind.supp
@@ -146,3 +146,69 @@
fun:pg_atomic_write_u64_impl
fun:pg_atomic_init_u64_impl
}
+
+
+# Python's allocator does some low-level tricks for efficiency. Those
+# can be disabled for better instrumentation; but few people testing
+# postgres will have such a build of python. So add broad
+# suppressions of the resulting errors.
+# See also https://svn.python.org/projects/python/trunk/Misc/README.valgrind
+{
+ python_clever_allocator
+ Memcheck:Addr4
+ fun:PyObject_Free
+}
+
+{
+ python_clever_allocator
+ Memcheck:Addr8
+ fun:PyObject_Free
+}
+
+{
+ python_clever_allocator
+ Memcheck:Value4
+ fun:PyObject_Free
+}
+
+{
+ python_clever_allocator
+ Memcheck:Value8
+ fun:PyObject_Free
+}
+
+{
+ python_clever_allocator
+ Memcheck:Cond
+ fun:PyObject_Free
+}
+
+{
+ python_clever_allocator
+ Memcheck:Addr4
+ fun:PyObject_Realloc
+}
+
+{
+ python_clever_allocator
+ Memcheck:Addr8
+ fun:PyObject_Realloc
+}
+
+{
+ python_clever_allocator
+ Memcheck:Value4
+ fun:PyObject_Realloc
+}
+
+{
+ python_clever_allocator
+ Memcheck:Value8
+ fun:PyObject_Realloc
+}
+
+{
+ python_clever_allocator
+ Memcheck:Cond
+ fun:PyObject_Realloc
+}
[parent: 9a5f1073f52b]