[Intel-gfx] [PATCH] drm/i915: Redo "Remove i915_request.lock requirement for execution callbacks"
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Thu Sep 24 13:16:26 UTC 2020
On 15/09/2020 10:30, Chris Wilson wrote:
> The reordering and rebasing of commit 2e4c6c1a9db5 ("drm/i915: Remove
> i915_request.lock requirement for execution callbacks") caused it to
> revert an earlier correction. Let us restore commit 99f0a640d464
> ("drm/i915: Remove requirement for holding i915_request.lock for
> breadcrumbs")
>
> Fixes: 2e4c6c1a9db5 ("drm/i915: Remove i915_request.lock requirement for execution callbacks")
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> ---
> drivers/gpu/drm/i915/i915_request.c | 12 ++----------
> 1 file changed, 2 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
> index 11e272422fb7..436ce368ddaa 100644
> --- a/drivers/gpu/drm/i915/i915_request.c
> +++ b/drivers/gpu/drm/i915/i915_request.c
> @@ -593,16 +593,8 @@ bool __i915_request_submit(struct i915_request *request)
> __notify_execute_cb_irq(request);
>
> /* We may be recursing from the signal callback of another i915 fence */
> - if (!i915_request_signaled(request)) {
> - spin_lock_nested(&request->lock, SINGLE_DEPTH_NESTING);
> -
> - if (test_bit(DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT,
> - &request->fence.flags) &&
> - !i915_request_enable_breadcrumb(request))
> - intel_engine_signal_breadcrumbs(engine);
> -
> - spin_unlock(&request->lock);
> - }
> + if (test_bit(DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT, &request->fence.flags))
> + i915_request_enable_breadcrumb(request);
>
> return result;
> }
>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
Regards,
Tvrtko
More information about the Intel-gfx
mailing list