diff options
author | Benjamin Gaignard <benjamin.gaignard@linaro.org> | 2014-12-04 06:42:37 -0500 |
---|---|---|
committer | Benjamin Gaignard <benjamin.gaignard@linaro.org> | 2014-12-11 07:58:35 -0500 |
commit | eb929dc4d36db7881bbf90d5532b024615f64c0f (patch) | |
tree | 127b82868b1ca866c3d1c3d913e740caecf999e4 /drivers/gpu/drm/sti/sti_drm_crtc.c | |
parent | a51fe84d1d36122bdd7feeebd1d9d85e80ea16e7 (diff) |
drm: sti: remove event lock while disabling vblank
Stop use event_lock in vblank disable function.
This was creating a dead lock.
Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Diffstat (limited to 'drivers/gpu/drm/sti/sti_drm_crtc.c')
-rw-r--r-- | drivers/gpu/drm/sti/sti_drm_crtc.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/gpu/drm/sti/sti_drm_crtc.c b/drivers/gpu/drm/sti/sti_drm_crtc.c index d42c63f756ef..19e20fcf9f0d 100644 --- a/drivers/gpu/drm/sti/sti_drm_crtc.c +++ b/drivers/gpu/drm/sti/sti_drm_crtc.c | |||
@@ -366,7 +366,6 @@ void sti_drm_crtc_disable_vblank(struct drm_device *dev, int crtc) | |||
366 | struct sti_drm_private *priv = dev->dev_private; | 366 | struct sti_drm_private *priv = dev->dev_private; |
367 | struct sti_compositor *compo = priv->compo; | 367 | struct sti_compositor *compo = priv->compo; |
368 | struct notifier_block *vtg_vblank_nb = &compo->vtg_vblank_nb; | 368 | struct notifier_block *vtg_vblank_nb = &compo->vtg_vblank_nb; |
369 | unsigned long flags; | ||
370 | 369 | ||
371 | DRM_DEBUG_DRIVER("\n"); | 370 | DRM_DEBUG_DRIVER("\n"); |
372 | 371 | ||
@@ -375,13 +374,10 @@ void sti_drm_crtc_disable_vblank(struct drm_device *dev, int crtc) | |||
375 | DRM_DEBUG_DRIVER("Warning: cannot unregister VTG notifier\n"); | 374 | DRM_DEBUG_DRIVER("Warning: cannot unregister VTG notifier\n"); |
376 | 375 | ||
377 | /* free the resources of the pending requests */ | 376 | /* free the resources of the pending requests */ |
378 | spin_lock_irqsave(&dev->event_lock, flags); | ||
379 | if (compo->mixer[crtc]->pending_event) { | 377 | if (compo->mixer[crtc]->pending_event) { |
380 | drm_vblank_put(dev, crtc); | 378 | drm_vblank_put(dev, crtc); |
381 | compo->mixer[crtc]->pending_event = NULL; | 379 | compo->mixer[crtc]->pending_event = NULL; |
382 | } | 380 | } |
383 | spin_unlock_irqrestore(&dev->event_lock, flags); | ||
384 | |||
385 | } | 381 | } |
386 | EXPORT_SYMBOL(sti_drm_crtc_disable_vblank); | 382 | EXPORT_SYMBOL(sti_drm_crtc_disable_vblank); |
387 | 383 | ||