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: Chris Wilson <chris@chris-wilson.co.uk> [danvet: Fix the double lock as requested by Chris.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
1d1ef21daf
commit
f0d3dad3ad
|
@ -10084,8 +10084,11 @@ free_work:
|
|||
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;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue