Uh oh!
There was an error while loading. Please reload this page.
GH-133261: Make sure that the GC doesn't untrack objects in trashcan - #133431
Conversation
Uh oh!
There was an error while loading. Please reload this page.
vstinner
left a comment
There was a problem hiding this comment.
LGTM.
This change can explain a lot of very weird bugs and crashes that I saw last days on buildbots and GitHub CIs.
vstinner
commented
May 5, 2025
test_external_inspection failed:
I wrote a fix for this one: #133433. |
vstinner
commented
May 5, 2025
Without this change, test_frame crash after a few attempts (between 1 and 3). With this change, test_frame does no longer crash. I ran |
vstinner
commented
May 5, 2025
bedevere-bot
commented
May 5, 2025
|
vstinner
commented
May 5, 2025
That's not good, many tests failed with |
markshannon
commented
May 5, 2025
That's a 32 bit machine, right? |
The trashcan stores pointers in the reference count field. This could make the object appear immortal causing the GC to untrack it.
This PR makes sure that those pointers are stored in such a way as to never appear immortal.