summaryrefslogtreecommitdiffstats
path: root/PC
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2024-05-29 19:47:47 (GMT)
committerGitHub <noreply@github.com>2024-05-29 19:47:47 (GMT)
commitdcfbd3be9f1e0ba7aa32214e8f5f7f2ea4375a28 (patch)
treec18442ddd58bc4e2b883e7a52343be4abb55f47c /PC
parent40a024c9835cddd85f14bab4b1e8f6545a621208 (diff)
downloadcpython-dcfbd3be9f1e0ba7aa32214e8f5f7f2ea4375a28.zip
cpython-dcfbd3be9f1e0ba7aa32214e8f5f7f2ea4375a28.tar.gz
cpython-dcfbd3be9f1e0ba7aa32214e8f5f7f2ea4375a28.tar.bz2
[3.13] gh-119525: Fix deadlock with `_PyType_Lookup` and the GIL (GH-119527) (#119746)
The deadlock only affected the free-threaded build and only occurred when the GIL was enabled at runtime. The `Py_DECREF(old_name)` call might temporarily release the GIL while holding the type seqlock. Another thread may spin trying to acquire the seqlock while holding the GIL. The deadlock occurred roughly 1 in ~1,000 runs of `pool_in_threads.py` from `test_multiprocessing_pool_circular_import`. (cherry picked from commit c22323cd1c200ca1b22c47af95f67c4b2d661fe7) Co-authored-by: Sam Gross <colesbury@gmail.com>
Diffstat (limited to 'PC')
0 files changed, 0 insertions, 0 deletions