Re: [RFC 05/11] drm/i915/preempt: Handle preemption event in guc tasklet

Chris Wilson
2017-03-01T12:57:26Z

On Thu, Feb 23, 2017 at 08:14:15PM +0100, Michał Winiarski wrote:
> +static void unsubmit_inflight_requests(struct intel_engine_cs *engine,
> + struct list_head *resubmit)
> +{
> + struct drm_i915_gem_request *rq, *prev;
> +
> + assert_spin_locked(&engine->timeline->lock);
> +
> + list_for_each_entry_safe_reverse(rq, prev,
> + &engine->timeline->requests, link) {
> + if (!i915_gem_request_completed(rq)) {
> + i915_gem_request_get(rq);
> + __i915_gem_request_unsubmit(rq);
> + list_add(&rq->resubmit_link, resubmit);

I was thinking it would be going back to the execlist queue, where it
would be priority sorted against later requests.

Pro/cons?
-Chris

--
Chris Wilson, Intel Open Source Technology Centre