2020-05-16 21:47:18

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH] dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'

Commit b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
has moved some code in the probe function and reordered the error handling
path accordingly.
However, a goto has been missed.

Fix it and goto the right label if 'dma_async_device_register()' fails, so
that all resources are released.

Fixes: b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
Signed-off-by: Christophe JAILLET <[email protected]>
---
drivers/dma/tegra210-adma.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/dma/tegra210-adma.c b/drivers/dma/tegra210-adma.c
index c4ce5dfb149b..db58d7e4f9fe 100644
--- a/drivers/dma/tegra210-adma.c
+++ b/drivers/dma/tegra210-adma.c
@@ -900,7 +900,7 @@ static int tegra_adma_probe(struct platform_device *pdev)
ret = dma_async_device_register(&tdma->dma_dev);
if (ret < 0) {
dev_err(&pdev->dev, "ADMA registration failed: %d\n", ret);
- goto irq_dispose;
+ goto rpm_put;
}

ret = of_dma_controller_register(pdev->dev.of_node,
--
2.25.1


2020-05-18 11:45:31

by Jon Hunter

[permalink] [raw]
Subject: Re: [PATCH] dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'


On 16/05/2020 22:42, Christophe JAILLET wrote:
> Commit b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
> has moved some code in the probe function and reordered the error handling
> path accordingly.
> However, a goto has been missed.
>
> Fix it and goto the right label if 'dma_async_device_register()' fails, so
> that all resources are released.
>
> Fixes: b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> drivers/dma/tegra210-adma.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/dma/tegra210-adma.c b/drivers/dma/tegra210-adma.c
> index c4ce5dfb149b..db58d7e4f9fe 100644
> --- a/drivers/dma/tegra210-adma.c
> +++ b/drivers/dma/tegra210-adma.c
> @@ -900,7 +900,7 @@ static int tegra_adma_probe(struct platform_device *pdev)
> ret = dma_async_device_register(&tdma->dma_dev);
> if (ret < 0) {
> dev_err(&pdev->dev, "ADMA registration failed: %d\n", ret);
> - goto irq_dispose;
> + goto rpm_put;
> }
>
> ret = of_dma_controller_register(pdev->dev.of_node,


Thanks for fixing this!

Reviewed-by: Jon Hunter <[email protected]>

Cheers
Jon

--
nvpublic

2020-05-19 16:29:55

by Thierry Reding

[permalink] [raw]
Subject: Re: [PATCH] dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'

On Sat, May 16, 2020 at 11:42:05PM +0200, Christophe JAILLET wrote:
> Commit b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
> has moved some code in the probe function and reordered the error handling
> path accordingly.
> However, a goto has been missed.
>
> Fix it and goto the right label if 'dma_async_device_register()' fails, so
> that all resources are released.
>
> Fixes: b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> drivers/dma/tegra210-adma.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Acked-by: Thierry Reding <[email protected]>


Attachments:
(No filename) (692.00 B)
signature.asc (849.00 B)
Download all attachments

2020-05-19 16:58:42

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH] dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'

On 16-05-20, 23:42, Christophe JAILLET wrote:
> Commit b53611fb1ce9 ("dmaengine: tegra210-adma: Fix crash during probe")
> has moved some code in the probe function and reordered the error handling
> path accordingly.
> However, a goto has been missed.
>
> Fix it and goto the right label if 'dma_async_device_register()' fails, so
> that all resources are released.

Applied for fixes, thanks

--
~Vinod