diff options
author | Chris Wilson | 2018-03-08 15:07:32 +0100 |
---|---|---|
committer | Chris Wilson | 2018-03-12 23:06:19 +0100 |
commit | 6f9ec414ec47eea3f3e2c5ad4c67b4265bbff2a3 (patch) | |
tree | 1369bf5ad7a11ae0822292652b0cb2fb6abd766c /drivers/gpu/drm/i915/i915_request.c | |
parent | drm/i915/psr: Display WA 0884 applied broadly for more HW tracking. (diff) | |
download | kernel-qcow2-linux-6f9ec414ec47eea3f3e2c5ad4c67b4265bbff2a3.tar.gz kernel-qcow2-linux-6f9ec414ec47eea3f3e2c5ad4c67b4265bbff2a3.tar.xz kernel-qcow2-linux-6f9ec414ec47eea3f3e2c5ad4c67b4265bbff2a3.zip |
drm/i915: Remove the impedance mismatch around intel_engine_enable_signaling
There is some redundancy between dma_fence->ops->enable_signaling (via
i915_fence_enable_signaling) and our backend,
intel_engine_enable_signaling() in that both levels recheck the fence
status multiple times. If we convert intel_engine_enable_signaling() to
return the information desired by dma_fence->ops->enable_signaling, we
can reduce i915_fence_enable_signaling to a simple stub and avoid
trying to reinterpret the same information.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180308140732.25090-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/i915_request.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_request.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c index 2f62acd2dc3d..1810fa1b81cb 100644 --- a/drivers/gpu/drm/i915/i915_request.c +++ b/drivers/gpu/drm/i915/i915_request.c @@ -59,11 +59,7 @@ static bool i915_fence_signaled(struct dma_fence *fence) static bool i915_fence_enable_signaling(struct dma_fence *fence) { - if (i915_fence_signaled(fence)) - return false; - - intel_engine_enable_signaling(to_request(fence), true); - return !i915_fence_signaled(fence); + return intel_engine_enable_signaling(to_request(fence), true); } static signed long i915_fence_wait(struct dma_fence *fence, |