compositor-drm: Don't page flip before a mode is set
authorAnder Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Tue, 7 May 2013 11:16:59 +0000 (14:16 +0300)
committerKristian Høgsberg <krh@bitplanet.net>
Tue, 14 May 2013 14:21:54 +0000 (10:21 -0400)
commit95eb3a2eb470bd341ab078c7e48a28ffebc6dde1
tree891b678cf26e7902031e342bac4b27048a99e638
parentbe7c4dd2a0044955103786120b73bc9ee521326f
compositor-drm: Don't page flip before a mode is set

The function drm_output_start_repaint_loop() unconditionally issues a
page flip, even if the crtc for that output has not been enabled yet.
That causes the page flip to fail, and drm_output_repaint() is never
called.

Solve this by bypassing the initial page flip if the output needs a
mode set.

This has the caveat of affecting latency predictability for that first
frame and when a "driver" mode fullscreen surface causes a mode set.
However, on both cases the mode set would take an unpredictable amount
of time anyway.

https://bugs.freedesktop.org/show_bug.cgi?id=63812
https://bugs.freedesktop.org/show_bug.cgi?id=64183
src/Makefile.am
src/compositor-drm.c