irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe
authorMiaoqian Lin <linmq006@gmail.com>
Mon, 2 Jan 2023 08:42:08 +0000 (12:42 +0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Mar 2023 08:33:00 +0000 (09:33 +0100)
[ Upstream commit 9419e700021a393f67be36abd0c4f3acc6139041 ]

of_irq_find_parent() returns a node pointer with refcount incremented,
We should use of_node_put() on it when not needed anymore.
Add missing of_node_put() to avoid refcount leak.

Fixes: a68a63cb4dfc ("irqchip/irq-mvebu-gicp: Add new driver for Marvell GICP")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230102084208.3951758-1-linmq006@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/irqchip/irq-mvebu-gicp.c

index fe88a78..c43a345 100644 (file)
@@ -221,6 +221,7 @@ static int mvebu_gicp_probe(struct platform_device *pdev)
        }
 
        parent_domain = irq_find_host(irq_parent_dn);
+       of_node_put(irq_parent_dn);
        if (!parent_domain) {
                dev_err(&pdev->dev, "failed to find parent IRQ domain\n");
                return -ENODEV;