Stefan Krah <stefan-use...@bytereef.org> added the comment: Yes, the leak does not seem to be in posix_read() itself. Sadly enough, the number of leaks in test_multiprocessing has grown to five in e9d01c5c92ed (the four additional ones were definitely not present when I reported this).
==3047== 32 bytes in 1 blocks are definitely lost in loss record 340 of 6,704 ==3047== at 0x4C27878: malloc (vg_replace_malloc.c:236) ==3047== by 0x4D5C35: PyThread_allocate_lock (thread_pthread.h:280) ==3047== by 0x4A817C: _PyImport_AcquireLock (import.c:292) ==3047== by 0x4ADE7A: PyImport_ImportModuleLevelObject (import.c:2903) ==3047== by 0x4ADF64: PyImport_ImportModuleLevel (import.c:2922) ==3047== by 0x4AF8BB: PyImport_Import (import.c:3510) ==3047== by 0x4AD8AF: PyImport_ImportModule (import.c:2728) ==3047== by 0x5567E9: _PyExc_Init (exceptions.c:2345) ==3047== by 0x4BBA8F: Py_InitializeEx (pythonrun.c:277) ==3047== by 0x4BBCA8: Py_Initialize (pythonrun.c:341) ==3047== by 0x4D875C: Py_Main (main.c:595) ==3047== by 0x41ABFF: main (python.c:63) ==3047== ==3047== 37 bytes in 1 blocks are definitely lost in loss record 390 of 6,704 ==3047== at 0x4C27878: malloc (vg_replace_malloc.c:236) ==3047== by 0x53F997: PyBytes_FromStringAndSize (bytesobject.c:98) ==3047== by 0x4E5AB8: posix_read (posixmodule.c:7010) ==3047== by 0x57B4AD: PyCFunction_Call (methodobject.c:81) ==3047== by 0x490397: call_function (ceval.c:4051) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ==3047== by 0x48E509: PyEval_EvalCodeEx (ceval.c:3426) ==3047== by 0x4908D7: fast_function (ceval.c:4149) ==3047== by 0x4904EA: call_function (ceval.c:4072) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ==3047== by 0x48E509: PyEval_EvalCodeEx (ceval.c:3426) ==3047== by 0x4908D7: fast_function (ceval.c:4149) ==3047== ==3047== 72 bytes in 1 blocks are definitely lost in loss record 2,859 of 6,704 ==3047== at 0x4C27878: malloc (vg_replace_malloc.c:236) ==3047== by 0x4DA93E: _PyObject_GC_Malloc (gcmodule.c:1455) ==3047== by 0x4DAA5A: _PyObject_GC_NewVar (gcmodule.c:1487) ==3047== by 0x427A77: PyTuple_New (tupleobject.c:91) ==3047== by 0x427F3A: PyTuple_Pack (tupleobject.c:195) ==3047== by 0x494607: compiler_add_o (compile.c:1024) ==3047== by 0x4947EA: compiler_addop_o (compile.c:1056) ==3047== by 0x49B1BB: compiler_visit_expr (compile.c:3341) ==3047== by 0x49AEBB: compiler_visit_expr (compile.c:3293) ==3047== by 0x498B3A: compiler_visit_stmt (compile.c:2411) ==3047== by 0x494B32: compiler_body (compile.c:1247) ==3047== by 0x494C33: compiler_mod (compile.c:1267) ==3047== 120 bytes in 3 blocks are definitely lost in loss record 3,649 of 6,704 ==3047== at 0x4C27878: malloc (vg_replace_malloc.c:236) ==3047== by 0x4DC686: thread_PyThread_start_new_thread (_threadmodule.c:1052) ==3047== by 0x57B4AD: PyCFunction_Call (methodobject.c:81) ==3047== by 0x490397: call_function (ceval.c:4051) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ==3047== by 0x4907CB: fast_function (ceval.c:4139) ==3047== by 0x4904EA: call_function (ceval.c:4072) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ==3047== by 0x48E509: PyEval_EvalCodeEx (ceval.c:3426) ==3047== by 0x56263C: function_call (funcobject.c:669) ==3047== by 0x532B87: PyObject_Call (abstract.c:2150) ==3047== by 0x549EF6: method_call (classobject.c:320) ==3047== 120 bytes in 3 blocks are definitely lost in loss record 3,650 of 6,704 ==3047== at 0x4C27878: malloc (vg_replace_malloc.c:236) ==3047== by 0x4DC686: thread_PyThread_start_new_thread (_threadmodule.c:1052) ==3047== by 0x57B4AD: PyCFunction_Call (methodobject.c:81) ==3047== by 0x490397: call_function (ceval.c:4051) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ==3047== by 0x4907CB: fast_function (ceval.c:4139) ==3047== by 0x4904EA: call_function (ceval.c:4072) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ==3047== by 0x48E509: PyEval_EvalCodeEx (ceval.c:3426) ==3047== by 0x4908D7: fast_function (ceval.c:4149) ==3047== by 0x4904EA: call_function (ceval.c:4072) ==3047== by 0x48B826: PyEval_EvalFrameEx (ceval.c:2674) ---------- title: posix_read: memory leak -> test_multiprocessing: memory leaks _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue13090> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com