Re: [PATCH RFC 09/12] mm/gup: Handle huge pud for follow_pud_mask()

From: Peter Xu
Date: Thu Nov 23 2023 - 11:19:43 EST


On Wed, Nov 22, 2023 at 11:28:31PM -0800, Christoph Hellwig wrote:
> > We need to export "struct follow_page_context" along the way, so that
> > huge_memory.c can understand it.
>
> Again, thankfully not actually exported, just made global.

In the new version that shouldn't be needed, because I just noticed
huge_memory.c is only compiled with THP=on. Logically it may start to make
sense at some point to have thp.c for THP=on, and huge_memory.c for THP ||
HUGETLB. But I'd rather leave that done separately even if so..

In short, for this one, I'll drop that in the commit message, as I'll leave
"struct follow_page_context" alone.

>
> > @@ -751,24 +746,25 @@ static struct page *follow_pud_mask(struct vm_area_struct *vma,
> > unsigned int flags,
> > struct follow_page_context *ctx)
> > {
> > - pud_t *pud;
> > + pud_t *pudp, pud;
>
> This adding of pud while useful seems mostly unrelated and clutter
> the patch up quite a bit. If you have to respin this anyway it might
> be worth to split it out into a little prep patch.

I can do this. I'll also try to do the same for the rest patches, if
applicable.

Thanks,

--
Peter Xu