Skip to content

platforms/drm: waitIdle before updating outputs

Xaver Hugl requested to merge work/waitidle into master

KMS can only ever have one frame pending at the moment. If we update the outputs while a pageflip is still pending on any output the atomic commit will fail with EBUSY, which both invalidates the testing for output configuration and makes applying the wanted configuration fail.

This can be removed again once KMS gains the ability to do mailbox presentation; that will likely still take a while though.

In practice we don't seem to hit this normally but with drm leasing I have observed it once today. Just to be safe we should backport it to 5.23, too.

Merge request reports