From: Jiri Pirko Date: Fri, 29 May 2026 13:42:58 +0000 (+0200) Subject: RDMA/umem: Split ib_umem_get_va() into a thin wrapper around __ib_umem_get_va() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=28fb701c642b8ff73e08fabef9265b508509d820;p=thirdparty%2Fkernel%2Fstable.git RDMA/umem: Split ib_umem_get_va() into a thin wrapper around __ib_umem_get_va() The follow-up patch is going to introduce ib_umem_get_desc(), the canonical desc-to-umem helper, which needs to pin a userspace VA without going through the exported ib_umem_get_va() helper so later on ib_umem_get_va() would use the ib_umem_get_desc() flow too. Move the existing ib_umem_get_va() to a static __ib_umem_get_va() and have ib_umem_get_va() as a thin wrapper that calls it. Link: https://patch.msgid.link/r/20260529134312.2836341-3-jiri@resnulli.us Signed-off-by: Jiri Pirko Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/core/umem.c b/drivers/infiniband/core/umem.c index b253090bb1ab..0056f23af57b 100644 --- a/drivers/infiniband/core/umem.c +++ b/drivers/infiniband/core/umem.c @@ -153,16 +153,9 @@ unsigned long ib_umem_find_best_pgsz(struct ib_umem *umem, } EXPORT_SYMBOL(ib_umem_find_best_pgsz); -/** - * ib_umem_get_va - Pin and DMA map userspace memory. - * - * @device: IB device to connect UMEM - * @addr: userspace virtual address to start at - * @size: length of region to pin - * @access: IB_ACCESS_xxx flags for memory being pinned - */ -struct ib_umem *ib_umem_get_va(struct ib_device *device, unsigned long addr, - size_t size, int access) +static struct ib_umem *__ib_umem_get_va(struct ib_device *device, + unsigned long addr, size_t size, + int access) { struct ib_umem *umem; struct page **page_list; @@ -275,6 +268,20 @@ umem_kfree: } return ret ? ERR_PTR(ret) : umem; } + +/** + * ib_umem_get_va - Pin and DMA map userspace memory. + * + * @device: IB device to connect UMEM + * @addr: userspace virtual address to start at + * @size: length of region to pin + * @access: IB_ACCESS_xxx flags for memory being pinned + */ +struct ib_umem *ib_umem_get_va(struct ib_device *device, unsigned long addr, + size_t size, int access) +{ + return __ib_umem_get_va(device, addr, size, access); +} EXPORT_SYMBOL(ib_umem_get_va); /**