[Intel-gfx] [PATCH] drm/i915: unlock mutex before intel_modeset_init_hw
Paulo Zanoni
przanoni at gmail.com
Fri May 18 22:57:13 CEST 2012
From: Paulo Zanoni <paulo.r.zanoni at intel.com>
Because on IVB, intel_modeset_init_hw calls gen6_enable_rps with locks
the mutex. This problem broke suspend on my machine. It was introduced
in the following commit:
commit 2e1352cf196094f44e73776f41087f4c489ab936
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed May 9 11:56:28 2012 +0100
drm/i915: gen6_enable_rps() wants to be called after ring initialisation
This fix was actually suggested by Chris Wilson on a conversation, so
the credit goes to him. I just bisected the problem, reported to him
and tested his idea.
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
---
drivers/gpu/drm/i915/i915_drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 3947804..d3e1948 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -638,9 +638,9 @@ static int i915_drm_thaw(struct drm_device *dev)
dev_priv->mm.suspended = 0;
error = i915_gem_init_hw(dev);
- intel_modeset_init_hw(dev);
mutex_unlock(&dev->struct_mutex);
+ intel_modeset_init_hw(dev);
drm_mode_config_reset(dev);
drm_irq_install(dev);
--
1.7.9.5
More information about the Intel-gfx
mailing list