Block: mtip32xx: Improvement in code readability when memdup_user() fails.
authorSachin Shukla <sachin.s5@samsung.com>
Fri, 11 Nov 2016 09:04:51 +0000 (14:34 +0530)
committerJens Axboe <axboe@fb.com>
Fri, 11 Nov 2016 20:37:04 +0000 (13:37 -0700)
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 <sachin.s5@samsung.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
drivers/block/mtip32xx/mtip32xx.c

index 3cfd879267b2dd364e3bac2603a645b4f575809f..cfe0108a7d30a2bc704c011be07ab0f07c63e38c 100644 (file)
@@ -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,