From: Gustavo Padovan <gustavo@padovan.org>
To: "Christian König" <deathsimple@vodafone.de>
Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org,
daniel.vetter@ffwll.ch
Subject: Re: [PATCH 2/2] dma-buf/fence: add fence_array fences v4
Date: Fri, 20 May 2016 11:47:28 -0300 [thread overview]
Message-ID: <20160520144728.GE15150@joana> (raw)
In-Reply-To: <1463752571-28688-2-git-send-email-deathsimple@vodafone.de>
2016-05-20 Christian König <deathsimple@vodafone.de>:
> From: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
>
> struct fence_collection inherits from struct fence and carries a
> collection of fences that needs to be waited together.
>
> It is useful to translate a sync_file to a fence to remove the complexity
> of dealing with sync_files on DRM drivers. So even if there are many
> fences in the sync_file that needs to waited for a commit to happen,
> they all get added to the fence_collection and passed for DRM use as
> a standard struct fence.
>
> That means that no changes needed to any driver besides supporting fences.
>
> fence_collection's fence doesn't belong to any timeline context, so
> fence_is_later() and fence_later() are not meant to be called with
> fence_collections fences.
>
> v2: Comments by Daniel Vetter:
> - merge fence_collection_init() and fence_collection_add()
> - only add callbacks at ->enable_signalling()
> - remove fence_collection_put()
> - check for type on to_fence_collection()
> - adjust fence_is_later() and fence_later() to WARN_ON() if they
> are used with collection fences.
>
> v3: - Initialize fence_cb.node at fence init.
>
> Comments by Chris Wilson:
> - return "unbound" on fence_collection_get_timeline_name()
> - don't stop adding callbacks if one fails
> - remove redundant !! on fence_collection_enable_signaling()
> - remove redundant () on fence_collection_signaled
> - use fence_default_wait() instead
>
> v4 (chk): Rework, simplification and cleanup:
> - Drop FENCE_NO_CONTEXT handling, always allocate a context.
> - Rename to fence_array.
> - Return fixed driver name.
> - Register only one callback at a time.
> - Document that create function takes ownership of array.
This looks good to me. Dropping NO_CONTEXT was a good idea, also
registering only one callback makes it looks better.
Gustavo
next prev parent reply other threads:[~2016-05-20 14:47 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-20 13:56 [PATCH 1/2] dma-buf/fence: make fence context 64 bit v2 Christian König
2016-05-20 13:56 ` [PATCH 2/2] dma-buf/fence: add fence_array fences v4 Christian König
2016-05-20 14:42 ` Chris Wilson
2016-05-23 7:32 ` Christian König
2016-05-20 14:47 ` Gustavo Padovan [this message]
2016-05-20 17:53 ` Christian König
2016-05-23 7:41 ` Daniel Vetter
2016-05-23 11:29 ` Christian König
2016-05-23 14:00 ` Daniel Vetter
-- strict thread matches above, loose matches on Subject: below --
2016-05-20 13:53 [PATCH 1/2] drm/amd/powerplay: fix bugs of checking if dpm is running on Tonga Christian König
2016-05-20 13:53 ` [PATCH 2/2] dma-buf/fence: add fence_array fences v4 Christian König
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160520144728.GE15150@joana \
--to=gustavo@padovan.org \
--cc=daniel.vetter@ffwll.ch \
--cc=deathsimple@vodafone.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox