2016-11-11 09:07:22

by Sachin Shukla

[permalink] [raw]
Subject: [PATCH] Block: mtip32xx: Improvement in code readability when memdup_user() fails.

From: "Sachin Shukla" <[email protected]>

There is no need to call kfree() if memdup_user() fails, as no memory
was allocated and the error in the error-valued pointer should be returned.

Signed-off-by: Sachin Shukla <[email protected]>
---
drivers/block/mtip32xx/mtip32xx.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/drivers/block/mtip32xx/mtip32xx.c b/drivers/block/mtip32xx/mtip32xx.c
index 3cfd879..68e332b 100644
--- a/drivers/block/mtip32xx/mtip32xx.c
+++ b/drivers/block/mtip32xx/mtip32xx.c
@@ -2035,18 +2035,14 @@ static int exec_drive_taskfile(struct driver_data *dd,
taskout = req_task->out_size;
taskin = req_task->in_size;
/* 130560 = 512 * 0xFF*/
- if (taskin > 130560 || taskout > 130560) {
- err = -EINVAL;
- goto abort;
- }
+ if (taskin > 130560 || taskout > 130560)
+ return -EINVAL;

if (taskout) {
outbuf = memdup_user(buf + outtotal, taskout);
- if (IS_ERR(outbuf)) {
- err = PTR_ERR(outbuf);
- outbuf = NULL;
- goto abort;
- }
+ if (IS_ERR(outbuf))
+ return PTR_ERR(outbuf);
+
outbuf_dma = pci_map_single(dd->pdev,
outbuf,
taskout,
--
1.7.9.5


2016-11-11 20:37:56

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] Block: mtip32xx: Improvement in code readability when memdup_user() fails.

On 11/11/2016 02:04 AM, Sachin Shukla wrote:
> From: "Sachin Shukla" <[email protected]>
>
> There is no need to call kfree() if memdup_user() fails, as no memory
> was allocated and the error in the error-valued pointer should be returned.

Applied for 4.10, thanks.

--
Jens Axboe