diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2010-08-12 05:50:36 -0400 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2010-09-08 05:23:45 -0400 |
commit | 62cf4e6fef35b4422e206b63b7f0ac90261d4ad9 (patch) | |
tree | 4e39d73ef0b940cd9128c690a7d8fbccf0e1173b /drivers/gpu/drm/i915/intel_overlay.c | |
parent | a29301288f1840bdf9c5456da9cd7c944436edd5 (diff) |
drm/i915/overlay: Destroy reg_bo on shutdown.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_overlay.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_overlay.c | 16 |
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 | ||
1474 | struct intel_overlay_error_state { | 1476 | struct intel_overlay_error_state { |