On Thu, May 28, 2015 at 09:38:23AM +0000, Gujulan Elango, Hari Prasath (H.)
wrote:
> remove redundant code in this function by introducing a new retval
> variable.
>
> Signed-off-by: Gujulan Elango Hari Prasath <[email protected]>
No the original code is quite bad but this patch makes it worse.
gs_release_image() can't fail, and it should be a void function.
> ---
> 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) {
goto free_fimage;
> pr_err("gs_load_image error\n");
> + retval = -1;
> goto err_out1;
> }
>
> err = gs_read_image(fimage);
> if (err) {
goto release_image;
> pr_err("gs_read_image error\n");
> + retval = -1;
> goto err_out2;
> }
>
> err = gs_set_download_method(fimage);
> if (err) {
goto release_image;
> pr_err("gs_set_download_method error\n");
> + retval = -1;
> goto err_out2;
> }
>
> err = gs_download_image(fimage, bus_2byte);
release_image:
gs_release_image(fimage);
free_fimage:
kfree(fimage);
return err;
regards,
dan carpenter
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel