[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <f6662b7b-bdb7-2706-1e12-47c61d3474b6@oracle.com>
Date: Thu, 24 Jun 2021 11:55:31 -0700
From: Gerd Rausch <gerd.rausch@...cle.com>
To: linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org,
Doug Ledford <dledford@...hat.com>,
Jason Gunthorpe <jgg@...pe.ca>
Subject: [PATCH 1/1] RDMA/cma: Fix rdma_resolve_route memory leak
Fix a memory leak when "rmda_resolve_route" is called
more than once on the same "rdma_cm_id".
Signed-off-by: Gerd Rausch <gerd.rausch@...cle.com>
---
drivers/infiniband/core/cma.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c
index ab148a696c0c..4a76d5b4163e 100644
--- a/drivers/infiniband/core/cma.c
+++ b/drivers/infiniband/core/cma.c
@@ -2819,7 +2819,8 @@ static int cma_resolve_ib_route(struct rdma_id_private *id_priv,
cma_init_resolve_route_work(work, id_priv);
- route->path_rec = kmalloc(sizeof *route->path_rec, GFP_KERNEL);
+ if (!route->path_rec)
+ route->path_rec = kmalloc(sizeof *route->path_rec, GFP_KERNEL);
if (!route->path_rec) {
ret = -ENOMEM;
goto err1;
--
2.24.1
Powered by blists - more mailing lists