Skip to content

fix(renderer.cpp): bound GPU fence waits to the vsync period instead of forever - #1127

Open
twaik wants to merge 1 commit into
masterfrom
vsync-bounded-fence-wait
Open

twaik wants to merge 1 commit into
masterfrom
vsync-bounded-fence-wait

Conversation

@twaik

@twaik twaik commented Sep 17, 2026

Copy link
Copy Markdown
Member

Some GPU drivers lose a fence's completion signal across a power state transition, wedging the renderer thread (and everything waiting on state->lock) permanently. Track the last vsync and frame period via the shared state, and time out the wait at roughly one frame period instead of EGL_FOREVER.

@twaik
twaik force-pushed the vsync-bounded-fence-wait branch from bf75b15 to 7258375 Compare September 17, 2026 20:33
@twaik twaik changed the title renderer: bound GPU fence waits to the vsync period instead of forever fix(renderer.cpp): bound GPU fence waits to the vsync period instead of forever Sep 17, 2026
…of forever

Some GPU drivers lose a fence's completion signal across a power state
transition, wedging the renderer thread (and everything waiting on
state->lock) permanently. Track the last vsync and frame period via the
shared state, and time out the wait at roughly one frame period instead
of EGL_FOREVER.
@twaik
twaik force-pushed the vsync-bounded-fence-wait branch from 7258375 to 6b0bc5d Compare September 25, 2026 07:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: the desktop freezes unless i reopen the main termux app, even with shareduid build

1 participant