[Intel-gfx] [PATCH] drm/i915: Special handling for bonded requests
Chris Wilson
chris at chris-wilson.co.uk
Thu May 28 09:57:29 UTC 2020
Quoting Tvrtko Ursulin (2020-05-27 09:53:22)
> +static void
> +mark_bonded_pair(struct i915_request *rq, struct i915_request *signal)
> +{
> + /*
> + * Give (temporary) special meaning to a pair requests with requested
> + * aligned start along the video engines.
> + *
> + * They should be non-preemptable and have all ELSP ports to themselves
> + * to avoid any deadlocks caused by inversions.
> + *
> + * Gen11+
> + */
> + if (INTEL_GEN(rq->i915) < 11 ||
> + rq->engine->class != VIDEO_DECODE_CLASS ||
> + rq->engine->class != signal->engine->class)
> + return;
> +
> + set_bit(I915_FENCE_FLAG_NOPREEMPT, &rq->fence.flags);
> + set_bit(I915_FENCE_FLAG_NOPREEMPT, &signal->fence.flags);
> +
> + intel_context_set_single_submission(rq->context);
> + intel_context_set_single_submission(signal->context);
The thought that just popped into my head:
This can be after signal is already submitted into ELSP[1].
-Chris
More information about the Intel-gfx
mailing list