Barry Davis <barry_da...@stormagic.com> added the comment:

The behaviour I saw (32-bit only) was a python process getting stuck.

I got this from strace:
...
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
futex(0xb5acc000, FUTEX_WAIT, 0, NULL)  = -1 EAGAIN (Resource temporarily 
unavailable)
...

And this from gdb:
(gdb) bt
#0  0xb76fbc5d in __kernel_vsyscall ()
#1  0xb74af2a4 in sem_wait () from /lib/libpthread.so.0
#2  0xb69a5429 in ?? () from /usr/lib/python2.7/lib-dynload/_multiprocessing.so
#3  0xb75a262e in call_function (oparg=<optimized out>, pp_stack=0xbfb7f038) at 
Python/ceval.c:4033
#4  PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at 
Python/ceval.c:2679
#5  0xb75a2f7d in PyEval_EvalCodeEx (co=<optimized out>, globals=
    {'Queue': <type at remote 0xb69c43dc>, 'atexit': <module at remote 
0xb6d369bc>, 'Semaphore': <type at remote 0xb69b978c>, 'Empty': <type at remote 
0xb69b902c>, 'Full': <type at remote 0xb69b9204>, 'SimpleQueue': <type at 
remote 0xb69c478c>, 'assert_spawning': <function at remote 0xb69ba684>, 
'__all__': ['Queue', 'SimpleQueue', 'JoinableQueue'], '_multiprocessing': 
<module at remote 0xb6c16944>, '_sentinel': <object at remote 0xb726f4d0>, 
'__package__': 'multiprocessing', 'collections': <module at remote 0xb71bce3c>, 
'__doc__': None, 'Condition': <type at remote 0xb69c402c>, 'JoinableQueue': 
<type at remote 0xb69c45b4>, '__builtins__': {'bytearray': <type at remote 
0xb76c27e0>, 'IndexError': <type at remote 0xb76c6900>, 'all': <built-in 
function all>, 'help': <_Helper at remote 0xb71f824c>, 'vars': <built-in 
function vars>, 'SyntaxError': <type at remote 0xb76c6c80>, 'unicode': <type at 
remote 0xb76d6c00>, 'UnicodeDecodeError': <type at remote 0xb76c6420>, 
'memoryview': <type at r
 emote 0xb76cdda0>, 'isinstance...(truncated), locals=0x0, args=0xb535f5cc, 
argcount=2, kws=0xb535f5d4, kwcount=0, defs=0xb69b6058, defcount=2, 
closure=0x0) at Python/ceval.c:3265
#6  0xb75a0f3d in fast_function (nk=0, na=<optimized out>, n=2, 
pp_stack=0xbfb7f178, func=<function at remote 0xb69c51b4>) at 
Python/ceval.c:4129
#7  call_function (oparg=<optimized out>, pp_stack=0xbfb7f178) at 
Python/ceval.c:4054
#8  PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at 
Python/ceval.c:2679
...
(gdb) py-bt
#4 Frame 0xb536602c, for file /usr/lib/python2.7/multiprocessing/queues.py, 
line 101, in put (self=<Queue(_writer=<_multiprocessing.Connection at remote 
0x96878c8>, _recv=<built-in method recv of _multiprocessing.Connection object 
at remote 0x967ddc8>, _thread=None, _sem=<BoundedSemaphore(release=<built-in 
method release of _multiprocessing.SemLock object at remote 0xb53427c0>, 
acquire=<built-in method acquire of _multiprocessing.SemLock object at remote 
0xb53427c0>, _semlock=<_multiprocessing.SemLock at remote 0xb53427c0>) at 
remote 0xb53425cc>, _buffer=<collections.deque at remote 0xb533f844>, 
_closed=False, _send=<built-in method send of _multiprocessing.Connection 
object at remote 0x96878c8>, _jointhread=None, _reader=None, _opid=3752, 
_rlock=<Lock(release=<built-in method release of _multiprocessing.SemLock 
object at remote 0xb5342420>, acquire=<built-in method acquire of 
_multiprocessing.SemLock object at remote 0xb5342420>, 
_semlock=<_multiprocessing.SemLock at remote 0xb53424
 20>) at remote 0xb534240c>, _...(truncated)
...

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue31171>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to