Re: [PATCH 51/59] dma: ti: edma: Convert to platform remove callback returning void

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 9/19/23 16:31, 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() is renamed to .remove().
> 
> Trivially convert this driver from always returning zero in the remove
> callback to the void returning variant.

Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxxxxx>

> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
> ---
>  drivers/dma/ti/edma.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/dma/ti/edma.c b/drivers/dma/ti/edma.c
> index aa8e2e8ac260..3ed022918ec0 100644
> --- a/drivers/dma/ti/edma.c
> +++ b/drivers/dma/ti/edma.c
> @@ -2550,7 +2550,7 @@ static void edma_cleanupp_vchan(struct dma_device *dmadev)
>  	}
>  }
>  
> -static int edma_remove(struct platform_device *pdev)
> +static void edma_remove(struct platform_device *pdev)
>  {
>  	struct device *dev = &pdev->dev;
>  	struct edma_cc *ecc = dev_get_drvdata(dev);
> @@ -2568,8 +2568,6 @@ static int edma_remove(struct platform_device *pdev)
>  	edma_free_slot(ecc, ecc->dummy_slot);
>  	pm_runtime_put_sync(dev);
>  	pm_runtime_disable(dev);
> -
> -	return 0;
>  }
>  
>  #ifdef CONFIG_PM_SLEEP
> @@ -2628,7 +2626,7 @@ static const struct dev_pm_ops edma_pm_ops = {
>  
>  static struct platform_driver edma_driver = {
>  	.probe		= edma_probe,
> -	.remove		= edma_remove,
> +	.remove_new	= edma_remove,
>  	.driver = {
>  		.name	= "edma",
>  		.pm	= &edma_pm_ops,

-- 
Péter



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux