summaryrefslogtreecommitdiff
path: root/src/sna
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2016-04-18 20:56:05 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2016-04-18 20:56:05 +0100
commit562ae1f29fd4946c5204bacc9eaa4ee13e809753 (patch)
tree33f705d26f1a15de0b70104d2541c5d94c556c4c /src/sna
parent680ae24ea9ae050a126d7e31054f04a6182c2aa4 (diff)
sna/present: Postpone recursed vblank during TearFree by 1ms
Avoid postponing until the next vblank to avoid continually recursing every TearFree update, and to minimise the presentation delay. References: https://bugs.freedesktop.org/show_bug.cgi?id=94982 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna')
-rw-r--r--src/sna/sna_present.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/sna/sna_present.c b/src/sna/sna_present.c
index 2f181a9f..f5d15154 100644
--- a/src/sna/sna_present.c
+++ b/src/sna/sna_present.c
@@ -394,8 +394,7 @@ sna_present_vblank_handler(struct drm_event_vblank *event)
if (info->sna->mode.shadow_wait) {
DBG(("%s: recursed from TearFree\n", __FUNCTION__));
- info->target_msc = msc + 1;
- if (sna_present_queue(info, msc))
+ if (TimerSet(NULL, 0, 1, sna_fake_vblank_handler, info))
return;
}