[PATCH 2/3] staging: panel: return register value

Willy Tarreau w at 1wt.eu
Mon Mar 9 06:30:07 UTC 2015


On Sun, Mar 08, 2015 at 11:07:25PM +0530, Sudip Mukherjee wrote:
> we were returning success even if the module failed to register.
> now we are returning the actual return value, success or error.
> 
> Signed-off-by: Sudip Mukherjee <sudip at vectorindia.org>
> ---
>  drivers/staging/panel/panel.c | 7 +------
>  1 file changed, 1 insertion(+), 6 deletions(-)
> 
> diff --git a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c
> index 3ef3dcf..b4c143a 100644
> --- a/drivers/staging/panel/panel.c
> +++ b/drivers/staging/panel/panel.c
> @@ -2360,11 +2360,6 @@ static int __init panel_init_module(void)
>  		return -ENODEV;
>  	}
>  
> -	if (parport_register_driver(&panel_driver)) {
> -		pr_err("could not register with parport. Aborting.\n");
> -		return -EIO;
> -	}
> -
>  	if (pprt)
>  		pr_info("driver version " PANEL_VERSION
>  			" registered on parport%d (io=0x%lx).\n", parport,
> @@ -2375,7 +2370,7 @@ static int __init panel_init_module(void)
>  	/* tells various subsystems about the fact that initialization
>  	   is finished */
>  	init_in_progress = 0;
> -	return 0;
> +	return parport_register_driver(&panel_driver);

Here I'd rather keep the error message, as it's quite annoying when a
driver does not load and you don't know why, especially with something
like parport where there are many possible causes. Something like this
would be better in my opinion :

-	return 0;
+	err = parport_register_driver(&panel_driver);
+	if (err)
+		pr_err("could not register with parport. Aborting.\n");
+	return err;

Well, I just found that currently parport_register_driver() always
succeeds, but I still think it's better to verbosely handle errors.

Thanks,
Willy



More information about the devel mailing list