diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.19/950-0331-bcm2835-mmc-Fix-struct-mmc_host-leak-on-probe.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.19/950-0331-bcm2835-mmc-Fix-struct-mmc_host-leak-on-probe.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.19/950-0331-bcm2835-mmc-Fix-struct-mmc_host-leak-on-probe.patch b/target/linux/brcm2708/patches-4.19/950-0331-bcm2835-mmc-Fix-struct-mmc_host-leak-on-probe.patch new file mode 100644 index 0000000000..9ec4404bef --- /dev/null +++ b/target/linux/brcm2708/patches-4.19/950-0331-bcm2835-mmc-Fix-struct-mmc_host-leak-on-probe.patch @@ -0,0 +1,29 @@ +From 82ced13dc5805f6e49e2182269e672b20d8394bc Mon Sep 17 00:00:00 2001 +From: Lukas Wunner <lukas@wunner.de> +Date: Sat, 19 Jan 2019 08:06:48 +0100 +Subject: [PATCH] bcm2835-mmc: Fix struct mmc_host leak on probe + +The BCM2835 MMC host driver requests the bus address of the host's +register map on probe. If that fails, the driver leaks the struct +mmc_host allocated earlier. + +Fix it. + +Signed-off-by: Lukas Wunner <lukas@wunner.de> +Cc: Frank Pavlic <f.pavlic@kunbus.de> +--- + drivers/mmc/host/bcm2835-mmc.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/mmc/host/bcm2835-mmc.c ++++ b/drivers/mmc/host/bcm2835-mmc.c +@@ -1439,7 +1439,8 @@ static int bcm2835_mmc_probe(struct plat + addr = of_get_address(node, 0, NULL, NULL); + if (!addr) { + dev_err(dev, "could not get DMA-register address\n"); +- return -ENODEV; ++ ret = -ENODEV; ++ goto err; + } + host->bus_addr = be32_to_cpup(addr); + pr_debug(" - ioaddr %lx, iomem->start %lx, bus_addr %lx\n", |