|
| 1 | +# .lsan-ignore.txt lists memory leak events that LeakSanitizer should not |
| 2 | +# report when running pygolang tests. |
| 3 | +# |
| 4 | +# Many python allocations, whose lifetime coincides with python interpreter |
| 5 | +# lifetime, and which are not explicitly freed on python shutdown, are |
| 6 | +# reported as leaks by default. Disable leak reporting for those to avoid |
| 7 | +# non-pygolang related printouts. |
| 8 | + |
| 9 | + |
| 10 | +# >>> Everything created when initializing python, e.g. sys.stderr |
| 11 | +# #0 0x7f21e74f3bd7 in malloc .../asan_malloc_linux.cpp:69 |
| 12 | +# #1 0x555f361ff9a4 in PyThread_allocate_lock Python/thread_pthread.h:385 |
| 13 | +# #2 0x555f3623f72a in _buffered_init Modules/_io/bufferedio.c:725 |
| 14 | +# #3 0x555f3623ff7e in _io_BufferedWriter___init___impl Modules/_io/bufferedio.c:1803 |
| 15 | +# #4 0x555f3623ff7e in _io_BufferedWriter___init__ Modules/_io/clinic/bufferedio.c.h:489 |
| 16 | +# #5 0x555f3610c086 in type_call Objects/typeobject.c:1103 |
| 17 | +# #6 0x555f3609cdcc in _PyObject_MakeTpCall Objects/call.c:214 |
| 18 | +# #7 0x555f3609d6a8 in _PyObject_VectorcallTstate Include/internal/pycore_call.h:90 |
| 19 | +# #8 0x555f3609d6a8 in _PyObject_VectorcallTstate Include/internal/pycore_call.h:77 |
| 20 | +# #9 0x555f3609d6a8 in _PyObject_CallFunctionVa Objects/call.c:536 |
| 21 | +# #10 0x555f3609e89c in _PyObject_CallFunction_SizeT Objects/call.c:590 |
| 22 | +# #11 0x555f3623a0df in _io_open_impl Modules/_io/_iomodule.c:407 |
| 23 | +# #12 0x555f3623a0df in _io_open Modules/_io/clinic/_iomodule.c.h:264 |
| 24 | +# #13 0x555f360f17da in cfunction_vectorcall_FASTCALL_KEYWORDS Objects/methodobject.c:443 |
| 25 | +# #14 0x555f3609d54c in _PyObject_VectorcallTstate Include/internal/pycore_call.h:92 |
| 26 | +# #15 0x555f3609d54c in _PyObject_CallFunctionVa Objects/call.c:536 |
| 27 | +# #16 0x555f3609ec34 in callmethod Objects/call.c:608 |
| 28 | +# #17 0x555f3609ec34 in _PyObject_CallMethod Objects/call.c:677 |
| 29 | +# #18 0x555f361e60cf in create_stdio Python/pylifecycle.c:2244 |
| 30 | +# #19 0x555f361e6523 in init_sys_streams Python/pylifecycle.c:2431 |
| 31 | +# #20 0x555f361e6523 in init_interp_main Python/pylifecycle.c:1154 |
| 32 | +# #21 0x555f361e7204 in pyinit_main Python/pylifecycle.c:1230 |
| 33 | +# #22 0x555f361e85ba in Py_InitializeFromConfig Python/pylifecycle.c:1261 |
| 34 | +# #23 0x555f3621010a in pymain_init Modules/main.c:67 |
| 35 | +# #24 0x555f362113de in pymain_main Modules/main.c:701 |
| 36 | +# #25 0x555f362113de in Py_BytesMain Modules/main.c:734 |
| 37 | +leak:^pymain_init$ |
| 38 | + |
| 39 | +# >>> Everything created when importing py modules, e.g. |
| 40 | +# #0 0x7f18c86f3bd7 in malloc .../asan_malloc_linux.cpp:69 |
| 41 | +# #1 0x55b971430acf in PyMem_RawMalloc Objects/obmalloc.c:586 |
| 42 | +# #2 0x55b971430acf in _PyObject_Malloc Objects/obmalloc.c:2003 |
| 43 | +# #3 0x55b971430acf in _PyObject_Malloc Objects/obmalloc.c:1996 |
| 44 | +# #4 0x55b971415696 in new_keys_object Objects/dictobject.c:632 |
| 45 | +# #5 0x55b971415716 in dictresize Objects/dictobject.c:1429 |
| 46 | +# #6 0x55b97141961a in insertion_resize Objects/dictobject.c:1183 |
| 47 | +# #7 0x55b97141961a in insertdict Objects/dictobject.c:1248 |
| 48 | +# #8 0x55b97143eb7b in add_subclass Objects/typeobject.c:6547 |
| 49 | +# #9 0x55b97144ca52 in type_ready_add_subclasses Objects/typeobject.c:6345 |
| 50 | +# #10 0x55b97144ca52 in type_ready Objects/typeobject.c:6476 |
| 51 | +# #11 0x55b971451a1f in PyType_Ready Objects/typeobject.c:6508 |
| 52 | +# #12 0x55b971451a1f in type_new_impl Objects/typeobject.c:3189 |
| 53 | +# #13 0x55b971451a1f in type_new Objects/typeobject.c:3323 |
| 54 | +# #14 0x55b971443014 in type_call Objects/typeobject.c:1091 |
| 55 | +# #15 0x55b9713d3dcc in _PyObject_MakeTpCall Objects/call.c:214 |
| 56 | +# #16 0x55b9713d47bd in _PyObject_FastCallDictTstate Objects/call.c:141 |
| 57 | +# #17 0x55b9713d47bd in PyObject_VectorcallDict Objects/call.c:165 |
| 58 | +# #18 0x55b9714d14c2 in builtin___build_class__ Python/bltinmodule.c:209 |
| 59 | +# #19 0x55b9714287da in cfunction_vectorcall_FASTCALL_KEYWORDS Objects/methodobject.c:443 |
| 60 | +# #20 0x55b9713d4a7b in _PyObject_VectorcallTstate Include/internal/pycore_call.h:92 |
| 61 | +# #21 0x55b9713d4a7b in PyObject_Vectorcall Objects/call.c:299 |
| 62 | +# #22 0x55b97137666e in _PyEval_EvalFrameDefault Python/ceval.c:4769 |
| 63 | +# #23 0x55b9714d7e6b in _PyEval_EvalFrame Include/internal/pycore_ceval.h:73 |
| 64 | +# #24 0x55b9714d7e6b in _PyEval_Vector Python/ceval.c:6434 |
| 65 | +# #25 0x55b9714d7e6b in PyEval_EvalCode Python/ceval.c:1148 |
| 66 | +# #26 0x55b9714d2e1f in builtin_exec_impl Python/bltinmodule.c:1077 |
| 67 | +# #27 0x55b9714d2e1f in builtin_exec Python/clinic/bltinmodule.c.h:465 |
| 68 | +# #28 0x55b9714287da in cfunction_vectorcall_FASTCALL_KEYWORDS Objects/methodobject.c:443 |
| 69 | +# #29 0x55b971376dcb in do_call_core Python/ceval.c:7349 |
| 70 | +# #30 0x55b971376dcb in _PyEval_EvalFrameDefault Python/ceval.c:5376 |
| 71 | +# #31 0x55b9714d7faf in _PyEval_EvalFrame Include/internal/pycore_ceval.h:73 |
| 72 | +# #32 0x55b9714d7faf in _PyEval_Vector Python/ceval.c:6434 |
| 73 | +# #33 0x55b9713d436e in _PyObject_VectorcallTstate Include/internal/pycore_call.h:92 |
| 74 | +# #34 0x55b9713d436e in object_vacall Objects/call.c:819 |
| 75 | +# #35 0x55b9713d63cf in PyObject_CallMethodObjArgs Objects/call.c:879 |
| 76 | +# #36 0x55b9715080e1 in import_find_and_load Python/import.c:1748 |
| 77 | +# #37 0x55b9715080e1 in PyImport_ImportModuleLevelObject Python/import.c:1847 |
| 78 | +# #38 0x55b97137de9c in import_name Python/ceval.c:7422 |
| 79 | +# #39 0x55b97137de9c in _PyEval_EvalFrameDefault Python/ceval.c:3946 |
| 80 | +# #40 0x55b9714d7e6b in _PyEval_EvalFrame Include/internal/pycore_ceval.h:73 |
| 81 | +# #41 0x55b9714d7e6b in _PyEval_Vector Python/ceval.c:6434 |
| 82 | +# #42 0x55b9714d7e6b in PyEval_EvalCode Python/ceval.c:1148 |
| 83 | +# #43 0x55b9714d2e1f in builtin_exec_impl Python/bltinmodule.c:1077 |
| 84 | +# #44 0x55b9714d2e1f in builtin_exec Python/clinic/bltinmodule.c.h:465 |
| 85 | +# #45 0x55b9714287da in cfunction_vectorcall_FASTCALL_KEYWORDS Objects/methodobject.c:443 |
| 86 | +# #46 0x55b971376dcb in do_call_core Python/ceval.c:7349 |
| 87 | +# #47 0x55b971376dcb in _PyEval_EvalFrameDefault Python/ceval.c:5376 |
| 88 | +leak:^PyImport_Import |
| 89 | +# importlib.import_module leads to |
| 90 | +# #0 0x7f1951ef3bd7 in malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69 |
| 91 | +# #1 0x55f399e8cacf in PyMem_RawMalloc Objects/obmalloc.c:586 |
| 92 | +# #2 0x55f399e8cacf in _PyObject_Malloc Objects/obmalloc.c:2003 |
| 93 | +# #3 0x55f399e8cacf in _PyObject_Malloc Objects/obmalloc.c:1996 |
| 94 | +# #4 0x55f399e86344 in PyModule_ExecDef Objects/moduleobject.c:400 |
| 95 | +# #5 0x55f399f6178a in exec_builtin_or_dynamic Python/import.c:2345 |
| 96 | +# #6 0x55f399f6178a in _imp_exec_dynamic_impl Python/import.c:2419 |
| 97 | +# #7 0x55f399f6178a in _imp_exec_dynamic Python/clinic/import.c.h:474 |
| 98 | +# #8 0x55f399e8438a in cfunction_vectorcall_O Objects/methodobject.c:514 |
| 99 | +leak:^_imp_exec_dynamic |
| 100 | + |
| 101 | + |
| 102 | +# >>> Everything allocated at DSO initialization, e.g. |
| 103 | +# #0 0x7f35d2af46c8 in operator new(unsigned long) .../asan_new_delete.cpp:95 |
| 104 | +# #1 0x7f35ce897e9f in __static_initialization_and_destruction_0 golang/context.cpp:61 |
| 105 | +# #2 0x7f35ce8982ef in _GLOBAL__sub_I_context.cpp golang/context.cpp:380 |
| 106 | +# #3 0x7f35d32838bd in call_init elf/dl-init.c:90 |
| 107 | +# #4 0x7f35d32838bd in call_init elf/dl-init.c:27 |
| 108 | +# #5 0x7f35d32839a3 in _dl_init elf/dl-init.c:137 |
| 109 | +# #6 0x7f35d256e023 in __GI__dl_catch_exception elf/dl-error-skeleton.c:182 |
| 110 | +# #7 0x7f35d328a09d in dl_open_worker elf/dl-open.c:808 |
| 111 | +# #8 0x7f35d256dfc9 in __GI__dl_catch_exception elf/dl-error-skeleton.c:208 |
| 112 | +# #9 0x7f35d328a437 in _dl_open elf/dl-open.c:884 |
| 113 | +# #10 0x7f35d24a4437 in dlopen_doit dlfcn/dlopen.c:56 |
| 114 | +# #11 0x7f35d256dfc9 in __GI__dl_catch_exception elf/dl-error-skeleton.c:208 |
| 115 | +# #12 0x7f35d256e07e in __GI__dl_catch_error elf/dl-error-skeleton.c:227 |
| 116 | +# #13 0x7f35d24a3f26 in _dlerror_run dlfcn/dlerror.c:138 |
| 117 | +# #14 0x7f35d24a44e8 in dlopen_implementation dlfcn/dlopen.c:71 |
| 118 | +# #15 0x7f35d24a44e8 in ___dlopen dlfcn/dlopen.c:81 |
| 119 | +# #16 0x7f35d2a77ff9 in dlopen .../sanitizer_common_interceptors.inc:6341 |
| 120 | +leak:^_GLOBAL_ |
| 121 | + |
| 122 | + |
| 123 | +# global<> does not deallocate its reference on purpose |
| 124 | +leak:^_test_global()$ |
0 commit comments