drm/i915: don't leak struct_mutex lock on ppgtt init failures
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 2 Apr 2012 21:33:03 +0000 (23:33 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 3 Apr 2012 08:25:33 +0000 (10:25 +0200)
Reported-by: Konstantin Belousov <kostikbel@gmail.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_dma.c

index 8a62285ddbd0781a39018a68afd59e3e083a7681..785f67f963efd5b53e0a0358e956888b103da5bd 100644 (file)
@@ -1222,8 +1222,10 @@ static int i915_load_gem_init(struct drm_device *dev)
                i915_gem_do_init(dev, 0, mappable_size, gtt_size);
 
                ret = i915_gem_init_aliasing_ppgtt(dev);
-               if (ret)
+               if (ret) {
+                       mutex_unlock(&dev->struct_mutex);
                        return ret;
+               }
        } else {
                /* Let GEM Manage all of the aperture.
                 *