Skip to content

More gil-disabled type thread safety #114214

Closed as not planned
Closed as not planned
@DinoV

Description

@DinoV

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 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

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions