Neil Schemenauer added the comment: I reverted because of the crash in test_threading. I'm pretty sure there is a bug with the locking of bufferedio.c, related to threads and flush. Here is the stacktrace I get (my patch applied, I'm trying to write a Python test that triggers the SEGV without my flush patch).
Attached is the script that triggers the crash. Thread 3 received signal SIGSEGV, Segmentation fault. 0x00000001000c06d4 in PyObject_GetAttr ( v=<unknown at remote 0xdbdbdbdbdbdbdbdb>, name='seek') at ../Objects/object.c:882 882 PyTypeObject *tp = Py_TYPE(v); (gdb) bt #0 0x00000001000c06d4 in PyObject_GetAttr ( v=<unknown at remote 0xdbdbdbdbdbdbdbdb>, name='seek') at ../Objects/object.c:882 #1 0x00000001000440e9 in PyObject_CallMethodObjArgs ( callable=<unknown at remote 0xdbdbdbdbdbdbdbdb>, name='seek') at ../Objects/call.c:1212 #2 0x00000001003005a2 in _buffered_raw_seek (self=0x1053a39b8, target=0, whence=1) at ../Modules/_io/bufferedio.c:742 #3 0x000000010030015e in buffered_flush_and_rewind_unlocked (self=0x1053a39b8) at ../Modules/_io/bufferedio.c:851 #4 0x00000001002fed12 in buffered_flush (self=0x1053a39b8, args=0x0) at ../Modules/_io/bufferedio.c:869 #5 0x00000001002feb4d in _PyIO_atexit_flush () at ../Modules/_io/bufferedio.c:1863 [...] ---------- Added file: http://bugs.python.org/file47121/buffer_crash.py _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17852> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com