Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f0d3dad3 authored by Chris Wilson's avatar Chris Wilson Committed by Daniel Vetter
Browse files

drm/i915: Wrap -EIO send-vblank event for failed pageflip in spinlock



drm_send_vblank_event() demands that we hold the event spinlock whilst
calling it, so do so.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
[danvet: Fix the double lock as requested by Chris.]
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 1d1ef21d
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -10084,8 +10084,11 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
out_hang:
		intel_crtc_wait_for_pending_flips(crtc);
		ret = intel_pipe_set_base(crtc, crtc->x, crtc->y, fb);
		if (ret == 0 && event)
		if (ret == 0 && event) {
			spin_lock_irqsave(&dev->event_lock, flags);
			drm_send_vblank_event(dev, pipe, event);
			spin_unlock_irqrestore(&dev->event_lock, flags);
		}
	}
	return ret;
}