aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Tools/tsan
diff options
context:
space:
mode:
authorNeil Schemenauer <nas-github@arctrix.com>2025-04-28 23:38:29 -0700
committerGitHub <noreply@github.com>2025-04-28 23:38:29 -0700
commiteecafc33800c84ecb67f5d3ed819fbed057677ab (patch)
tree07d41adf24f52d8a1f9c739cf016c890920ea788 /Tools/tsan
parent219b1f9d1d97e271213fe324b94ed544e890630b (diff)
downloadcpython-eecafc33800c84ecb67f5d3ed819fbed057677ab.tar.gz
cpython-eecafc33800c84ecb67f5d3ed819fbed057677ab.zip
Revert gh-127266: avoid data races when updating type slots (gh-131174) (gh-133129)
This is triggering deadlocks in test_opcache. See GH-133130 for stack trace.
Diffstat (limited to 'Tools/tsan')
-rw-r--r--Tools/tsan/suppressions_free_threading.txt8
1 files changed, 7 insertions, 1 deletions
diff --git a/Tools/tsan/suppressions_free_threading.txt b/Tools/tsan/suppressions_free_threading.txt
index 404c3015736..21224e490b8 100644
--- a/Tools/tsan/suppressions_free_threading.txt
+++ b/Tools/tsan/suppressions_free_threading.txt
@@ -12,12 +12,15 @@
# These warnings trigger directly in a CPython function.
+race_top:assign_version_tag
+race_top:_Py_slot_tp_getattr_hook
race_top:dump_traceback
race_top:fatal_error
race_top:_PyFrame_GetCode
race_top:_PyFrame_Initialize
race_top:_PyObject_TryGetInstanceAttribute
race_top:PyUnstable_InterpreterFrame_GetLine
+race_top:type_modified_unlocked
race_top:write_thread_id
# gh-129068: race on shared range iterators (test_free_threading.test_zip.ZipThreading.test_threading)
@@ -26,6 +29,9 @@ race_top:rangeiter_next
# gh-129748: test.test_free_threading.test_slots.TestSlots.test_object
race_top:mi_block_set_nextx
+# gh-127266: type slot updates are not thread-safe (test_opcache.test_load_attr_method_lazy_dict)
+race_top:update_one_slot
+
# https://gist.github.com/mpage/6962e8870606cfc960e159b407a0cb40
thread:pthread_create
@@ -40,4 +46,4 @@ race:list_inplace_repeat_lock_held
# PyObject_Realloc internally does memcpy which isn't atomic so can race
# with non-locking reads. See #132070
-race:PyObject_Realloc
+race:PyObject_Realloc \ No newline at end of file