[Mesa-dev] [PATCH 2/9] anv: Add a real semaphore struct
Jason Ekstrand
jason at jlekstrand.net
Tue Feb 28 22:04:17 UTC 2017
On Tue, Feb 28, 2017 at 1:59 PM, Chris Wilson <chris at chris-wilson.co.uk>
wrote:
> On Tue, Feb 28, 2017 at 08:56:40AM -0800, Jason Ekstrand wrote:
> > It's just a dummy for now, but we'll flesh it out as needed for external
> > semaphores.
> > ---
> > src/intel/vulkan/anv_private.h | 15 +++++++++++++++
> > src/intel/vulkan/anv_queue.c | 30 ++++++++++++++++++++++++------
> > 2 files changed, 39 insertions(+), 6 deletions(-)
> >
> > diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_
> private.h
> > index 816ee8a..a2e077a 100644
> > --- a/src/intel/vulkan/anv_private.h
> > +++ b/src/intel/vulkan/anv_private.h
> > @@ -1365,6 +1365,20 @@ struct anv_event {
> > struct anv_state state;
> > };
> >
> > +enum anv_semaphore_type {
> > + ANV_SEMAPHORE_TYPE_NONE = 0,
> > + ANV_SEMAPHORE_TYPE_DUMMY
> > +};
> > +
> > +struct anv_semaphore_impl {
> > + enum anv_semaphore_type type;
> > +};
> > +
> > +struct anv_semaphore {
> > + struct anv_semaphore_impl permanent;
> > + struct anv_semaphore_impl temporary;
> > +};
>
> Are temporary, permanent terms from the Vk spec?
>
Yes.
> My understanding is that the temporary semaphore is a snapshot of the
> fences (sync_file), used once then reset. The permanent semaphore is a
> reservation_object (accessed via a bo), it is a volatile collection of
> fences that serves as a communication channel between processes.
>
Essentially, yes. The semantics are a tiny bit different from that, but
it's close. I'll add a comment.
> A synopsis of the differences and use would be invaluable.
> -Chris
>
> --
> Chris Wilson, Intel Open Source Technology Centre
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170228/03b2d906/attachment.html>
More information about the mesa-dev
mailing list