[Intel-gfx] [PATCH 3/8] drm/i915: Add execlist_port_complete
Chris Wilson
chris at chris-wilson.co.uk
Tue Sep 12 10:19:11 UTC 2017
Quoting Mika Kuoppala (2017-09-12 09:36:13)
> @@ -412,8 +413,6 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
> */
> last->tail = last->wa_tail;
>
> - GEM_BUG_ON(port_isset(&port[1]));
* Raises eyebrow
> -
> /* Hardware submission is through 2 ports. Conceptually each port
> * has a (RING_START, RING_HEAD, RING_TAIL) tuple. RING_START is
> * static for a context, and unique to each, so we only execute
> @@ -485,25 +484,27 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
> if (submit)
> port_assign(port, last);
> port++;
> +
> + GEM_BUG_ON(port_isset(port));
* and relax
You had me worried there, but that looks like a neat generalisation.
> @@ -495,6 +495,18 @@ struct intel_engine_cs {
>
> void execlist_cancel_port_requests(struct intel_engine_execlist * const el);
>
> +static inline void
> +execlist_port_complete(struct intel_engine_execlist * const el,
> + struct execlist_port * const port)
> +{
> + struct execlist_port * const port1 = &el->port[1];
> +
> + GEM_DEBUG_BUG_ON(port_index(port, el) != 0);
Just GEM_BUG_ON().
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
-Chris
More information about the Intel-gfx
mailing list