irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains
authorMiaoqian Lin <linmq006@gmail.com>
Mon, 2 Jan 2023 08:28:10 +0000 (12:28 +0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Mar 2023 08:32:59 +0000 (09:32 +0100)
[ Upstream commit 071d068b89e95d1b078aa6bbcb9d0961b77d6aa1 ]

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: e6b78f2c3e14 ("irqchip: Add the Alpine MSIX interrupt controller")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230102082811.3947760-1-linmq006@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/irqchip/irq-alpine-msi.c

index 5ddb8e5..fc1ef7d 100644 (file)
@@ -199,6 +199,7 @@ static int alpine_msix_init_domains(struct alpine_msix_data *priv,
        }
 
        gic_domain = irq_find_host(gic_node);
+       of_node_put(gic_node);
        if (!gic_domain) {
                pr_err("Failed to find the GIC domain\n");
                return -ENXIO;