summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_gem_context.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2017-07-05 17:26:33 +0300
committerChris Wilson <chris@chris-wilson.co.uk>2017-07-06 13:51:18 +0300
commit6b6573d114050ee4ee1c54a60a92ae1b68ce1b6e (patch)
tree9a673a5b859304f9365febac71aa541600fd108d /drivers/gpu/drm/i915/i915_gem_context.c
parentddfc925851b4f0ae36b21a5b545e4002c4259c42 (diff)
downloadlinux-6b6573d114050ee4ee1c54a60a92ae1b68ce1b6e.tar.xz
drm/i915: Drop request retirement before reaping stale contexts
Before we create a new context, we try and reap all the stale contexts (i.e. those that are freed but waiting for a worker to come and return their allocations to the system). Before we do this, we retire all requests so that we clear any inflight no longer used contexts (who are only being kept alived by those inflght requests). However, any context that is finally unreferenced by this retirement is put onto an RCU list and not available for immediately reaping, we stall for no immediate benefit. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/20170705142634.18554-3-chris@chris-wilson.co.uk Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem_context.c')
-rw-r--r--drivers/gpu/drm/i915/i915_gem_context.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
index c58a95c33c25..4f6773ea7d85 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
@@ -384,7 +384,6 @@ i915_gem_create_context(struct drm_i915_private *dev_priv,
lockdep_assert_held(&dev_priv->drm.struct_mutex);
/* Reap stale contexts */
- i915_gem_retire_requests(dev_priv);
contexts_free(dev_priv);
ctx = __create_hw_context(dev_priv, file_priv);