From: Chris Wilson Date: Wed, 4 Feb 2009 14:15:10 +0000 (+0000) Subject: drm/i915: Unlock mutex on i915_gem_fault() error path X-Git-Tag: v2.6.29-rc5~50^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7d8d58b23fd01e60ed44d8d8c10b2df86e638faa;p=platform%2Fupstream%2Fkernel-adaptation-pc.git drm/i915: Unlock mutex on i915_gem_fault() error path If we failed to allocate a new fence register we would return VM_FAULT_SIGBUS without relinquishing the lock. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt Signed-off-by: Dave Airlie --- diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 6a9e3a8..1441831 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -588,8 +588,10 @@ int i915_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf) if (obj_priv->fence_reg == I915_FENCE_REG_NONE && obj_priv->tiling_mode != I915_TILING_NONE) { ret = i915_gem_object_get_fence_reg(obj, write); - if (ret != 0) + if (ret) { + mutex_unlock(&dev->struct_mutex); return VM_FAULT_SIGBUS; + } } pfn = ((dev->agp->base + obj_priv->gtt_offset) >> PAGE_SHIFT) +