cpython/Python
bobince 64838ce717
bpo-39847: EnterNonRecursiveMutex() uses GetTickCount64() (GH-18780)
The 32-bit (49-day) TickCount relied on in EnterNonRecursiveMutex can overflow
in the gap between the 'target' time and the 'now' time WaitForSingleObjectEx
returns, causing the loop to think it needs to wait another 49 days. This is
most likely to happen when the machine is hibernated during
WaitForSingleObjectEx.

This makes acquiring a lock/event/etc from the _thread or threading module
appear to never timeout.

Replace with GetTickCount64 - this is OK now Python no longer supports XP which
lacks it, and is in use for time.monotonic().

Co-authored-by: And Clover <and.clover@bromium.com>
2020-03-12 00:39:02 +01:00
..
clinic bpo-39489: Remove COUNT_ALLOCS special build (GH-18259) 2020-02-03 15:17:15 +01:00
Python-ast.c bpo-34822: Simplify AST for subscription. (GH-9605) 2020-03-10 18:52:34 +02:00
README Issue #18093: Factor out the programs that embed the runtime 2014-07-25 21:52:14 +10:00
_warnings.c bpo-39831: Remove outdated comment. (GH-18764) 2020-03-03 19:43:29 +02:00
asdl.c replace PY_SIZE_MAX with SIZE_MAX 2016-09-07 09:26:18 -07:00
ast.c bpo-34822: Simplify AST for subscription. (GH-9605) 2020-03-10 18:52:34 +02:00
ast_opt.c bpo-34822: Simplify AST for subscription. (GH-9605) 2020-03-10 18:52:34 +02:00
ast_unparse.c bpo-34822: Simplify AST for subscription. (GH-9605) 2020-03-10 18:52:34 +02:00
bltinmodule.c bpo-39245: Switch to public API for Vectorcall (GH-18460) 2020-02-11 17:46:57 +01:00
bootstrap_hash.c Fix typos in comments, docs and test names (#15018) 2019-07-30 18:16:13 -04:00
ceval.c bpo-39877: Deprecate PyEval_InitThreads() (GH-18892) 2020-03-10 01:28:54 +01:00
ceval_gil.h bpo-39877: take_gil() checks tstate_must_exit() twice (GH-18890) 2020-03-09 23:10:53 +01:00
codecs.c closes bpo-39630: Update pointers to string literals to be const char *. (GH-18510) 2020-02-13 20:42:56 -08:00
compile.c closes bpo-39922: Remove unused args from four functions. (GH-18893) 2020-03-10 19:18:12 -07:00
condvar.h Typo fix: "throuhgh" should be "through". (GH-16704) 2019-10-10 20:43:13 -07:00
context.c bpo-38979: fix ContextVar "__class_getitem__" method (GH-17497) 2019-12-08 03:35:59 -08:00
dtoa.c bpo-35081: Move dtoa.h header to the internal C API (GH-18489) 2020-02-12 22:54:42 +01:00
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 bpo-37752: Delete redundant Py_CHARMASK in normalizestring() (GH-15095) 2019-09-10 17:04:08 +01:00
dynload_dl.c Issue #24268: Fix import naming when loading extension modules. Patch by Petr Viktorin. 2015-05-23 14:13:41 -07:00
dynload_hpux.c bpo-36900: Fix compilation on HP-UX (GH-13614) 2019-05-28 12:24:00 +02:00
dynload_shlib.c bpo-36722: Debug build loads libraries built in release mode (GH-12952) 2019-04-26 01:40:00 +02:00
dynload_stub.c
dynload_win.c bpo-39553: Delete HAVE_SXS protected code (GH-18356) 2020-02-04 19:13:00 -08:00
errors.c bpo-39573: Use Py_IS_TYPE() macro to check for types (GH-18809) 2020-03-06 23:53:17 +01:00
fileutils.c bpo-38353: Add subfunctions to getpath.c (GH-16572) 2019-10-04 02:22:39 +02:00
formatter_unicode.c bpo-38249: Expand Py_UNREACHABLE() to __builtin_unreachable() in the release mode. (GH-16329) 2020-03-09 20:49:52 +02:00
frozen.c bpo-36540: PEP 570 -- Implementation (GH-12701) 2019-04-29 13:36:57 +01:00
frozenmain.c bpo-38304: PyConfig_InitPythonConfig() cannot fail anymore (GH-16509) 2019-10-01 12:06:16 +02:00
future.c bpo-34683: Make SyntaxError column offsets consistently 1-indexed (gh-9338) 2018-09-24 14:12:49 -07:00
getargs.c bpo-39573: Use Py_TYPE() macro in Python and Include directories (GH-18391) 2020-02-07 02:24:48 +01: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 Bring Python into the next decade. (GH-17801) 2020-01-02 18:56:34 -08:00
getopt.c Delete stale comment in Python/getopt.c. (GH-14719) 2019-08-19 18:35:13 -07: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-39702: Relax grammar restrictions on decorators (PEP 614) (GH-18570) 2020-03-03 14:25:44 -08:00
hamt.c bpo-39573: Clean up modules and headers to use Py_IS_TYPE() function (GH-18521) 2020-02-17 11:09:15 +01:00
import.c bpo-39882: Py_FatalError() logs the function name (GH-18819) 2020-03-07 00:54:20 +01:00
importdl.c bpo-39573: Finish converting to new Py_IS_TYPE() macro (GH-18601) 2020-03-04 14:15:20 +01:00
importdl.h PEP 489: Multi-phase extension module initialization 2015-05-23 22:24:10 +10:00
importlib.h bpo-38091: Import deadlock detection causes deadlock (GH-17518) 2020-03-02 17:37:25 -08:00
importlib_external.h bpo-38691: importlib ignores PYTHONCASEOK if -E is used (GH-18627) 2020-03-09 12:57:53 +01:00
importlib_zipimport.h bpo-39156: Break up COMPARE_OP into four logically distinct opcodes. (GH-17754) 2020-01-14 10:12:45 +00:00
initconfig.c closes bpo-39886: Remove unused arg from config_get_stdio_errors. (GH-18823) 2020-03-07 09:36:04 -08:00
makeopcodetargets.py makeopcodetargets.py: we need to import Lib/opcode.py 2016-03-26 01:04:37 +01:00
marshal.c closes bpo-39605: Fix some casts to not cast away const. (GH-18453) 2020-02-11 18:28:35 -08:00
modsupport.c bpo-38913: Fix segfault in Py_BuildValue("(s#O)", ...) if entered with exception raised. (GH-18656) 2020-03-02 08:42:39 +02:00
mysnprintf.c
mystrtoul.c bpo-37752: Delete redundant Py_CHARMASK in normalizestring() (GH-15095) 2019-09-10 17:04:08 +01:00
opcode_targets.h bpo-39320: Handle unpacking of **values in compiler (GH-18141) 2020-01-27 09:57:45 +00:00
pathconfig.c bpo-39882: Py_FatalError() logs the function name (GH-18819) 2020-03-07 00:54:20 +01:00
peephole.c bpo-38249: Expand Py_UNREACHABLE() to __builtin_unreachable() in the release mode. (GH-16329) 2020-03-09 20:49:52 +02:00
preconfig.c bpo-38304: Remove PyConfig.struct_size (GH-16500) (GH-16508) 2019-10-01 10:56:37 +02:00
pyarena.c bpo-36254: Fix invalid uses of %d in format strings in C. (GH-12264) 2019-03-13 22:59:55 +02:00
pyctype.c
pyfpe.c bpo-29137: Remove fpectl module (#4789) 2018-01-05 23:15:34 -08:00
pyhash.c closes bpo-39605: Fix some casts to not cast away const. (GH-18453) 2020-02-11 18:28:35 -08:00
pylifecycle.c bpo-38631: _PyGILState_Init() returns PyStatus (GH-18908) 2020-03-10 23:49:16 +01:00
pymath.c bpo-31031: Unify duplicate bits_in_digit and bit_length (GH-2866) 2020-01-16 15:09:19 +01:00
pystate.c bpo-38631: _PyGILState_Init() returns PyStatus (GH-18908) 2020-03-10 23:49:16 +01:00
pystrcmp.c
pystrhex.c Fix unused variable and signed/unsigned warnings (GH-15537) 2019-08-27 09:55:13 -07:00
pystrtod.c bpo-35081: Move dtoa.h header to the internal C API (GH-18489) 2020-02-12 22:54:42 +01:00
pythonrun.c bpo-39542: Move object.h debug functions to internal C API (GH-18331) 2020-02-03 17:28:26 +01:00
pytime.c bpo-38249: Expand Py_UNREACHABLE() to __builtin_unreachable() in the release mode. (GH-16329) 2020-03-09 20:49:52 +02:00
strdup.c bpo-36623: Clean parser headers and include files (GH-12253) 2019-04-13 17:05:14 +01:00
structmember.c Added the const qualifier to char* variables that refer to readonly internal 2016-11-20 10:16:47 +02:00
symtable.c bpo-34822: Simplify AST for subscription. (GH-9605) 2020-03-10 18:52:34 +02:00
sysmodule.c bpo-1294959: Add sys.platlibdir attribute (GH-18381) 2020-03-10 09:53:09 +01:00
thread.c bpo-38096: Clean up the "struct sequence" / "named tuple" docs (GH-15895) 2019-09-11 15:17:32 +01:00
thread_nt.h bpo-39847: EnterNonRecursiveMutex() uses GetTickCount64() (GH-18780) 2020-03-12 00:39:02 +01:00
thread_pthread.h bpo-38852: Set thread stack size to 8 Mb for debug builds on android platforms (GH-17337) 2019-12-08 08:40:14 +01:00
traceback.c bpo-38070: _Py_DumpTraceback() writes <no Python frame> (GH-16244) 2019-09-17 23:36:16 +02: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