remove redundant code in this function by introducing a new retval variable. Signed-off-by: Gujulan Elango Hari Prasath <hgujulan@xxxxxxxxxxx> --- 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 devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel