Re: [PATCH v3 4/4] mm/gup: remove get_user_pages_locked()

John Hubbard
2022-02-03T21:27:22Z

On 2/3/22 06:01, Christoph Hellwig wrote:
> On Thu, Feb 03, 2022 at 01:32:32AM -0800, John Hubbard wrote:
>> There is only one caller of get_user_pages_locked(). The purpose of
>> get_user_pages_locked() is to allow for unlocking the mmap_lock when
>> reading a page from the disk during a page fault (hidden behind
>> VM_FAULT_RETRY). The idea is to reduce contention on the heavily-used
>> mmap_lock. (Thanks to Jan Kara for clearly pointing that out, and in
>> fact I've used some of his wording here.)
>>
>> However, it is unlikely for lookup_node() to take a page fault. With
>> that in mind, change over to calling get_user_pages_fast(). This
>> simplifies the code, runs a little faster in the expected case, and
>> allows removing get_user_pages_locked() entirely.
>
> Maybe split the lookup_node changes into a separate patch, as that
> allows to document that change even better.

OK, I'll do that.

thanks,
--
John Hubbard
NVIDIA