diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2012-03-12 19:45:35 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2012-03-12 19:45:35 +0000 |
commit | 28792be1f31190171644d911d7b5573186fe2df2 (patch) | |
tree | 52ecc2f38a67ca75c353e99d9cf34512fc4ff702 /src/sna/sna_display.c | |
parent | 278c329b9e2aa9a94bd0d0ee73939814ac514e3d (diff) |
sna/display: Only flush pending output when installing a new scanout
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/sna_display.c')
-rw-r--r-- | src/sna/sna_display.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c index 676125d0..9401ca45 100644 --- a/src/sna/sna_display.c +++ b/src/sna/sna_display.c @@ -634,8 +634,10 @@ sna_crtc_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode, sna_mode->fb_pixmap, sna->front->drawable.serialNumber)); - if (sna_mode->fb_pixmap != sna->front->drawable.serialNumber) + if (sna_mode->fb_pixmap != sna->front->drawable.serialNumber) { + kgem_submit(&sna->kgem); sna_mode_remove_fb(sna); + } if (sna_mode->fb_id == 0) { struct kgem_bo *bo = sna_pixmap_pin(sna->front); @@ -677,8 +679,6 @@ sna_crtc_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode, crtc->y = y; crtc->rotation = rotation; - kgem_submit(&sna->kgem); - mode_to_kmode(&sna_crtc->kmode, mode); if (!sna_crtc_apply(crtc)) { crtc->x = saved_x; |