diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2013-09-13 23:57:04 +0100 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-10-01 07:45:03 +0200 |
commit | f740334775efd30631c556f7654b92dae66df494 (patch) | |
tree | 585e4038881f7b85f3d8304808db6b5bfcbacaac /drivers/gpu/drm/i915/i915_gem.c | |
parent | b205ca572159ab9a617fc96e4659bc138064ca8e (diff) |
drm/i915: Do not unlock upon error in i915_gem_idle()
We never took the lock ourselves and all callers expect the struct_mutex
to be locked upon return (be it success or error), thereore dropping the
lock along the error paths looks to be a vestigial error from
commit db1b76ca6a79c774074ae87bee7afc0825a478f5
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date: Tue Jul 9 16:51:37 2013 +0200
drm/i915: don't frob mm.suspended when not using ums
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 96f65a15ffc9..96ad99ccf0ac 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -4232,16 +4232,13 @@ i915_gem_idle(struct drm_device *dev) drm_i915_private_t *dev_priv = dev->dev_private; int ret; - if (dev_priv->ums.mm_suspended) { - mutex_unlock(&dev->struct_mutex); + if (dev_priv->ums.mm_suspended) return 0; - } ret = i915_gpu_idle(dev); - if (ret) { - mutex_unlock(&dev->struct_mutex); + if (ret) return ret; - } + i915_gem_retire_requests(dev); /* Under UMS, be paranoid and evict. */ |