lkml.org 
[lkml]   [2021]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2] PCI: kirin: Fix of_node_put() issue in pcie-kirin
On Thu, Nov 04, 2021 at 10:07:11PM -0400, Wan Jiabing wrote:
> Fix following coccicheck warning:
> ./drivers/pci/controller/dwc/pcie-kirin.c:414:2-34: WARNING: Function
> for_each_available_child_of_node should have of_node_put() before return.
>
> Early exits from for_each_available_child_of_node should decrement the
> node reference counter. Replace return by goto here and add a missing
> of_node_put for parent.
>
> Signed-off-by: Wan Jiabing <wanjiabing@vivo.com>

I had already squashed this into:

https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=b22dbbb24571

> ---
> drivers/pci/controller/dwc/pcie-kirin.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/pci/controller/dwc/pcie-kirin.c b/drivers/pci/controller/dwc/pcie-kirin.c
> index 06017e826832..b72a12bac49d 100644
> --- a/drivers/pci/controller/dwc/pcie-kirin.c
> +++ b/drivers/pci/controller/dwc/pcie-kirin.c
> @@ -422,7 +422,8 @@ static int kirin_pcie_parse_port(struct kirin_pcie *pcie,
> pcie->num_slots++;
> if (pcie->num_slots > MAX_PCI_SLOTS) {
> dev_err(dev, "Too many PCI slots!\n");
> - return -EINVAL;
> + ret = -EINVAL;
> + goto put_node;
> }
>
> ret = of_pci_get_devfn(child);
> @@ -446,6 +447,7 @@ static int kirin_pcie_parse_port(struct kirin_pcie *pcie,
> return 0;
>
> put_node:
> + of_node_put(parent);
> of_node_put(child);
> return ret;
> }
> --
> 2.20.1
>

\
 
 \ /
  Last update: 2021-11-05 20:01    [W:0.052 / U:0.380 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site