drivers/pci/controller/pcie-mediatek.c | 1 + 1 file changed, 1 insertion(+)
The of_find_compatible_node() function returns a node pointer with
refcount incremented, We should use of_node_put() on it when done
Add the missing of_node_put() to release the refcount.
Fixes: 87e8657ba99c ("PCI: mediatek: Add new method to get shared pcie-cfg base address")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
---
drivers/pci/controller/pcie-mediatek.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c
index ddfbd4aebdec..be8bd919cb88 100644
--- a/drivers/pci/controller/pcie-mediatek.c
+++ b/drivers/pci/controller/pcie-mediatek.c
@@ -1008,6 +1008,7 @@ static int mtk_pcie_subsys_powerup(struct mtk_pcie *pcie)
"mediatek,generic-pciecfg");
if (cfg_node) {
pcie->cfg = syscon_node_to_regmap(cfg_node);
+ of_node_put(cfg_node);
if (IS_ERR(pcie->cfg))
return PTR_ERR(pcie->cfg);
}
--
2.17.1
Hi Miaoqian, > The of_find_compatible_node() function returns a node pointer with > refcount incremented, We should use of_node_put() on it when done > Add the missing of_node_put() to release the refcount. > > Fixes: 87e8657ba99c ("PCI: mediatek: Add new method to get shared pcie-cfg base address") > Signed-off-by: Miaoqian Lin <linmq006@gmail.com> > --- > drivers/pci/controller/pcie-mediatek.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c > index ddfbd4aebdec..be8bd919cb88 100644 > --- a/drivers/pci/controller/pcie-mediatek.c > +++ b/drivers/pci/controller/pcie-mediatek.c > @@ -1008,6 +1008,7 @@ static int mtk_pcie_subsys_powerup(struct mtk_pcie *pcie) > "mediatek,generic-pciecfg"); > if (cfg_node) { > pcie->cfg = syscon_node_to_regmap(cfg_node); > + of_node_put(cfg_node); > if (IS_ERR(pcie->cfg)) > return PTR_ERR(pcie->cfg); > } Thanks for this patch. Reviewed-by: Miles Chen <miles.chen@mediatek.com> Thanks, Miles
Il 09/03/22 10:19, Miaoqian Lin ha scritto: > The of_find_compatible_node() function returns a node pointer with > refcount incremented, We should use of_node_put() on it when done > Add the missing of_node_put() to release the refcount. > > Fixes: 87e8657ba99c ("PCI: mediatek: Add new method to get shared pcie-cfg base address") > Signed-off-by: Miaoqian Lin <linmq006@gmail.com> > Reviewed-by: Miles Chen <miles.chen@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> > --- > drivers/pci/controller/pcie-mediatek.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c > index ddfbd4aebdec..be8bd919cb88 100644 > --- a/drivers/pci/controller/pcie-mediatek.c > +++ b/drivers/pci/controller/pcie-mediatek.c > @@ -1008,6 +1008,7 @@ static int mtk_pcie_subsys_powerup(struct mtk_pcie *pcie) > "mediatek,generic-pciecfg"); > if (cfg_node) { > pcie->cfg = syscon_node_to_regmap(cfg_node); > + of_node_put(cfg_node); > if (IS_ERR(pcie->cfg)) > return PTR_ERR(pcie->cfg); > } >
On Wed, Mar 09, 2022 at 09:19:52AM +0000, Miaoqian Lin wrote: > The of_find_compatible_node() function returns a node pointer with > refcount incremented, We should use of_node_put() on it when done > Add the missing of_node_put() to release the refcount. > > Fixes: 87e8657ba99c ("PCI: mediatek: Add new method to get shared pcie-cfg base address") > Signed-off-by: Miaoqian Lin <linmq006@gmail.com> > --- > drivers/pci/controller/pcie-mediatek.c | 1 + > 1 file changed, 1 insertion(+) Acked-by: Rob Herring <robh@kernel.org>
On Wed, 9 Mar 2022 09:19:52 +0000, Miaoqian Lin wrote: > The of_find_compatible_node() function returns a node pointer with > refcount incremented, We should use of_node_put() on it when done > Add the missing of_node_put() to release the refcount. > > Applied to pci/mediatek, thanks! [1/1] PCI: mediatek: Fix refcount leak in mtk_pcie_subsys_powerup https://git.kernel.org/lpieralisi/pci/c/214e0d8fe4 Thanks, Lorenzo
© 2016 - 2024 Red Hat, Inc.