Skip to contentSkip to conversation

FAILED: patch "[PATCH] mmc: sdhci-pci: Fix possible memory leak caused by missing" failed to apply to 4.9-stable tree

PATCH [email protected] 1 participant 1 message Nov 21, 2022

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

Possible dependencies:

222cfa0118aa ("mmc: sdhci-pci: Fix possible memory leak caused by missing pci_dev_put()") c31165d7400b ("mmc: sdhci-pci: Add support for HS200 tuning mode on AMD, eMMC-4.5.1")

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From 222cfa0118aa68687ace74aab8fdf77ce8fbd7e6 Mon Sep 17 00:00:00 2001
From: Xiongfeng Wang <[email protected]>
Date: Mon, 14 Nov 2022 16:31:00 +0800
Subject: [PATCH] mmc: sdhci-pci: Fix possible memory leak caused by missing
pci_dev_put()

pci_get_device() will increase the reference count for the returned pci_dev. We need to use pci_dev_put() to decrease the reference count before amd_probe() returns. There is no problem for the 'smbus_dev == NULL' branch because pci_dev_put() can also handle the NULL input parameter case.

Fixes 659c9bc114a8 ("mmc: sdhci-pci: Build o2micro support in the same module")
drivers/mmc/host/sdhci-pci-core.c +2 -0
index 34ea1acbb3cc..28dc65023fa9 100644
@@ -1749,6 +1749,8 @@ static int amd_probe(struct sdhci_pci_chip *chip)
 		}
 	}
 
+	pci_dev_put(smbus_dev);
+
 	if (gen == AMD_CHIPSET_BEFORE_ML || gen == AMD_CHIPSET_CZ)
 		chip->quirks2 |= SDHCI_QUIRK2_CLEAR_TRANSFERMODE_REG_BEFORE_CMD;