Message71628
"pyo" macro from gdbinit (see #3631) uses _PyObject_Dump() to display
an object. This function calls (indirectly) string_print() to display
one line of text. But if the GIL is released (I guess it's the GIL or
is it called the "thread state"?), gdb crashs Python:
object : Fatal Python error: PyEval_SaveThread: NULL tstate
Program received signal SIGABRT, Aborted.
0xffffe410 in __kernel_vsyscall ()
Workaround: ensure GIL before Py_BEGIN_ALLOW_THREADS... That sounds
ugly but it works :-) So I propose to enable it in debug mode (#ifdef
Py_DEBUG) with a patch.
I guess that the issue is very specific to (gdb) debugging and should
not affect normal usage of Python. That's why I choosed to enable it
only in debug mode. |
|
Date |
User |
Action |
Args |
2008-08-21 12:39:40 | vstinner | set | recipients:
+ vstinner |
2008-08-21 12:39:40 | vstinner | set | messageid: <1219322380.25.0.792509106776.issue3632@psf.upfronthosting.co.za> |
2008-08-21 12:39:39 | vstinner | link | issue3632 messages |
2008-08-21 12:39:38 | vstinner | create | |
|