Marcin Bachry <[email protected]> added the comment:
Here's the backtrace:
#0 sem_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:85
#1 0x00007fcd0234a6e8 in PyThread_acquire_lock (lock=0x183f3f0, waitflag=128)
at Python/thread_pthread.h:349
#2 0x00007fcd02311fa4 in PyEval_RestoreThread (tstate=0x17a9b00) at
Python/ceval.c:356
#3 0x00007fcd02336a28 in PyGILState_Ensure () at Python/pystate.c:592
#4 0x00007fcd013fcec1 in _CallPythonObject (cif=0x183f3f0, resp=0x80,
args=0x7fccff153f40, userdata=<value optimized out>)
at /home/marcin/Desktop/python/python2.x-hg/Modules/_ctypes/callbacks.c:220
#5 closure_fcn (cif=0x183f3f0, resp=0x80, args=0x7fccff153f40, userdata=<value
optimized out>)
at /home/marcin/Desktop/python/python2.x-hg/Modules/_ctypes/callbacks.c:374
#6 0x00007fcd014044f0 in ffi_closure_unix64_inner (closure=<value optimized
out>, rvalue=<value optimized out>, reg_args=0x246, argp=0x0)
at
/home/marcin/Desktop/python/python2.x-hg/Modules/_ctypes/libffi/src/x86/ffi64.c:566
#7 0x00007fcd01404b68 in ffi_closure_unix64 () at
/home/marcin/Desktop/python/python2.x-hg/Modules/_ctypes/libffi/src/x86/unix64.S:230
#8 0x00007fccff572429 in ?? () from /lib/libfuse.so.2
#9 0x00007fccff5704fa in fuse_session_loop () from /lib/libfuse.so.2
#10 0x00007fccff1576e4 in ?? ()
#11 0x00007fccff154188 in ?? ()
#12 0x00007fccff3580e0 in ?? ()
#13 0x000000000192e2f0 in ?? ()
#14 0x0000000400000000 in ?? ()
#15 0x0000000000000001 in ?? ()
#16 0x00000000016ff5e0 in ?? ()
#17 0x0000000000000001 in ?? ()
#18 0x0000000000000000 in ?? ()
All calls to native POSIX functions seem to be wrapped with
Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS except of opendir() and closedir().
When I fix it (as in attached patch), call_hello.py doesn't block anymore.
----------
keywords: +patch
nosy: +marcin.bachry
Added file: http://bugs.python.org/file15953/posix-opendir-and-gil.diff
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue7736>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com