Fence wait in mmu_interval_notifier_ops::invalidate

Daniel Vetter daniel at ffwll.ch
Mon Dec 14 09:52:37 UTC 2020


On Sun, Dec 13, 2020 at 04:09:25PM +0100, Thomas Hellström (Intel) wrote:
> 
> On 12/11/20 1:46 PM, Jason Gunthorpe wrote:
> > On Fri, Dec 11, 2020 at 08:50:53AM +0100, Thomas Hellström (Intel) wrote:
> > 
> > > My understanding of this particular case is that hardware would continue to
> > > DMA to orphaned pages that are pinned until the driver is done with
> > > DMA,
> > mmu notifier replaces pinning as the locking mechanism. Drivers using
> > mmu notifier should not be taking pins.
> > 
> > Keep in mind this was all built for HW with real shadow page tables
> > that can do fine grained manipulation.
> OK yes, that makes sense and in that context the fence wait is easier to
> understand. Looks like for example the radeon driver is using the notifier +
> get_user_pages() but there it looks like it's used to avoid having
> get_user_pages() clash with invalidation.

I think the radeon userptr implementation is bad enough that Christian
wants to outright remove it. At least he keeps talking about doing that.

So maybe not a good example to look at :-)
-Daniel

> > The GPU version of this to instead manipulate a command queue is a big
> > aberration from what was intended.
> > 
> > Jason
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list