Re: [PATCH v4 3/6] mm/gup: remove vmas parameter from get_user_pages_remote()

From: Janosch Frank
Date: Wed Apr 19 2023 - 08:06:27 EST


On 4/18/23 17:49, Lorenzo Stoakes wrote:
The only instances of get_user_pages_remote() invocations which used the
vmas parameter were for a single page which can instead simply look up the
VMA directly. In particular:-

- __update_ref_ctr() looked up the VMA but did nothing with it so we simply
remove it.

- __access_remote_vm() was already using vma_lookup() when the original
lookup failed so by doing the lookup directly this also de-duplicates the
code.

We are able to perform these VMA operations as we already hold the
mmap_lock in order to be able to call get_user_pages_remote().

As part of this work we add get_user_page_vma_remote() which abstracts the
VMA lookup, error handling and decrementing the page reference count should
the VMA lookup fail.

This forms part of a broader set of patches intended to eliminate the vmas
parameter altogether.

Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx> (for arm64)
Acked-by: David Hildenbrand <david@xxxxxxxxxx>
Signed-off-by: Lorenzo Stoakes <lstoakes@xxxxxxxxx>
---

For the s390 part:
Reviewed-by: Janosch Frank <frankja@xxxxxxxxxxxxx>