Re: [PATCH 03/19] mm: Mark special bits for huge pfn mappings when inject

Jason Gunthorpe
2024-08-14T15:53:29Z

On Wed, Aug 14, 2024 at 11:23:41AM -0400, Peter Xu wrote:
> On Wed, Aug 14, 2024 at 09:40:00AM -0300, Jason Gunthorpe wrote:
> > On Fri, Aug 09, 2024 at 12:08:53PM -0400, Peter Xu wrote:
> > > We need these special bits to be around to enable gup-fast on pfnmaps.
> >
> > It is not gup-fast you are after but follow_pfn/etc for KVM usage
> > right?
>
> Gup-fast needs it to make sure we don't pmd_page() it and fail early. So
> still needed in some sort..

Yes, but making gup-fast fail is not "enabling" it :)

> But yeah, this comment is ambiguous and not describing the whole picture,
> as multiple places will so far rely this bit, e.g. fork() to identify a
> private page or pfnmap. Similarly we'll do that in folio_walk_start(), and
> follow_pfnmap. I plan to simplify that to:
>
> We need these special bits to be around on pfnmaps. Mark properly for
> !devmap case, reflecting that there's no page struct backing the entry.

Yes

Jason