On Fri, Feb 11, 2022 at 05:49:08PM +0100, David Hildenbrand wrote: > On 11.02.22 17:45, Jason Gunthorpe wrote: > > On Fri, Feb 11, 2022 at 05:15:25PM +0100, David Hildenbrand wrote: > > > >> ... I'm pretty sure we cannot FOLL_PIN DEVICE_PRIVATE pages > > > > Currently the only way to get a DEVICE_PRIVATE page out of the page > > tables is via hmm_range_fault() and that doesn't manipulate any ref > > counts. > > Thanks for clarifying Jason! ... and AFAIU, device exclusive entries are > essentially just pointers at ordinary PageAnon() pages. So with DEVICE > COHERENT we'll have the first PageAnon() ZONE_DEVICE pages mapped as > present in the page tables where GUP could FOLL_PIN them. This is my understanding Though you probably understand what PageAnon means alot better than I do.. I wonder if it really makes sense to talk about that together with ZONE_DEVICE which has alot in common with filesystem originated pages too. I'm not sure what AMDs plan is here, is there an expecation that a GPU driver will somehow stuff these pages into an existing anonymous memory VMA or do they always come from a driver originated VMA? Jason