-
-
Notifications
You must be signed in to change notification settings - Fork 32k
PyList_SetItem
missing atomic store
#129643
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
interpreter-core
(Objects, Python, Grammar, and Parser dirs)
topic-free-threading
type-bug
An unexpected behavior, bug, or error
Comments
There is a similar issue in the function Lines 467 to 470 in 979d766
|
kumaraditya303
added a commit
that referenced
this issue
Feb 5, 2025
kumaraditya303
added a commit
to kumaraditya303/cpython
that referenced
this issue
Feb 5, 2025
kumaraditya303
added a commit
that referenced
this issue
Feb 5, 2025
sobolevn
added a commit
to sobolevn/cpython
that referenced
this issue
Feb 5, 2025
sobolevn
added a commit
that referenced
this issue
Feb 6, 2025
sobolevn
added a commit
to sobolevn/cpython
that referenced
this issue
Feb 6, 2025
…ythonGH-129680) (cherry picked from commit 63f0406) Co-authored-by: sobolevn <[email protected]>
srinivasreddy
pushed a commit
to srinivasreddy/cpython
that referenced
this issue
Feb 7, 2025
srinivasreddy
pushed a commit
to srinivasreddy/cpython
that referenced
this issue
Feb 7, 2025
cmaloney
pushed a commit
to cmaloney/cpython
that referenced
this issue
Feb 8, 2025
cmaloney
pushed a commit
to cmaloney/cpython
that referenced
this issue
Feb 8, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
interpreter-core
(Objects, Python, Grammar, and Parser dirs)
topic-free-threading
type-bug
An unexpected behavior, bug, or error
Uh oh!
There was an error while loading. Please reload this page.
Bug report
PyList_SetItem
currently usesPy_XSETREF
to set the item and decref the old one, however the store is not atomic as such it can race with a concurrent read. The fix is to use a atomic store with release order to correctly set the new item and then decref the old object.cc @colesbury @Yhg1s
Linked PRs
PyList_SetItem
#129644PyList_SetItem
(#129644) #129677PyList_Insert
in free-threading builds #129680PyList_Insert
in free-threading builds (GH-129680) #129725The text was updated successfully, but these errors were encountered: