From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gustavo Padovan Subject: Re: [RFC v2 1/8] dma-buf/fence: add fence_collection fences Date: Tue, 26 Apr 2016 12:02:08 -0300 Message-ID: <20160426150208.GJ7857@joana> References: <1461623608-29538-1-git-send-email-gustavo@padovan.org> <1461623608-29538-2-git-send-email-gustavo@padovan.org> <20160426144102.GX8291@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Content-Disposition: inline In-Reply-To: <20160426144102.GX8291@phenom.ffwll.local> Sender: linux-kernel-owner@vger.kernel.org To: Gustavo Padovan , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Daniel Stone , Arve =?iso-8859-1?B?SGr4bm5lduVn?= , Riley Andrews , Rob Clark , Greg Hackmann , John Harrison , Maarten Lankhorst , Sumit Semwal List-Id: dri-devel@lists.freedesktop.org 2016-04-26 Daniel Vetter : > On Mon, Apr 25, 2016 at 07:33:21PM -0300, Gustavo Padovan wrote: > > From: Gustavo Padovan > >=20 > > struct fence_collection inherits from struct fence and carries a > > collection of fences that needs to be waited together. > >=20 > > It is useful to translate a sync_file to a fence to remove the comp= lexity > > of dealing with sync_files on DRM drivers. So even if there are man= y > > 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 a= s > > a standard struct fence. > >=20 > > That means that no changes needed to any driver besides supporting = fences. > >=20 > > 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. > >=20 > > 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. > >=20 > > Signed-off-by: Gustavo Padovan >=20 > FENCE_NO_CONTEXT semantics needs an ack from amdgpu maintainers. I'm = not > entirely sure they might not hit the new WARN_ON by accident now. Ple= ase > cc Alex Deucher & Christian K=F6nig. Sure, I'll Cc then in the revision. But if they use fence_context_alloc() to get the context they should never hit any WARN_ON as context numbers now starts at 1. 0 is reserved for =46ENCE_NO_CONTEXT. Gustavo