[PATCH v2 03/11] mm/gup: Applies counting method to monitor gup_pgd_range
John Hubbard
jhubbard at nvidia.com
Tue Sep 24 07:09:05 AEST 2019
On 9/23/19 2:01 PM, Leonardo Bras wrote:
> On Mon, 2019-09-23 at 13:27 -0700, John Hubbard wrote:
>> I'd also like a second opinion from the "core" -mm maintainers, but it seems like
>> there is now too much code around the gup_pgd_range() call. Especially since there
>> are two places where it's called--did you forget the other one in
>> __get_user_pages_fast(), btw??
>>
> Oh, sorry, I missed this one. I will put it on v3.
> (Also I will make sure to include linux-mm on v3.)
>
>> Maybe the irq handling and atomic counting should be moved into start/finish
>> calls, like this:
>>
>> start_gup_fast_walk()
>> gup_pgd_range()
>> finish_gup_fast_walk()
>
> There are cases where interrupt disable/enable is not done around the
> lockless pagetable walk.
> It may come from functions called above on stack, that's why I opted it
> to be only the atomic operation.
>
That doesn't prevent you from writing the above as shown, though, for mm/gup.c.
(Also, let's see on the other thread if it is even valid to be indicating
a lockless walk, without also disabling interrupts.)
thanks,
--
John Hubbard
NVIDIA
More information about the Linuxppc-dev
mailing list