Messages in this thread | | | Date | Mon, 25 Sep 2023 09:03:43 -0400 | From | "Gabriel L. Somlo" <> | Subject | Re: [PATCH 12/40] soc/litex: litex_soc_ctrl: Convert to platform remove callback returning void |
| |
On Mon, Sep 25, 2023 at 11:55:03AM +0200, Uwe Kleine-König wrote: > The .remove() callback for a platform driver returns an int which makes > many driver authors wrongly assume it's possible to do error handling by > returning an error code. However the value returned is ignored (apart > from emitting a warning) and this typically results in resource leaks. > To improve here there is a quest to make the remove callback return > void. In the first step of this quest all drivers are converted to > .remove_new() which already returns void. Eventually after all drivers > are converted, .remove_new() will be renamed to .remove(). > > Trivially convert this driver from always returning zero in the remove > callback to the void returning variant. > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Thanks! Acked-by: Gabriel Somlo <gsomlo@gmail.com>
> --- > drivers/soc/litex/litex_soc_ctrl.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/soc/litex/litex_soc_ctrl.c b/drivers/soc/litex/litex_soc_ctrl.c > index f75790091d38..10813299aa10 100644 > --- a/drivers/soc/litex/litex_soc_ctrl.c > +++ b/drivers/soc/litex/litex_soc_ctrl.c > @@ -120,12 +120,11 @@ static int litex_soc_ctrl_probe(struct platform_device *pdev) > return 0; > } > > -static int litex_soc_ctrl_remove(struct platform_device *pdev) > +static void litex_soc_ctrl_remove(struct platform_device *pdev) > { > struct litex_soc_ctrl_device *soc_ctrl_dev = platform_get_drvdata(pdev); > > unregister_restart_handler(&soc_ctrl_dev->reset_nb); > - return 0; > } > > static struct platform_driver litex_soc_ctrl_driver = { > @@ -134,7 +133,7 @@ static struct platform_driver litex_soc_ctrl_driver = { > .of_match_table = of_match_ptr(litex_soc_ctrl_of_match) > }, > .probe = litex_soc_ctrl_probe, > - .remove = litex_soc_ctrl_remove, > + .remove_new = litex_soc_ctrl_remove, > }; > > module_platform_driver(litex_soc_ctrl_driver); > -- > 2.40.1 >
| |