summaryrefslogtreecommitdiff
path: root/src/intel_display.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/intel_display.c')
-rw-r--r--src/intel_display.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/intel_display.c b/src/intel_display.c
index d58e6e0b..ce1b9a8f 100644
--- a/src/intel_display.c
+++ b/src/intel_display.c
@@ -493,6 +493,8 @@ intel_crtc_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode,
ErrorF("failed to add fb\n");
return FALSE;
}
+
+ drm_intel_gem_bo_disable_resuse(intel->front_buffer);
}
saved_mode = crtc->mode;
@@ -597,6 +599,8 @@ intel_crtc_shadow_allocate(xf86CrtcPtr crtc, int width, int height)
return NULL;
}
+ drm_intel_gem_bo_disable_resuse(intel_crtc->rotate_bo);
+
intel_crtc->rotate_pitch = rotate_pitch;
return intel_crtc->rotate_bo;
}
@@ -723,6 +727,8 @@ intel_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
ErrorF("have front buffer\n");
}
+ drm_intel_gem_bo_disable_resuse(bo);
+
intel_crtc->scanout_pixmap = ppix;
return drmModeAddFB(intel->drmSubFD, ppix->drawable.width,
ppix->drawable.height, ppix->drawable.depth,
@@ -1494,6 +1500,7 @@ intel_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
if (ret)
goto fail;
+ drm_intel_gem_bo_disable_resuse(intel->front_buffer);
intel->front_pitch = pitch;
intel->front_tiling = tiling;
@@ -1555,6 +1562,7 @@ intel_do_pageflip(intel_screen_private *intel,
new_front->handle, &new_fb_id))
goto error_out;
+ drm_intel_gem_bo_disable_resuse(new_front);
intel_glamor_flush(intel);
intel_batch_submit(scrn);