Joerg Roedel 3250e6
From: Nicholas Mc Guire <hofrat@osadl.org>
Joerg Roedel 3250e6
Date: Fri, 29 Jun 2018 13:50:27 -0500
Joerg Roedel 3250e6
Subject: PCI: faraday: Add missing of_node_put()
Joerg Roedel 3250e6
Git-commit: 3dc6ddfedc2818eaaa36842fbb049191e0c5e50f
Joerg Roedel 3250e6
Patch-mainline: v4.18-rc4
Joerg Roedel 3250e6
References: bsc#1109806
Joerg Roedel 3250e6
Joerg Roedel 3250e6
The call to of_get_next_child() returns a node pointer with refcount
Joerg Roedel 3250e6
incremented thus it must be explicitly decremented here in the error
Joerg Roedel 3250e6
path and after the last usage.
Joerg Roedel 3250e6
Joerg Roedel 3250e6
Fixes: d3c68e0a7e34 ("PCI: faraday: Add Faraday Technology FTPCI100 PCI Host Bridge driver")
Joerg Roedel 3250e6
Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
Joerg Roedel 3250e6
[lorenzo.pieralisi@arm.com: updated commit log]
Joerg Roedel 3250e6
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Joerg Roedel 3250e6
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Joerg Roedel 3250e6
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Joerg Roedel 3250e6
Acked-by: Joerg Roedel <jroedel@suse.de>
Joerg Roedel 3250e6
---
Joerg Roedel 3250e6
 drivers/pci/controller/pci-ftpci100.c | 2 ++
Joerg Roedel 3250e6
 1 file changed, 2 insertions(+)
Joerg Roedel 3250e6
Joerg Roedel 3250e6
--- a/drivers/pci/host/pci-ftpci100.c
Joerg Roedel 3250e6
+++ b/drivers/pci/host/pci-ftpci100.c
Joerg Roedel 3250e6
@@ -336,6 +336,7 @@ static int faraday_pci_setup_cascaded_ir
Joerg Roedel 3250e6
 
Joerg Roedel 3250e6
 	p->irqdomain = irq_domain_add_linear(intc, 4,
Joerg Roedel 3250e6
 					     &faraday_pci_irqdomain_ops, p);
Joerg Roedel 3250e6
+	of_node_put(intc);
Joerg Roedel 3250e6
 	if (!p->irqdomain) {
Joerg Roedel 3250e6
 		dev_err(p->dev, "failed to create Gemini PCI IRQ domain\n");
Joerg Roedel 3250e6
 		return -EINVAL;