You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Some areas of typeobject are still not thread safe after fixing mro. Those at least include:
tp_flags - most of these that change at runtime are probably protected by locks after MRO (e.g. Py_TPFLAGS_VALID_VERSION_TAG and various flags set while readying). But at least some get modified outside of the lock still (e.g. Py_TPFLAGS_IS_ABSTRACT, Py_TPFLAGS_SEQUENCE and Py_TPFLAGS_MAPPING via the abc module). These should maybe all be atomic and/ors or protected by the same type lock.
tp_watched - also needs atomic and/or in PyType_Watch and PyType_Unwatch
CPython versions tested on:
CPython main branch
Operating systems tested on:
No response
The text was updated successfully, but these errors were encountered:
Bug report
Bug description:
Some areas of typeobject are still not thread safe after fixing mro. Those at least include:
tp_flags
- most of these that change at runtime are probably protected by locks after MRO (e.g.Py_TPFLAGS_VALID_VERSION_TAG
and various flags set while readying). But at least some get modified outside of the lock still (e.g. Py_TPFLAGS_IS_ABSTRACT,Py_TPFLAGS_SEQUENCE
andPy_TPFLAGS_MAPPING
via theabc
module). These should maybe all be atomic and/ors or protected by the same type lock.tp_watched
- also needs atomic and/or inPyType_Watch
andPyType_Unwatch
CPython versions tested on:
CPython main branch
Operating systems tested on:
No response
The text was updated successfully, but these errors were encountered: