remove redundant code in this function by introducing a new retval
variable.

Signed-off-by: Gujulan Elango Hari Prasath <hguju...@visteon.com>
---
 drivers/staging/gs_fpgaboot/gs_fpgaboot.c | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/drivers/staging/gs_fpgaboot/gs_fpgaboot.c 
b/drivers/staging/gs_fpgaboot/gs_fpgaboot.c
index a3a10f9..cc0445c 100644
--- a/drivers/staging/gs_fpgaboot/gs_fpgaboot.c
+++ b/drivers/staging/gs_fpgaboot/gs_fpgaboot.c
@@ -290,6 +290,7 @@ static int gs_fpgaboot(void)
 {
        int err;
        struct fpgaimage        *fimage;
+       int retval = 0;
 
        fimage = kmalloc(sizeof(struct fpgaimage), GFP_KERNEL);
        if (!fimage)
@@ -298,44 +299,41 @@ static int gs_fpgaboot(void)
        err = gs_load_image(fimage, file);
        if (err) {
                pr_err("gs_load_image error\n");
+               retval = -1;
                goto err_out1;
        }
 
        err = gs_read_image(fimage);
        if (err) {
                pr_err("gs_read_image error\n");
+               retval = -1;
                goto err_out2;
        }
 
        err = gs_set_download_method(fimage);
        if (err) {
                pr_err("gs_set_download_method error\n");
+               retval = -1;
                goto err_out2;
        }
 
        err = gs_download_image(fimage, bus_2byte);
        if (err) {
                pr_err("gs_download_image error\n");
+               retval = -1;
                goto err_out2;
        }
 
+err_out2:
        err = gs_release_image(fimage);
        if (err) {
+               retval = -1;
                pr_err("gs_release_image error\n");
-               goto err_out1;
        }
-
-       kfree(fimage);
-       return 0;
-
-err_out2:
-       err = gs_release_image(fimage);
-       if (err)
-               pr_err("gs_release_image error\n");
 err_out1:
        kfree(fimage);
 
-       return -1;
+       return retval;
 
 }
 
-- 
1.9.1
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to