Remove async and non-blocking page flip support

It doesn't work well in practice for a few major reasons:
- It can result in the decoder writing on DMA-BUFs being used by the display
- It can generate page flip events that collide with Qt/SDL
- It can stall the decoder if the DMA-BUF has a fence on it from the display driver
This commit is contained in:
Cameron Gutman
2026-01-03 00:29:24 -06:00
parent c0846155c3
commit 2972022ced
2 changed files with 45 additions and 180 deletions
+1 -2
View File
@@ -164,7 +164,6 @@ DrmRenderer::~DrmRenderer()
m_PropSetter.disablePlane(m_OverlayPlanes[i]);
}
m_PropSetter.apply();
m_PropSetter.waitForFlipCompletion();
}
for (int i = 0; i < k_SwFrameCount; i++) {
@@ -495,7 +494,7 @@ bool DrmRenderer::initialize(PDECODER_PARAMETERS params)
atomic = true;
}
m_PropSetter.initialize(m_DrmFd, atomic, !params->enableVsync);
m_PropSetter.initialize(m_DrmFd, atomic);
drmModePlaneRes* planeRes = drmModeGetPlaneResources(m_DrmFd);
if (planeRes == nullptr) {