aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/i915/intel_overlay.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
index b0aea47cb445..3236cca0bb56 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
@@ -1461,14 +1461,16 @@ void intel_cleanup_overlay(struct drm_device *dev)
1461{ 1461{
1462 drm_i915_private_t *dev_priv = dev->dev_private; 1462 drm_i915_private_t *dev_priv = dev->dev_private;
1463 1463
1464 if (dev_priv->overlay) { 1464 if (!dev_priv->overlay)
1465 /* The bo's should be free'd by the generic code already. 1465 return;
1466 * Furthermore modesetting teardown happens beforehand so the
1467 * hardware should be off already */
1468 BUG_ON(dev_priv->overlay->active);
1469 1466
1470 kfree(dev_priv->overlay); 1467 /* The bo's should be free'd by the generic code already.
1471 } 1468 * Furthermore modesetting teardown happens beforehand so the
1469 * hardware should be off already */
1470 BUG_ON(dev_priv->overlay->active);
1471
1472 drm_gem_object_unreference_unlocked(&dev_priv->overlay->reg_bo->base);
1473 kfree(dev_priv->overlay);
1472} 1474}
1473 1475
1474struct intel_overlay_error_state { 1476struct intel_overlay_error_state {