drm/i915: Missed lock change with rps lock
authorBen Widawsky <[email protected]>
Tue, 6 Nov 2012 14:36:36 +0000 (14:36 +0000)
committerDaniel Vetter <[email protected]>
Sun, 11 Nov 2012 22:51:45 +0000 (23:51 +0100)
Fixes a WARN_ON in igt/tests/debugfs_reader

CC: Jesse Barnes <[email protected]>
Signed-off-by: Ben Widawsky <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
drivers/gpu/drm/i915/i915_debugfs.c

index 09cd7d76f6aed46e8b7d391f4273f79179eeed1d..4568e7d8a060ecfbaec93090cdcd77c9bb87c278 100644 (file)
@@ -1096,8 +1096,10 @@ static int gen6_drpc_info(struct seq_file *m)
 
        rpmodectl1 = I915_READ(GEN6_RP_CONTROL);
        rcctl1 = I915_READ(GEN6_RC_CONTROL);
-       sandybridge_pcode_read(dev_priv, GEN6_PCODE_READ_RC6VIDS, &rc6vids);
        mutex_unlock(&dev->struct_mutex);
+       mutex_lock(&dev_priv->rps.hw_lock);
+       sandybridge_pcode_read(dev_priv, GEN6_PCODE_READ_RC6VIDS, &rc6vids);
+       mutex_unlock(&dev_priv->rps.hw_lock);
 
        seq_printf(m, "Video Turbo Mode: %s\n",
                   yesno(rpmodectl1 & GEN6_RP_MEDIA_TURBO));