diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2017-06-16 15:05:22 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2017-06-16 16:54:05 +0100 |
commit | 8a2421bd0d9abb3a599969d88e1910a2a101eccc (patch) | |
tree | fd2db96cb0fce9879162d03381dbf50562140baa /drivers/gpu/drm/i915/i915_gem.c | |
parent | 616d9cee4fdc4a377c03be8fd6efa5df4fcd0d81 (diff) | |
download | op-kernel-dev-8a2421bd0d9abb3a599969d88e1910a2a101eccc.zip op-kernel-dev-8a2421bd0d9abb3a599969d88e1910a2a101eccc.tar.gz |
drm/i915: Wait upon userptr get-user-pages within execbuffer
This simply hides the EAGAIN caused by userptr when userspace causes
resource contention. However, it is quite beneficial with highly
contended userptr users as we avoid repeating the setup costs and
kernel-user context switches.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: MichaĆ Winiarski <michal.winiarski@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index fcdc452..96b3449 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -4804,7 +4804,9 @@ int i915_gem_init(struct drm_i915_private *dev_priv) */ intel_uncore_forcewake_get(dev_priv, FORCEWAKE_ALL); - i915_gem_init_userptr(dev_priv); + ret = i915_gem_init_userptr(dev_priv); + if (ret) + goto out_unlock; ret = i915_gem_init_ggtt(dev_priv); if (ret) |