Messages in this thread | | | Date | Mon, 31 Jan 2022 12:01:54 -0800 | Subject | Re: [PATCH 4/4] mm/gup: remove get_user_pages_locked() | From | John Hubbard <> |
| |
On 1/31/22 05:36, Jason Gunthorpe wrote: ... >> @@ -968,15 +966,15 @@ static long do_get_mempolicy(int *policy, nodemask_t *nmask, >> if (flags & MPOL_F_NODE) { >> if (flags & MPOL_F_ADDR) { >> /* >> - * Take a refcount on the mpol, lookup_node() >> - * will drop the mmap_lock, so after calling >> - * lookup_node() only "pol" remains valid, "vma" >> - * is stale. >> + * Take a refcount on the mpol, because we are about to >> + * drop the mmap_lock, after which only "pol" remains >> + * valid, "vma" is stale. >> */ >> pol_refcount = pol; >> vma = NULL; >> mpol_get(pol); >> err = lookup_node(mm, addr); >> + mmap_read_unlock(mm); > > How about move the mmap_read_unlock up one line and then use > get_user_pages_fast() > > I'm guessing in most cases here the PTE will be present so that should > be a net win?
Neat, I'll do that.
thanks, -- John Hubbard NVIDIA
| |