Re: [PATCH] RDMA/hns: Fix refcount leak in hns_roce_mmap

From: xuhaoyue (A)
Date: Thu Dec 22 2022 - 22:53:55 EST


Thank you. This patch is right. Could you change it to this form?

default:
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;

On 2022/12/20 19:30:47, Miaoqian Lin wrote:
> rdma_user_mmap_entry_get_pgoff() takes 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 <linmq006@xxxxxxxxx>
> ---
> drivers/infiniband/hw/hns/hns_roce_main.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
> index 8ba68ac12388..fbff8df9236d 100644
> --- a/drivers/infiniband/hw/hns/hns_roce_main.c
> +++ b/drivers/infiniband/hw/hns/hns_roce_main.c
> @@ -443,6 +443,7 @@ static int hns_roce_mmap(struct ib_ucontext *uctx, struct vm_area_struct *vma)
> prot = pgprot_device(vma->vm_page_prot);
> break;
> default:
> + rdma_user_mmap_entry_put(rdma_entry);
> return -EINVAL;
> }
>
>