[PATCH 004/173] ALSA: atmel: ac97: Convert to platform remove callback returning void

Claudiu.Beznea at microchip.com Claudiu.Beznea at microchip.com
Thu Mar 16 04:11:56 PDT 2023


On 15.03.2023 17:04, Uwe Kleine-König wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> 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 (mostly) ignored
> 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.
> 
> 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 at pengutronix.de>

Reviewed-by: Claudiu Beznea <claudiu.beznea at microchip.com>


> ---
>  sound/atmel/ac97c.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/atmel/ac97c.c b/sound/atmel/ac97c.c
> index 66ecbd4d034e..c8912b8a1dc5 100644
> --- a/sound/atmel/ac97c.c
> +++ b/sound/atmel/ac97c.c
> @@ -843,7 +843,7 @@ static SIMPLE_DEV_PM_OPS(atmel_ac97c_pm, atmel_ac97c_suspend, atmel_ac97c_resume
>  #define ATMEL_AC97C_PM_OPS     NULL
>  #endif
> 
> -static int atmel_ac97c_remove(struct platform_device *pdev)
> +static void atmel_ac97c_remove(struct platform_device *pdev)
>  {
>         struct snd_card *card = platform_get_drvdata(pdev);
>         struct atmel_ac97c *chip = get_chip(card);
> @@ -858,13 +858,11 @@ static int atmel_ac97c_remove(struct platform_device *pdev)
>         free_irq(chip->irq, chip);
> 
>         snd_card_free(card);
> -
> -       return 0;
>  }
> 
>  static struct platform_driver atmel_ac97c_driver = {
>         .probe          = atmel_ac97c_probe,
> -       .remove         = atmel_ac97c_remove,
> +       .remove_new     = atmel_ac97c_remove,
>         .driver         = {
>                 .name   = "atmel_ac97c",
>                 .pm     = ATMEL_AC97C_PM_OPS,
> --
> 2.39.2
> 



More information about the linux-arm-kernel mailing list