Skip to content

Conversation

emilk
Copy link
Owner

@emilk emilk commented Aug 21, 2025

I'm trying to debug a suspected deadlock in the CI for #7467

Since we use our own mutex wrappers, we can just panic if the lock is too slow. Ugly and effective :)

Copy link

Preview available at https://egui-pr-preview.github.io/pr/7468-emilkmutexes-should-be-quick
Note that it might take a couple seconds for the update to show up after the preview_build workflow has completed.

@emilk emilk merged commit 1da1d57 into main Aug 21, 2025
48 of 50 checks passed
@emilk emilk deleted the emilk/mutexes-should-be-quick branch August 21, 2025 13:31
lucasmerlin added a commit that referenced this pull request Sep 4, 2025
* Recently CI runs started to hang randomly:
https://github.com/emilk/egui/actions/runs/17427449210/job/49477714447?pr=7359

This fixes the deadlock and adds the basic deadlock detection we also
added to Mutexes in #7468.

Also, interestingly, the more sophisticated deadlock detection (behind
the deadlock_detection feature) didn't catch this for some reason. I
wonder why it exists in the first place, when parking_lot also has built
in deadlock detection? It also seems to make tests slower, widget_tests
usually needs ~30s, with the deadlock detection removed its only ~12s.
lucasmerlin pushed a commit that referenced this pull request Sep 4, 2025
I'm trying to debug a suspected deadlock in the CI for
#7467

Since we use our own mutex wrappers, we can just panic if the lock is
too slow. Ugly and effective :)
lucasmerlin added a commit that referenced this pull request Sep 4, 2025
* Recently CI runs started to hang randomly:
https://github.com/emilk/egui/actions/runs/17427449210/job/49477714447?pr=7359

This fixes the deadlock and adds the basic deadlock detection we also
added to Mutexes in #7468.

Also, interestingly, the more sophisticated deadlock detection (behind
the deadlock_detection feature) didn't catch this for some reason. I
wonder why it exists in the first place, when parking_lot also has built
in deadlock detection? It also seems to make tests slower, widget_tests
usually needs ~30s, with the deadlock detection removed its only ~12s.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant