Home Home > GIT Browse > SLE12-SP3-AZURE
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOliver Neukum <oneukum@suse.com>2019-02-21 14:39:47 +0100
committerOliver Neukum <oneukum@suse.com>2019-02-21 14:39:47 +0100
commit55b430a9fbcf6835fc28a0a629c05afa23819aa6 (patch)
tree646fb6d3c134cc1294d4cb954319abd294ca1cc9
parent391cf609349f2100ee0a68a3112a305f16e1e0ba (diff)
mmc: bcm2835: Fix DMA channel leak on probe error (bsc#1120902).
-rw-r--r--patches.fixes/0001-mmc-bcm2835-Fix-DMA-channel-leak-on-probe-error.patch35
-rw-r--r--series.conf1
2 files changed, 36 insertions, 0 deletions
diff --git a/patches.fixes/0001-mmc-bcm2835-Fix-DMA-channel-leak-on-probe-error.patch b/patches.fixes/0001-mmc-bcm2835-Fix-DMA-channel-leak-on-probe-error.patch
new file mode 100644
index 0000000000..62528bbbdc
--- /dev/null
+++ b/patches.fixes/0001-mmc-bcm2835-Fix-DMA-channel-leak-on-probe-error.patch
@@ -0,0 +1,35 @@
+From 8c9620b1cc9b69e82fa8d4081d646d0016b602e7 Mon Sep 17 00:00:00 2001
+From: Lukas Wunner <lukas@wunner.de>
+Date: Sat, 19 Jan 2019 16:31:00 +0100
+Subject: [PATCH] mmc: bcm2835: Fix DMA channel leak on probe error
+Git-commit: 8c9620b1cc9b69e82fa8d4081d646d0016b602e7
+Patch-mainline: v5.0-rc5
+References: bsc#1120902
+
+The BCM2835 MMC host driver requests a DMA channel on probe but neglects
+to release the channel in the probe error path. The channel may
+therefore be leaked, in particular if devm_clk_get() causes probe
+deferral. Fix it.
+
+Fixes: 660fc733bd74 ("mmc: bcm2835: Add new driver for the sdhost controller.")
+Signed-off-by: Lukas Wunner <lukas@wunner.de>
+Cc: stable@vger.kernel.org # v4.12+
+Cc: Frank Pavlic <f.pavlic@kunbus.de>
+Tested-by: Stefan Wahren <stefan.wahren@i2se.com>
+Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
+Signed-off-by: Oliver Neukum <oneukum@suse.com>
+---
+ drivers/mmc/host/sdhci-bcm2835.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/mmc/host/sdhci-bcm2835.c
++++ b/drivers/mmc/host/sdhci-bcm2835.c
+@@ -186,6 +186,8 @@ static int bcm2835_sdhci_probe(struct pl
+ err_clk:
+ clk_disable_unprepare(pltfm_host->clk);
+ err:
++ if (host->dma_chan_rxtx)
++ dma_release_channel(host->dma_chan_rxtx);
+ sdhci_pltfm_free(pdev);
+ return ret;
+ }
diff --git a/series.conf b/series.conf
index 7bc06003ec..2a30b0567a 100644
--- a/series.conf
+++ b/series.conf
@@ -24405,6 +24405,7 @@
patches.drivers/iommu-amd-unmap-all-mapped-pages-in-error-path-of-map_sg
patches.drivers/iommu-vt-d-fix-memory-leak-in-intel_iommu_put_resv_regions
patches.drivers/iommu-amd-fix-iommu-page-flush-when-detach-device-from-a-domain
+ patches.fixes/0001-mmc-bcm2835-Fix-DMA-channel-leak-on-probe-error.patch
patches.arch/kvm-fix-kvm_ioctl_create_device-reference-counting-cve-2019-6974
patches.fixes/0001-gpu-ipu-v3-Fix-i.MX51-CSI-control-registers-offset.patch
patches.fixes/0002-gpu-ipu-v3-Fix-CSI-offsets-for-imx53.patch