2022-12-23 07:49:11

by Miaoqian Lin

[permalink] [raw]
Subject: [PATCH v2] RDMA/hns: Fix refcount leak in hns_roce_mmap

rdma_user_mmap_entry_get_pgoff() takes the reference.
Add missing rdma_user_mmap_entry_put() to release the reference.

Fixes: 0045e0d3f42e ("RDMA/hns: Support direct wqe of userspace")
Signed-off-by: Miaoqian Lin <[email protected]>
---
change in v2:
- use goto label to manage the release.
---
drivers/infiniband/hw/hns/hns_roce_main.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
index 8ba68ac12388..946ba1109e87 100644
--- a/drivers/infiniband/hw/hns/hns_roce_main.c
+++ b/drivers/infiniband/hw/hns/hns_roce_main.c
@@ -443,14 +443,15 @@ static int hns_roce_mmap(struct ib_ucontext *uctx, struct vm_area_struct *vma)
prot = pgprot_device(vma->vm_page_prot);
break;
default:
- return -EINVAL;
+ ret = -EINVAL;
+ goto out;
}

ret = rdma_user_mmap_io(uctx, vma, pfn, rdma_entry->npages * PAGE_SIZE,
prot, rdma_entry);

+out:
rdma_user_mmap_entry_put(rdma_entry);
-
return ret;
}

--
2.25.1


2022-12-28 12:37:20

by Leon Romanovsky

[permalink] [raw]
Subject: Re: [PATCH v2] RDMA/hns: Fix refcount leak in hns_roce_mmap

On Fri, 23 Dec 2022 11:29:00 +0400, Miaoqian Lin wrote:
> rdma_user_mmap_entry_get_pgoff() takes the reference.
> Add missing rdma_user_mmap_entry_put() to release the reference.
>
>

Applied, thanks!

[1/1] RDMA/hns: Fix refcount leak in hns_roce_mmap
https://git.kernel.org/rdma/rdma/c/cf6a05c8494a8a

Best regards,
--
Leon Romanovsky <[email protected]>