Re: [PATCH 57/59] dma: xilinx: xilinx_dma: Convert to platform remove callback returning void

Uwe Kleine-König
2023-09-28T07:27:57Z

[-- Attachment #1.1: Type: text/plain, Size: 2998 bytes --]

Hello,

On Fri, Sep 22, 2023 at 11:36:50AM +0000, Pandey, Radhey Shyam wrote:
> > -----Original Message-----
> > From: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> > Sent: Tuesday, September 19, 2023 7:02 PM
> > To: Vinod Koul <vkoul@kernel.org>
> > Cc: Simek, Michal <michal.simek@amd.com>; Pandey, Radhey Shyam
> > <radhey.shyam.pandey@amd.com>; Rob Herring <robh@kernel.org>; Peter
> > Korsgaard <peter@korsgaard.com>; Liu Shixin <liushixin2@huawei.com>;
> > dmaengine@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
> > kernel@pengutronix.de
> > Subject: [PATCH 57/59] dma: xilinx: xilinx_dma: Convert to platform remove
> > callback returning void
> >
> > 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.
> >
> > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> > ---
> > drivers/dma/xilinx/xilinx_dma.c | 6 ++----
> > 1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/dma/xilinx/xilinx_dma.c
> > b/drivers/dma/xilinx/xilinx_dma.c index 0a3b2e22f23d..0c363a1ed853
> > 100644
> > --- a/drivers/dma/xilinx/xilinx_dma.c
> > +++ b/drivers/dma/xilinx/xilinx_dma.c
> > @@ -3245,7 +3245,7 @@ static int xilinx_dma_probe(struct platform_device
> > *pdev)
> > *
> > * Return: Always '0'
> > */
>
> Nit - kernel-doc return documentation needs to be updated.

Good catch, I should add that to my pre-send checks. I fixed it in my
tree, so an eventual v2 will be good. I'll wait a bit before resending.

@Vinod: If you pick up this series, feel free to skip this patch or
fixup with

diff --git a/drivers/dma/xilinx/xilinx_dma.c b/drivers/dma/xilinx/xilinx_dma.c
index 0c363a1ed853..e40696f6f864 100644
--- a/drivers/dma/xilinx/xilinx_dma.c
+++ b/drivers/dma/xilinx/xilinx_dma.c
@@ -3242,8 +3242,6 @@ static int xilinx_dma_probe(struct platform_device *pdev)
/**
* xilinx_dma_remove - Driver remove function
* @pdev: Pointer to the platform_device structure
- *
- * Return: Always '0'
*/
static void xilinx_dma_remove(struct platform_device *pdev)
{

or apply as is (in which case I will follow up with a separate patch to
fix this).

Thanks
Uwe

--
Pengutronix e.K. | Uwe Kleine-König |
Industrial Linux Solutions | https://www.pengutronix.de/ |

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]