[Python-checkins] cpython (3.3): Don't deadlock on a reentrant call.

Ezio Melotti ezio.melotti at gmail.com
Fri Mar 1 14:22:57 CET 2013


Hi,

On Fri, Mar 1, 2013 at 2:02 PM, raymond.hettinger
<python-checkins at python.org> wrote:
> http://hg.python.org/cpython/rev/1920422626a5
> changeset:   82437:1920422626a5
> branch:      3.3
> parent:      82435:43ac02b7e322
> user:        Raymond Hettinger <python at rcn.com>
> date:        Fri Mar 01 03:47:57 2013 -0800
> summary:
>   Don't deadlock on a reentrant call.

this seems to have broken builds without threads.
After this commit I get a compile error:
$ ./configure --without-threads --with-pydebug && make -j2
[...]
./python -E -S -m sysconfig --generate-posix-vars
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Could not import runpy module
Exception ignored in: 'garbage collection'
Traceback (most recent call last):
  File "/home/wolf/dev/py/py3k/Lib/runpy.py", line 16, in <module>
    import imp
  File "/home/wolf/dev/py/py3k/Lib/imp.py", line 23, in <module>
    import tokenize
  File "/home/wolf/dev/py/py3k/Lib/tokenize.py", line 28, in <module>
    import re
  File "/home/wolf/dev/py/py3k/Lib/re.py", line 124, in <module>
    import functools
  File "/home/wolf/dev/py/py3k/Lib/functools.py", line 22, in <module>
    from dummy_threading import RLock
  File "/home/wolf/dev/py/py3k/Lib/dummy_threading.py", line 45, in <module>
    import threading
  File "/home/wolf/dev/py/py3k/Lib/threading.py", line 6, in <module>
    from time import sleep as _sleep
ImportError: No module named 'time'
Fatal Python error: unexpected exception during garbage collection

Current thread 0x00000000:
make: *** [pybuilddir.txt] Aborted (core dumped)

See also:
http://buildbot.python.org/all/builders/AMD64%20Fedora%20without%20threads%203.x/builds/4006
http://buildbot.python.org/all/builders/AMD64%20Fedora%20without%20threads%203.3/builds/516

(Also having tests for this change would be nice.)

Best Regards,
Ezio Melotti


More information about the Python-checkins mailing list