Hi Nick, On 22 May 2014 11:23, Nick Williams <[email protected]> wrote: > The problem is induced when the C++ code in the module (having been invoked > from a Python thread) prepares to call back into Python again by calling > PyGILState_Ensure.
The documentation of PyGILState_Ensure() says, indeed, that it's ok to call this function even if the current thread already owns the GIL. If PyPy's version deadlocks in this case, then it's a bug of PyPy. Please file it as a bug (https://bitbucket.org/pypy/pypy/issues; also look a bit in case a similar bug would be already reported and waiting there). You can also try to look in the implementation of PyGILState_Ensure() to make sure. (Sorry for the delay in answering, this is part of "cpyext", a part of PyPy that is missing a more dedicated person that would improve it. We still try to fix bugs if they come with a detailed step-by-step guide on how to reproduce them or a test case.) A bientôt, Armin. _______________________________________________ pypy-dev mailing list [email protected] https://mail.python.org/mailman/listinfo/pypy-dev
