drm/i915: Hold struct_mutex while unreffing pwrctx object

This also extends the mutex to cover fbc disabling, which is safe.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Kristian Høgsberg 2009-11-11 12:19:17 -05:00 committed by Eric Anholt
parent 33db679b4e
commit 69341a5e01

View File

@ -4584,8 +4584,6 @@ void intel_modeset_cleanup(struct drm_device *dev)
intel_increase_renderclock(dev, false); intel_increase_renderclock(dev, false);
del_timer_sync(&dev_priv->idle_timer); del_timer_sync(&dev_priv->idle_timer);
mutex_unlock(&dev->struct_mutex);
if (dev_priv->display.disable_fbc) if (dev_priv->display.disable_fbc)
dev_priv->display.disable_fbc(dev); dev_priv->display.disable_fbc(dev);
@ -4594,6 +4592,8 @@ void intel_modeset_cleanup(struct drm_device *dev)
drm_gem_object_unreference(dev_priv->pwrctx); drm_gem_object_unreference(dev_priv->pwrctx);
} }
mutex_unlock(&dev->struct_mutex);
drm_mode_config_cleanup(dev); drm_mode_config_cleanup(dev);
} }