[Intel-gfx] [PATCH 8/8] drm/i915: Keep track of reserved execlist ports
Chris Wilson
chris at chris-wilson.co.uk
Tue Sep 12 10:53:08 UTC 2017
Quoting Mika Kuoppala (2017-09-12 11:29:48)
> Chris Wilson <chris at chris-wilson.co.uk> writes:
>
> > Quoting Mika Kuoppala (2017-09-12 09:36:18)
> >> +static inline unsigned int
> >> +execlist_active_ports(const struct intel_engine_execlist * const el)
> >> {
> >> - const unsigned int i = port_index(port, el);
> >> + return READ_ONCE(el->port_count);
> >
> > READ_ONCE? Could we separate the racy check from the serialized uses
> > inside the tasklet where we do want the compiler to go to town?
>
> Hmm so substitute execlist_active_ports() in i915_irq.c with
> READ_ONCE(el->port_count) and remove it in this function?
The elsp_ready outside of the tasklet also need to take special care (or
at least document that they are outside of the serialized section).
-Chris
More information about the Intel-gfx
mailing list