Re: [PATCH 1/2] drm: introduce page_flip_timeout()

From: Christian König

Date: Thu Jan 29 2026 - 09:46:19 EST


On 1/29/26 15:33, Hamza Mahfooz wrote:
>> Thanks a lot for that. What happens if you apply this?
>>
>> Can the higher level handling recover from that? E.g. continue after 10 second timeout.
>>
>
> Without my series applied it just stays stuck (i.e. the CRTC is still on
> the last rendered frame).

Perfect, exactly what I expected.

Can you go into function amdgpu_dm_atomic_commit_tail() where drm_atomic_helper_wait_for_flip_done() is called and add some manual recovery to signal the atomic commit?

Very roughly from the front of my mind:
1. Grab the event lock.
2. Double check if it didn't signaled between returning from drm_atomic_helper_wait_for_flip_done() and taking the lock.
3. If it is still not signaled, signal it manually just like the interrupt handler would do.
4. Drop the lock.

Thanks,
Christian.