cpython/Python
Miss Islington (bot) 56cce1ca84 [3.7] bpo-33021: Release the GIL during fstat() calls (GH-6019) (GH-6159)
fstat may block for long time if the file descriptor is on a
non-responsive NFS server, hanging all threads. Most fstat() calls are
handled by _Py_fstat(), releasing the GIL internally, but but
_Py_fstat_noraise() does not release the GIL, and most calls release the
GIL explicitly around it.

This patch fixes last 2 calls to _Py_fstat_no_raise(), avoiding hangs
when calling:
- mmap.mmap()
- os.urandom()
- random.seed()
(cherry picked from commit 4484f9dca9)

Co-authored-by: Nir Soffer <nirsof@gmail.com>
2018-03-20 20:16:30 +01:00
..
clinic bpo-32436: Implement PEP 567 (#5027) 2018-01-22 19:11:18 -05:00
Python-ast.c bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222) 2018-01-25 17:49:40 +09:00
README
_warnings.c bpo-32591: fix abort in _PyErr_WarnUnawaitedCoroutine during shutdown (#5337) 2018-01-26 14:28:31 -05:00
asdl.c
ast.c Don't hide unexpected errors in PyErr_WarnExplicitObject(). (#4585) 2017-12-01 08:40:23 +02:00
ast_opt.c bpo-9566: Fix size_t=>int downcast warnings (#5230) 2018-01-18 11:15:25 +01:00
ast_unparse.c [3.7] bpo-32711: Fix warnings for Python/ast_unparse.c (GH-5426) (#5475) 2018-02-01 18:41:24 +01:00
bltinmodule.c bpo-32674: Improve the docstring for __import__ (GH-5339) (GH-5488) 2018-02-01 23:51:36 -05:00
bootstrap_hash.c [3.7] bpo-33021: Release the GIL during fstat() calls (GH-6019) (GH-6159) 2018-03-20 20:16:30 +01:00
ceval.c bpo-32550. Remove the STORE_ANNOTATION bytecode. (GH-5181) 2018-01-29 16:41:04 -08:00
ceval_gil.h
codecs.c bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222) 2018-01-25 17:49:40 +09:00
compile.c [3.7] bpo-33041: Add missed error checks when compile "async for" (GH-6053) (GH-6060) 2018-03-10 20:45:05 +02:00
condvar.h
context.c Fix some warnings produced by different compilers. (GH-5593) (GH-5600) 2018-02-09 17:56:34 +02:00
dtoa.c
dup2.c bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
dynamic_annotations.c bpo-32241: Add the const qualifire to declarations of umodifiable strings. (#4748) 2017-12-12 13:55:04 +02:00
dynload_aix.c
dynload_dl.c
dynload_hpux.c
dynload_shlib.c
dynload_stub.c
dynload_win.c
errors.c bpo-28994: PyErr_NormalizeException() no longer use C stack for recursion. (#2035) 2017-11-05 11:27:48 +02:00
fileutils.c bpo-32869: Fix incorrect dst buffer size for MultiByteToWideChar (GH-5739) 2018-02-18 10:40:07 -08:00
formatter_unicode.c bpo-31900: Fix localeconv() encoding for LC_NUMERIC (#4174) 2018-01-15 15:58:02 +01:00
frozen.c
frozenmain.c bpo-32241: Add the const qualifire to declarations of umodifiable strings. (#4748) 2017-12-12 13:55:04 +02:00
future.c bpo-32670: Enforce PEP 479. (#5327) 2018-01-26 15:24:24 -05:00
getargs.c [3.7] bpo-32746: Fix multiple typos (GH-5144) (GH-5520) 2018-02-03 20:41:43 -05:00
getcompiler.c closes bpo-31696: don't mention GCC in sys.version when building with clang (#3891) 2017-10-05 21:15:14 -07:00
getcopyright.c advance copyright years to 2018 (#5094) 2018-01-04 22:34:19 -08:00
getopt.c move pygetopt.h to internal (closes bpo-32264) (#4830) 2017-12-14 23:48:12 -08:00
getplatform.c bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
getversion.c bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
graminit.c bpo-30406: Make async and await proper keywords (#1669) 2017-10-05 23:24:46 -04:00
hamt.c Add two missing error checks in hamt.c (GH-5851) 2018-03-07 22:21:34 -08:00
import.c rename _imp initialization function to follow conventions (#5432) 2018-01-29 11:33:57 -08:00
importdl.c bpo-31315: Fix an assertion failure in imp.create_dynamic(), when spec.name is not a string. (#3257) 2017-09-19 14:39:47 +03:00
importdl.h
importlib.h bpo-32303 - Consistency fixes for namespace loaders (GH-5481) (#5503) 2018-02-02 19:49:25 -05:00
importlib_external.h bpo-32838: Fix Python versions in the table of magic numbers. (GH-5658) 2018-02-23 11:01:54 -08:00
makeopcodetargets.py
marshal.c bpo-32011: Revert "Issue #15480: Remove the deprecated and unused TYPE_INT64 code from marshal." (#4381) 2017-11-15 17:41:05 +02:00
modsupport.c
mysnprintf.c
mystrtoul.c
opcode_targets.h bpo-32550. Remove the STORE_ANNOTATION bytecode. (GH-5181) 2018-01-29 16:41:04 -08:00
pathconfig.c bpo-9566: Fix size_t=>int downcast warnings (#5230) 2018-01-18 11:15:25 +01:00
peephole.c bpo-29469: peephole: Remove const_stack (GH-4879) 2017-12-18 15:52:54 +09:00
pyarena.c
pyctype.c
pyfpe.c bpo-29137: Remove fpectl module (#4789) 2018-01-05 23:15:34 -08:00
pyhash.c Fix some warnings produced by different compilers. (GH-5593) (GH-5600) 2018-02-09 17:56:34 +02:00
pylifecycle.c rename _imp initialization function to follow conventions (#5432) 2018-01-29 11:33:57 -08:00
pymath.c
pystate.c bpo-33005: Fix _PyGILState_Reinit() (GH-6001) 2018-03-06 05:52:27 -08:00
pystrcmp.c
pystrhex.c bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
pystrtod.c Add the const qualifier to "char *" variables that refer to literal strings. (#4370) 2017-11-11 13:06:26 +02:00
pythonrun.c closes bpo-31650: PEP 552 (Deterministic pycs) implementation (#4575) 2017-12-09 10:26:52 -08:00
pytime.c Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
strdup.c bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
structmember.c
symtable.c bpo-32836: Remove obsolete code from symtable pass (GH-5680) 2018-03-10 15:11:47 -08:00
sysmodule.c bpo-32591: Add native coroutine origin tracking (#5250) 2018-01-21 09:44:07 -05:00
thread.c bpo-32241: Add the const qualifire to declarations of umodifiable strings. (#4748) 2017-12-12 13:55:04 +02:00
thread_nt.h Fix typo in thread_nt.h code comment (GH-5211) 2018-01-17 15:21:01 -08:00
thread_pthread.h bpo-32593: Drop FreeBSD 9 and older support (#5232) 2018-01-22 18:32:50 +01:00
traceback.c bpo-30579: Allow TracebackType creation and tb_next mutation from Python (GH-4793) 2018-01-07 23:30:18 +10:00
wordcode_helpers.h bpo-31338 (#3374) 2017-09-14 18:13:16 -07:00

README

Miscellaneous source files for the main Python shared library