diff mbox series

RDMA/hns: Replace kfree with kvfree

Message ID 20211210094234.5829-1-billsjc@sjtu.edu.cn (mailing list archive)
State Accepted
Delegated to: Jason Gunthorpe
Headers show
Series RDMA/hns: Replace kfree with kvfree | expand

Commit Message

Jiacheng Shi Dec. 10, 2021, 9:42 a.m. UTC
Variables allocated by kvmalloc_array should not be freed by kfree.
Because they may be allocated by vmalloc.
So we replace kfree with kvfree here.

Fixes: 6fd610c5733d ("RDMA/hns: Support 0 hop addressing for SRQ buffer")
Signed-off-by: Jiacheng Shi <billsjc@sjtu.edu.cn>
---
 drivers/infiniband/hw/hns/hns_roce_srq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Wenpeng Liang Dec. 14, 2021, 2:14 p.m. UTC | #1
On 2021/12/10 17:42, Jiacheng Shi wrote:
> Variables allocated by kvmalloc_array should not be freed by kfree.
> Because they may be allocated by vmalloc.
> So we replace kfree with kvfree here.
> 
> Fixes: 6fd610c5733d ("RDMA/hns: Support 0 hop addressing for SRQ buffer")
> Signed-off-by: Jiacheng Shi <billsjc@sjtu.edu.cn>
> ---
>  drivers/infiniband/hw/hns/hns_roce_srq.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/infiniband/hw/hns/hns_roce_srq.c b/drivers/infiniband/hw/hns/hns_roce_srq.c
> index 6eee9deadd12..e64ef6903fb4 100644
> --- a/drivers/infiniband/hw/hns/hns_roce_srq.c
> +++ b/drivers/infiniband/hw/hns/hns_roce_srq.c
> @@ -259,7 +259,7 @@ static int alloc_srq_wrid(struct hns_roce_dev *hr_dev, struct hns_roce_srq *srq)
>  
>  static void free_srq_wrid(struct hns_roce_srq *srq)
>  {
> -	kfree(srq->wrid);
> +	kvfree(srq->wrid);
>  	srq->wrid = NULL;
>  }
>  
> 

Thanks for the patch.

Acked-by: Wenpeng Liang <liangwenpeng@huawei.com>

Thanks
Wenpeng
Jason Gunthorpe Dec. 15, 2021, 12:17 a.m. UTC | #2
On Fri, Dec 10, 2021 at 01:42:34AM -0800, Jiacheng Shi wrote:
> Variables allocated by kvmalloc_array should not be freed by kfree.
> Because they may be allocated by vmalloc.
> So we replace kfree with kvfree here.
> 
> Fixes: 6fd610c5733d ("RDMA/hns: Support 0 hop addressing for SRQ buffer")
> Signed-off-by: Jiacheng Shi <billsjc@sjtu.edu.cn>
> Acked-by: Wenpeng Liang <liangwenpeng@huawei.com>
> ---
>  drivers/infiniband/hw/hns/hns_roce_srq.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied to for-rc, thanks

Jason
diff mbox series

Patch

diff --git a/drivers/infiniband/hw/hns/hns_roce_srq.c b/drivers/infiniband/hw/hns/hns_roce_srq.c
index 6eee9deadd12..e64ef6903fb4 100644
--- a/drivers/infiniband/hw/hns/hns_roce_srq.c
+++ b/drivers/infiniband/hw/hns/hns_roce_srq.c
@@ -259,7 +259,7 @@  static int alloc_srq_wrid(struct hns_roce_dev *hr_dev, struct hns_roce_srq *srq)
 
 static void free_srq_wrid(struct hns_roce_srq *srq)
 {
-	kfree(srq->wrid);
+	kvfree(srq->wrid);
 	srq->wrid = NULL;
 }