Re: [PATCH 4/5] drm/i915: Expose RPCS (SSEU) configuration to userspace (Gen11 only)

Chris Wilson
2019-01-26T10:57:41Z

Quoting Tvrtko Ursulin (2019-01-25 15:24:40)
> + /*
> + * Guarantee context image and the timeline remains pinned until the
> + * modifying request is retired by setting the ce activity tracker.
> + *
> + * But we only need to take one pin on the account of it. Or in other
> + * words transfer the pinned ce object to tracked active request.
> + */
> + if (!i915_gem_active_isset(&ce->active_tracker))
> + __intel_context_pin(ce);
> + i915_gem_active_set(&ce->active_tracker, rq);

Bah. This works, just. It relies on ordering of requests in
active_tracker and that is being provided by the fact it is used from a
single callsite with a single timeline, so each rq put into the
active_tracker is naturally ordered.

It'll come out in the wash as this all needs to be rejigged for tracking
when we can finally unpin a context (hence my interest in
ce->active_tracker).
-Chris