[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <61292a4f369229eee03394247385e955027283f8.1505687047.git.christophe.jaillet@wanadoo.fr>
Date: Mon, 18 Sep 2017 00:33:05 +0200
From: Christophe JAILLET <christophe.jaillet@...adoo.fr>
To: mporter@...nel.crashing.org, alexandre.bounine@....com,
lstoakes@...il.com, akpm@...ux-foundation.org,
jesper.nilsson@...s.com, christian.koenig@....com,
logang@...tatee.com
Cc: linux-kernel@...r.kernel.org, kernel-janitors@...r.kernel.org,
Christophe JAILLET <christophe.jaillet@...adoo.fr>
Subject: [PATCH 1/2] rapidio: Fix resources leak in error handling path in 'rio_dma_transfer()'
If 'dma_map_sg()', we should branch to the existing error handling path to
free some resources before returning.
Signed-off-by: Christophe JAILLET <christophe.jaillet@...adoo.fr>
---
drivers/rapidio/devices/rio_mport_cdev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/rapidio/devices/rio_mport_cdev.c b/drivers/rapidio/devices/rio_mport_cdev.c
index 5beb0c361076..76afe1449cab 100644
--- a/drivers/rapidio/devices/rio_mport_cdev.c
+++ b/drivers/rapidio/devices/rio_mport_cdev.c
@@ -963,7 +963,8 @@ rio_dma_transfer(struct file *filp, u32 transfer_mode,
req->sgt.sgl, req->sgt.nents, dir);
if (nents == -EFAULT) {
rmcd_error("Failed to map SG list");
- return -EFAULT;
+ ret = -EFAULT;
+ goto err_pg;
}
ret = do_dma_request(req, xfer, sync, nents);
--
2.11.0
Powered by blists - more mailing lists