Op 19-04-16 om 09:52 schreef Maarten Lankhorst: > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> > Uh oh, kbuild found a missing drm_crtc_vblank_get, no idea why I didn't notice this myself. Appended delta for readability. --- diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 34b8937ede88..14f8dd39d835 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -11066,7 +11066,7 @@ static void intel_mmio_flip_work_func(struct work_struct *w) struct drm_device *dev = crtc->dev; struct drm_i915_private *dev_priv = dev->dev_private; struct drm_i915_gem_request *req; - int i; + int i, ret; if (!needs_modeset(&crtc_state->base) && crtc_state->update_pipe) { work->put_power_domains = @@ -11088,6 +11088,9 @@ static void intel_mmio_flip_work_func(struct work_struct *w) &dev_priv->rps.mmioflips)); } + ret = drm_crtc_vblank_get(crtc); + I915_STATE_WARN(ret < 0, "enabling vblank failed with %i\n", ret); + if (work->num_planes && work->old_plane_state[0]->base.plane == crtc->primary) intel_fbc_enable(intel_crtc, work->new_crtc_state, work->new_plane_state[0]); @@ -13034,6 +13037,11 @@ static void intel_schedule_flip(struct drm_crtc *crtc, else intel_mmio_flip_work_func(&work->mmio_work); } else { + int ret; + + ret = drm_crtc_vblank_get(crtc); + I915_STATE_WARN(ret < 0, "enabling vblank failed with %i\n", ret); + work->flip_queued_vblank = intel_crtc_get_vblank_counter(to_intel_crtc(crtc)); smp_mb__before_atomic(); atomic_set(&work->pending, INTEL_FLIP_PENDING); _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx