summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2009-11-09 14:57:34 -0800
committerEric Anholt <eric@anholt.net>2010-02-26 13:23:18 -0800
commit21099537dbacc5c8999d833e6bfd1b72edd89189 (patch)
treed152f60e7b4e6bcc72d3d753e8073a9d0345be3a /drivers
parentc2416fc6bb16fa87bcc4b9d90a7632f3531bdee6 (diff)
downloadlinux-stable-21099537dbacc5c8999d833e6bfd1b72edd89189.tar.gz
linux-stable-21099537dbacc5c8999d833e6bfd1b72edd89189.tar.bz2
linux-stable-21099537dbacc5c8999d833e6bfd1b72edd89189.zip
drm/i915: Correct locking in the modesetting failure path, fixing a BUG_ON.
Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/i915/i915_dma.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index 7bfded5e90bb..281faca3e37c 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -1405,7 +1405,9 @@ static int i915_load_modeset_init(struct drm_device *dev,
return 0;
destroy_ringbuffer:
+ mutex_lock(&dev->struct_mutex);
i915_gem_cleanup_ringbuffer(dev);
+ mutex_unlock(&dev->struct_mutex);
out:
return ret;
}