]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.9-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 May 2020 12:21:26 +0000 (14:21 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 May 2020 12:21:26 +0000 (14:21 +0200)
added patches:
dmaengine-tegra210-adma-fix-an-error-handling-path-in-tegra_adma_probe.patch

queue-4.9/dmaengine-tegra210-adma-fix-an-error-handling-path-in-tegra_adma_probe.patch [new file with mode: 0644]
queue-4.9/series

diff --git a/queue-4.9/dmaengine-tegra210-adma-fix-an-error-handling-path-in-tegra_adma_probe.patch b/queue-4.9/dmaengine-tegra210-adma-fix-an-error-handling-path-in-tegra_adma_probe.patch
new file mode 100644 (file)
index 0000000..5caa106
--- /dev/null
@@ -0,0 +1,40 @@
+From 3a5fd0dbd87853f8bd2ea275a5b3b41d6686e761 Mon Sep 17 00:00:00 2001
+From: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
+Date: Sat, 16 May 2020 23:42:05 +0200
+Subject: dmaengine: tegra210-adma: Fix an error handling path in 'tegra_adma_probe()'
+
+From: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
+
+commit 3a5fd0dbd87853f8bd2ea275a5b3b41d6686e761 upstream.
+
+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 <christophe.jaillet@wanadoo.fr>
+Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
+Acked-by: Thierry Reding <treding@nvidia.com>
+Link: https://lore.kernel.org/r/20200516214205.276266-1-christophe.jaillet@wanadoo.fr
+Signed-off-by: Vinod Koul <vkoul@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/dma/tegra210-adma.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/dma/tegra210-adma.c
++++ b/drivers/dma/tegra210-adma.c
+@@ -793,7 +793,7 @@ static int tegra_adma_probe(struct platf
+       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,
index 4f88fd8139874483776ee05bdb9bcb53dcad50a8..1369e949e6410d8ed0e034669457c5af11ce851e 100644 (file)
@@ -47,3 +47,4 @@ l2tp-initialise-l2tp_eth-sessions-before-registering-them.patch
 l2tp-protect-sock-pointer-of-struct-pppol2tp_session-with-rcu.patch
 l2tp-initialise-ppp-sessions-before-registering-them.patch
 alsa-pcm-fix-incorrect-hw_base-increase.patch
+dmaengine-tegra210-adma-fix-an-error-handling-path-in-tegra_adma_probe.patch