Re: [PATCH v2 1/8] mm/gup: reintroduce FOLL_NUMA as FOLL_HONOR_NUMA_FAULT

David Hildenbrand
2023-08-01T16:16:46Z

On 01.08.23 17:48, Peter Xu wrote:
> On Tue, Aug 01, 2023 at 02:48:37PM +0200, David Hildenbrand wrote:
>> @@ -2240,6 +2244,12 @@ static bool is_valid_gup_args(struct page **pages, int *locked,
>> gup_flags |= FOLL_UNLOCKABLE;
>> }
>>
>> + /*
>> + * For now, always trigger NUMA hinting faults. Some GUP users like
>> + * KVM really require it to benefit from autonuma.
>> + */
>> + gup_flags |= FOLL_HONOR_NUMA_FAULT;
>
> Since at it, do we want to not set it for FOLL_REMOTE, which still sounds
> like a good thing to have?

I thought about that, but decided against making that patch here more
complicated to eventually rip it again all out in #4.

I fully agree that FOLL_REMOTE does not make too much sense, but let's
rather keep it simple for this patch.

Thanks!

>
> Other than that, looks good here.
>
> Side note: when I was looking at the flags again just to check the
> interactions over numa balancing, I found FOLL_NOFAULT and I highly suspect
> that's not needed, instead it just wants to use follow_page[_mask]() with
> some proper gup flags passed over.. but that's off topic.

Be prepared for my proposal of removing foll_flags from follow_page() ;)

(accompanied by a proper documentation)

Especially as we have FOLL_PIN users of FOLL_NOFAULT, follow_page() is a
bad fit.

--
Cheers,

David / dhildenb