[Mesa-dev] [PATCH 7/9] anv: Implement VK_KHX_external_semaphore_fd

Jason Ekstrand jason at jlekstrand.net
Tue Feb 28 23:21:19 UTC 2017


On Tue, Feb 28, 2017 at 3:04 PM, Chris Wilson <chris at chris-wilson.co.uk>
wrote:

> On Tue, Feb 28, 2017 at 08:56:45AM -0800, Jason Ekstrand wrote:
> > +   if (handleTypes == 0) {
> > +      /* The DRM execbuffer ioctl always execute in-oder, even between
> > +       * different rings. As such, a dummy no-op semaphore is a
> perfectly
> > +       * valid implementation.
>
> That's not quite true. Each engine is its own timeline within the context.
> Every execbuf on a particular ring is executed in submission order.
> Between rings, order is based on dependencies - batches that only share
> read access to the same buffers (or nothing shared) will be executed in
> parallel, but any writes impose a strong ordering between the engines.
> (That being the basis of TYPE_BO.)
>
> I don't think it affects anv since there is only a single render queue,
> but I think the explanation of TYPE_DUMMY needs a little more fleshing
> out to avoid leaving a trap behind.
>

You're correct.  Thanks for pointing that out.  I'll fix the comment to not
say stupid things about different rings.


> -Chris
>
> > +       */
> > +      semaphore->permanent.type = ANV_SEMAPHORE_TYPE_DUMMY;
>
> --
> Chris Wilson, Intel Open Source Technology Centre
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170228/ee4d356e/attachment.html>


More information about the mesa-dev mailing list