drivers/platform/x86/amd/pmc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
pci_get_domain_bus_and_slot() takes reference, the caller should release
the reference by calling pci_dev_put() after use. Call pci_dev_put() in
the error path to fix this.
Fixes: 3d7d407dfb05 ("platform/x86: amd-pmc: Add support for AMD Spill to DRAM STB feature")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
---
drivers/platform/x86/amd/pmc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c
index 439d282aafd1..8d924986381b 100644
--- a/drivers/platform/x86/amd/pmc.c
+++ b/drivers/platform/x86/amd/pmc.c
@@ -932,7 +932,7 @@ static int amd_pmc_probe(struct platform_device *pdev)
if (enable_stb && (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id == AMD_CPU_ID_CB)) {
err = amd_pmc_s2d_init(dev);
if (err)
- return err;
+ goto err_pci_dev_put;
}
platform_set_drvdata(pdev, dev);
--
2.25.1
Hi, On 12/29/22 08:25, Miaoqian Lin wrote: > pci_get_domain_bus_and_slot() takes reference, the caller should release > the reference by calling pci_dev_put() after use. Call pci_dev_put() in > the error path to fix this. > > Fixes: 3d7d407dfb05 ("platform/x86: amd-pmc: Add support for AMD Spill to DRAM STB feature") > Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Thank you for your patch, I've applied this patch to my fixes branch: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=fixes Note it will show up in my fixes branch once I've pushed my local branch there, which might take a while. I will include this patch in my next fixes pull-req to Linus for the current kernel development cycle. Regards, Hans > --- > drivers/platform/x86/amd/pmc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c > index 439d282aafd1..8d924986381b 100644 > --- a/drivers/platform/x86/amd/pmc.c > +++ b/drivers/platform/x86/amd/pmc.c > @@ -932,7 +932,7 @@ static int amd_pmc_probe(struct platform_device *pdev) > if (enable_stb && (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id == AMD_CPU_ID_CB)) { > err = amd_pmc_s2d_init(dev); > if (err) > - return err; > + goto err_pci_dev_put; > } > > platform_set_drvdata(pdev, dev);
[Public] > -----Original Message----- > From: Miaoqian Lin <linmq006@gmail.com> > Sent: Thursday, December 29, 2022 01:26 > To: S-k, Shyam-sundar <Shyam-sundar.S-k@amd.com>; Hans de Goede > <hdegoede@redhat.com>; Mark Gross <markgross@kernel.org>; Goswami, > Sanket <Sanket.Goswami@amd.com>; Limonciello, Mario > <Mario.Limonciello@amd.com>; platform-driver-x86@vger.kernel.org; linux- > kernel@vger.kernel.org > Cc: linmq006@gmail.com > Subject: [PATCH] platform/x86/amd: Fix refcount leak in amd_pmc_probe > > pci_get_domain_bus_and_slot() takes reference, the caller should release > the reference by calling pci_dev_put() after use. Call pci_dev_put() in > the error path to fix this. > > Fixes: 3d7d407dfb05 ("platform/x86: amd-pmc: Add support for AMD Spill to > DRAM STB feature") > Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Makes sense to me, thanks! Reviewed-by: Mario Limonciello <mario.limonciello@amd.com> > --- > drivers/platform/x86/amd/pmc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/amd/pmc.c > b/drivers/platform/x86/amd/pmc.c > index 439d282aafd1..8d924986381b 100644 > --- a/drivers/platform/x86/amd/pmc.c > +++ b/drivers/platform/x86/amd/pmc.c > @@ -932,7 +932,7 @@ static int amd_pmc_probe(struct platform_device > *pdev) > if (enable_stb && (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id > == AMD_CPU_ID_CB)) { > err = amd_pmc_s2d_init(dev); > if (err) > - return err; > + goto err_pci_dev_put; > } > > platform_set_drvdata(pdev, dev); > -- > 2.25.1
© 2016 - 2025 Red Hat, Inc.