• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Valgrind suppression file for CPython errors and leaks in pybind11 tests
2
3# Taken verbatim from https://github.com/python/cpython/blob/3.9/Misc/valgrind-python.supp#L266-L272
4{
5   Uninitialised byte(s) false alarm, see bpo-35561
6   Memcheck:Param
7   epoll_ctl(event)
8   fun:epoll_ctl
9   fun:pyepoll_internal_ctl
10}
11
12{
13   Python leaks when spawning a subprocess
14   Memcheck:Leak
15   fun:malloc
16   fun:_PyMem_RawMalloc
17   fun:PyMem_RawMalloc
18   fun:PyThread_allocate_lock
19   fun:_PyEval_InitState
20   fun:PyInterpreterState_New
21   ...
22   fun:pyinit_core*
23   fun:Py_InitializeFromConfig
24   fun:pymain_init
25   fun:pymain_main
26}
27
28{
29   Python leaks when spawning a subprocess
30   Memcheck:Leak
31   fun:malloc
32   fun:_PyMem_RawMalloc
33   fun:_PyMem_DebugRawAlloc
34   fun:_PyMem_DebugRawMalloc
35   fun:PyMem_RawMalloc
36   fun:PyThread_allocate_lock
37   fun:_PyRuntimeState_Init_impl
38   fun:_PyRuntimeState_Init
39   fun:_PyRuntime_Initialize
40   fun:pymain_init
41   fun:pymain_main
42   fun:Py_BytesMain
43}
44
45{
46   Python leaks when spawning a subprocess
47   Memcheck:Leak
48   fun:malloc
49   fun:_PyMem_RawMalloc
50   fun:PyMem_RawMalloc
51   fun:PyThread_allocate_lock
52   fun:_PyImport_AcquireLock
53   fun:_imp_acquire_lock_impl*
54   fun:_imp_acquire_lock
55   fun:cfunction_vectorcall_NOARGS
56   fun:_PyObject_VectorcallTstate
57   fun:PyObject_Vectorcall
58   fun:call_function
59   fun:_PyEval_EvalFrameDefault
60   fun:_PyEval_EvalFrame
61   fun:function_code_fastcall
62}
63
64{
65   Python leaks when spawning a subprocess
66   Memcheck:Leak
67   fun:malloc
68   fun:_PyMem_RawMalloc
69   fun:PyMem_RawMalloc
70   fun:PyThread_allocate_lock
71   fun:newlockobject
72   ...
73   fun:cfunction_vectorcall_NOARGS
74   fun:_PyObject_VectorcallTstate
75   fun:PyObject_Vectorcall
76   fun:call_function
77   fun:_PyEval_EvalFrameDefault
78   fun:_PyEval_EvalFrame
79   fun:function_code_fastcall
80   fun:_PyFunction_Vectorcall
81}
82
83{
84   Python leaks when spawning a subprocess
85   Memcheck:Leak
86   fun:malloc
87   fun:_PyMem_RawMalloc
88   fun:PyMem_RawMalloc
89   fun:PyThread_allocate_lock
90   fun:rlock_new
91   fun:type_call
92   fun:_PyObject_Call
93   fun:PyObject_Call
94   fun:do_call_core
95   fun:_PyEval_EvalFrameDefault
96   fun:_PyEval_EvalFrame
97   fun:_PyEval_EvalCode
98   fun:_PyFunction_Vectorcall
99}
100
101# Not really CPython-specific, see link
102{
103   dlopen leak (https://stackoverflow.com/questions/1542457/memory-leak-reported-by-valgrind-in-dlopen)
104   Memcheck:Leak
105   fun:malloc
106   ...
107   fun:dl_open_worker
108   fun:_dl_catch_exception
109   fun:_dl_open
110   fun:dlopen_doit
111   fun:_dl_catch_exception
112   fun:_dl_catch_error
113   fun:_dlerror_run
114   fun:dlopen@@GLIBC_2.2.5
115   fun:_PyImport_FindSharedFuncptr
116   fun:_PyImport_LoadDynamicModuleWithSpec
117}
118
119# Not really CPython-specific, see link
120{
121   dlopen leak (https://stackoverflow.com/questions/1542457/memory-leak-reported-by-valgrind-in-dlopen)
122   Memcheck:Leak
123   fun:malloc
124   ...
125   fun:dl_open_worker
126   fun:_dl_catch_exception
127   fun:_dl_open
128   fun:dlopen_doit
129   fun:_dl_catch_exception
130   fun:_dl_catch_error
131   fun:_dlerror_run
132   fun:dlopen@@GLIBC_2.2.5
133   fun:_PyImport_FindSharedFuncptr
134   fun:_PyImport_LoadDynamicModuleWithSpec
135}
136