cpython/Python
Miss Islington (bot) 49da170709
[3.12] gh-116510: Fix a Crash Due to Shared Immortal Interned Strings (gh-125205)
Fix a crash caused by immortal interned strings being shared between
sub-interpreters that use basic single-phase init. In that case, the string
can be used by an interpreter that outlives the interpreter that created and
interned it. For interpreters that share obmalloc state, also share the
interned dict with the main interpreter.

This is an un-revert of gh-124646 that then addresses the Py_TRACE_REFS
failures identified by gh-124785 (i.e. backporting gh-125709 too).

(cherry picked from commit f2cb399470, AKA gh-124865)

Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
2024-12-03 10:26:25 -07:00
..
clinic [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
deepfreeze
frozen_modules
_warnings.c [3.12] gh-105375: Improve PyErr_WarnExplicit() error handling (GH-105610) (#105659) 2023-06-11 19:51:30 +00:00
adaptive.md
asdl.c
asm_trampoline.S
assemble.c gh-87092: avoid gcc warning on uninitialized struct field in assemble.c (#104460) 2023-05-14 12:03:30 +01:00
ast.c [3.12] GH-112215: Backport C recursion changes (GH-115083) 2024-02-13 10:45:59 +01:00
ast_opt.c [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
ast_unparse.c [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
bltinmodule.c [3.12] gh-121153: Fix some errors with use of _PyLong_CompactValue() (GH-121154) 2024-07-17 07:58:25 +00:00
bootstrap_hash.c
bytecodes.c [3.12] gh-123083: Fix a potential use-after-free in ``STORE_ATTR_WITH… (#123237) 2024-08-23 01:37:40 +09:00
ceval.c [3.12] gh-112716: Fix SystemError when __builtins__ is not a dict (GH-112770) (GH-113103) 2023-12-14 12:54:25 +00:00
ceval_gil.c [3.12] gh-108987: Fix _thread.start_new_thread() race condition (#109135) (#110342) 2023-10-04 11:20:31 +00:00
ceval_macros.h GH-104580: Don't cache eval breaker in interpreter (GH-104581) 2023-05-18 10:08:33 +01:00
codecs.c [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
compile.c [3.12] Fix possible null pointer dereference of freevars in _PyCompile_LookupArg (gh-126238) (#126474) 2024-11-06 07:56:12 +00:00
condvar.h
context.c [3.12] gh-120811: Fix reference leak upon _PyContext_Exit failure (GH-120812) (#120844) 2024-06-22 16:44:31 +05:30
dtoa.c [3.12] gh-91565: Replace bugs.python.org links with Devguide/GitHub ones (GH-91568) (GH-117890) 2024-04-15 12:59:34 +00:00
dup2.c
dynamic_annotations.c
dynload_hpux.c
dynload_shlib.c
dynload_stub.c
dynload_win.c gh-102255: Improve build support for Windows API partitions (GH-102256) 2023-03-09 21:09:12 +00:00
emscripten_signal.c
errors.c [3.12] gh-124188: Fix PyErr_ProgramTextObject() (GH-124189) (GH-124426) 2024-09-24 08:53:54 +00:00
fileutils.c gh-111856: Fix os.fstat on windows with FAT32 and exFAT filesystem (GH-112038) 2023-11-13 16:25:01 +00:00
flowgraph.c [3.12] gh-113297: Fix segfault in compiler for with statement with 19 context managers (#113327) (#113404) 2023-12-23 13:29:11 +00:00
formatter_unicode.c
frame.c [3.12] gh-119897: Revert buggy optimization which was removed in 3.13 (#120467) 2024-06-18 10:45:40 +01:00
frozen.c [3.12] gh-106560: Fix redundant declarations in Python/frozen.c (#112612) (#112651) 2023-12-03 11:54:59 +00:00
frozenmain.c
future.c [3.12] gh-126139: Improve error message location for future statement with unknown feature (GH-126140) (#126160) 2024-10-30 00:54:32 +00:00
generated_cases.c.h [3.12] gh-123083: Fix a potential use-after-free in ``STORE_ATTR_WITH… (#123237) 2024-08-23 01:37:40 +09:00
getargs.c [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
getcompiler.c
getcopyright.c
getopt.c
getplatform.c
getversion.c
hamt.c
hashtable.c [3.12] gh-106931: Intern Statically Allocated Strings Globally (gh-107272) (gh-110713) 2023-11-27 23:51:12 +00:00
import.c [3.12] gh-127208: Reject null character in _imp.create_dynamic() (#127400) (#127419) 2024-11-29 17:03:24 +01:00
importdl.c
importdl.h
initconfig.c [3.12] gh-90300: Remove reference to PYTHON_FROZEN_MODULES in Python CLI help (GH-117035) 2024-03-19 20:05:08 +00:00
instrumentation.c [3.12] gh-109371: Fix monitoring with instruction events set (gh-109385) (#109542) 2023-09-18 17:40:51 +02:00
intrinsics.c gh-103763: Implement PEP 695 (#103764) 2023-05-15 20:36:23 -07:00
legacy_tracing.c [3.12] gh-122029: Log call events in sys.setprofile when it's a method with c function (GH-122072) (GH-122206) 2024-07-23 22:44:43 +00:00
makeopcodetargets.py gh-98040: Remove just the imp module (#98573) 2023-04-28 16:17:58 -07:00
marshal.c [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
modsupport.c [3.12] gh-86493: Fix possible leaks in some modules initialization (GH-106768) (GH-106855) 2023-07-18 15:14:10 +03:00
mysnprintf.c
mystrtoul.c
opcode_metadata.h [3.12] gh-109118: Fix runtime crash when NameError happens in PEP 695 function (GH-109123) (#109173) 2023-09-12 15:59:09 +02:00
opcode_targets.h gh-103865: add monitoring support to LOAD_SUPER_ATTR (#103866) 2023-05-16 10:29:00 -06:00
pathconfig.c
perf_trampoline.c [3.12] gh-113343: Fix error check on mmap(2) (GH-113342) (#113374) 2023-12-21 19:44:15 +00:00
preconfig.c
pyarena.c
pyctype.c
pyfpe.c
pyhash.c
pylifecycle.c [3.12] gh-116510: Fix a Crash Due to Shared Immortal Interned Strings (gh-125205) 2024-12-03 10:26:25 -07:00
pymath.c
pystate.c [3.12] gh-116510: Fix a Crash Due to Shared Immortal Interned Strings (gh-125205) 2024-12-03 10:26:25 -07:00
pystrcmp.c
pystrhex.c
pystrtod.c gh-104263: Rely on Py_NAN and introduce Py_INFINITY (GH-104202) 2023-05-10 17:44:52 +01:00
Python-ast.c [3.12] gh-126105: Fix crash in ast module, when ._fields is delet… (#126132) 2024-10-29 20:20:40 +02:00
Python-tokenize.c [3.12] gh-120343: Fix column offsets of multiline tokens in tokenize (GH-120391) (#120428) 2024-06-12 19:10:35 +00:00
pythonrun.c [3.12] gh-113358: Fix rendering tracebacks with exceptions with a broken __getattr__ (GH-113359) (#114173) 2024-01-21 17:12:17 +00:00
pytime.c
README
specialize.c [3.12] Check for valid tp_version_tag in specializer (gh-89811) (gh-114216) 2024-01-20 04:45:33 +08:00
stdlib_module_names.h [3.12] gh-123892: Add "_wmi" to sys.stdlib_module_names (GH-123893) (#123897) 2024-09-10 10:11:56 +00:00
structmember.c [3.12] gh-115011: Improve support of __index__() in setters of members with unsigned integer type (GH-115029) (GH-115294) 2024-02-11 11:56:17 +00:00
suggestions.c [3.12] gh-106030: Miscellaneous fixes in Python/suggestions.c (GH-106031) (#106036) 2023-06-26 20:43:20 -07:00
symtable.c [3.12] gh-119666: fix multiple class-scope comprehensions referencing __class__ (GH-120295) (#120300) 2024-06-10 00:37:15 -04:00
sysmodule.c [3.12] gh-113993: Make interned strings mortal (GH-120520, GH-121364, GH-121903, GH-122303) (#123065) 2024-09-27 13:28:48 -07:00
thread.c gh-94673: Properly Initialize and Finalize Static Builtin Types for Each Interpreter (gh-104072) 2023-05-01 19:36:00 -06:00
thread_nt.h
thread_pthread.h [3.12] gh-112536: Add TSAN build on Github Actions (GH-116872) 2024-03-18 09:52:54 +00:00
thread_pthread_stubs.h
traceback.c [3.12] gh-123967: Fix faulthandler for trampoline frames (#127329) (#127363) 2024-11-28 13:57:35 +00:00
tracemalloc.c [3.12] gh-121390: tracemalloc: Fix tracebacks memory leak (GH-121391) (#121393) 2024-07-05 06:59:06 +00:00

Miscellaneous source files for the main Python shared library