Commit 3212a22f authored by Ville Syrjälä's avatar Ville Syrjälä Committed by Daniel Vetter

drm: Make blocking vblank wait return when the vblank interrupts get disabled

If there's a blocking vblank wait in progress while the vblank interrupt
gets disabled, the current code will just let the vblank wait time out.
Instead make it return immediately when vblank interrupts get disabled.
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent e69595c2
...@@ -1189,6 +1189,7 @@ int drm_wait_vblank(struct drm_device *dev, void *data, ...@@ -1189,6 +1189,7 @@ int drm_wait_vblank(struct drm_device *dev, void *data,
DRM_WAIT_ON(ret, dev->vblank[crtc].queue, 3 * HZ, DRM_WAIT_ON(ret, dev->vblank[crtc].queue, 3 * HZ,
(((drm_vblank_count(dev, crtc) - (((drm_vblank_count(dev, crtc) -
vblwait->request.sequence) <= (1 << 23)) || vblwait->request.sequence) <= (1 << 23)) ||
!dev->vblank[crtc].enabled ||
!dev->irq_enabled)); !dev->irq_enabled));
if (ret != -EINTR) { if (ret != -EINTR) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment