]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
[3.14] gh-145685: Stop the world when updating MRO of existing types (gh-145707)...
authorSam Gross <colesbury@gmail.com>
Tue, 10 Mar 2026 13:31:52 +0000 (09:31 -0400)
committerGitHub <noreply@github.com>
Tue, 10 Mar 2026 13:31:52 +0000 (09:31 -0400)
commit54024655ae7490b18fe36e6e38839b95edbfa471
tree85ade5613dc31baab8e9d4cc5db6ef5bbf5ad2a9
parenta5ed66df8ac5ef951f39a4e5591ac3895db4d140
[3.14] gh-145685: Stop the world when updating MRO of existing types (gh-145707) (#145715)

We already have a stop-the-world pause elsewhere in this code path
(type_set_bases) and this makes will make it easier to avoid contention
on the TYPE_LOCK when looking up names in the MRO hierarchy.

Also use deferred reference counting for non-immortal MROs.
(cherry picked from commit 0b65c88c2af6e09530a9aa21800771aa687371db)
Objects/typeobject.c