diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2024-06-06 18:03:01 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-06 18:03:01 (GMT) |
commit | 517733ce3cd7937dc527f1f191582c21cfb9b685 (patch) | |
tree | 64e0f07217be36c2991f65c8d9cd6c02114d5c68 /Tools | |
parent | 015ddfeca5e39a3796ee144d07accb1d5c7e7522 (diff) | |
download | cpython-517733ce3cd7937dc527f1f191582c21cfb9b685.zip cpython-517733ce3cd7937dc527f1f191582c21cfb9b685.tar.gz cpython-517733ce3cd7937dc527f1f191582c21cfb9b685.tar.bz2 |
[3.13] gh-117657: Fix TSAN race involving import lock (GH-118523) (#120169)
This adds a `_PyRecursiveMutex` type based on `PyMutex` and uses that
for the import lock. This fixes some data races in the free-threaded
build and generally simplifies the import lock code.
(cherry picked from commit e21057b99967eb5323320e6d1121955e0cd2985e)
Co-authored-by: Sam Gross <colesbury@gmail.com>
Diffstat (limited to 'Tools')
-rw-r--r-- | Tools/tsan/suppressions_free_threading.txt | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/Tools/tsan/suppressions_free_threading.txt b/Tools/tsan/suppressions_free_threading.txt index 8b64d1f..cb48a30 100644 --- a/Tools/tsan/suppressions_free_threading.txt +++ b/Tools/tsan/suppressions_free_threading.txt @@ -26,8 +26,6 @@ race:free_threadstate race_top:_add_to_weak_set race_top:_in_weak_set race_top:_PyEval_EvalFrameDefault -race_top:_PyImport_AcquireLock -race_top:_PyImport_ReleaseLock race_top:_PyType_HasFeature race_top:assign_version_tag race_top:insertdict @@ -41,9 +39,7 @@ race_top:set_discard_entry race_top:set_inheritable race_top:Py_SET_TYPE race_top:_PyDict_CheckConsistency -race_top:_PyImport_AcquireLock race_top:_Py_dict_lookup_threadsafe -race_top:_imp_release_lock race_top:_multiprocessing_SemLock_acquire_impl race_top:dictiter_new race_top:dictresize |