Re: [PATCH] dmaengine: qcom_hidma: Simplify error handling path in hidma_probe

From: Dan Carpenter
Date: Tue Apr 28 2020 - 08:56:53 EST


On Mon, Apr 27, 2020 at 01:10:43PM +0200, Christophe JAILLET wrote:
> There is no need to call 'hidma_debug_uninit()' in the error handling
> path. 'hidma_debug_init()' has not been called yet.
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> ---
> drivers/dma/qcom/hidma.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/dma/qcom/hidma.c b/drivers/dma/qcom/hidma.c
> index 411f91fde734..87490e125bc3 100644
> --- a/drivers/dma/qcom/hidma.c
> +++ b/drivers/dma/qcom/hidma.c
> @@ -897,7 +897,6 @@ static int hidma_probe(struct platform_device *pdev)
> if (msi)
^^^
This test doesn't work. It will call free hidma_free_msis() if the
hidma_request_msi() call fails. We should do:

if (msi) {
rc = hidma_request_msi(dmadev, pdev);
msi = false;
}

if (!msi) {
hidma_ll_setup_irq(dmadev->lldev, false);
rc = devm_request_irq(&pdev->dev, chirq, hidma_chirq_handler,
0, "qcom-hidma", dmadev->lldev);
if (rc)
goto uninit;
}


> hidma_free_msis(dmadev);
>
> - hidma_debug_uninit(dmadev);
> hidma_ll_uninit(dmadev->lldev);
> dmafree:
> if (dmadev)
^^^^^^
This test isn't necessary and should be deleted.

regards,
dan carpenter