]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
pinctrl: stm32: Fix refcount leak in stm32_pctrl_get_irq_domain
authorMiaoqian Lin <linmq006@gmail.com>
Mon, 2 Jan 2023 08:24:56 +0000 (12:24 +0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Mar 2023 08:33:11 +0000 (09:33 +0100)
[ Upstream commit dcef18c8ac40aa85bb339f64c1dd31dd458b06fb ]

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: d86f4d71e42a ("pinctrl: stm32: check irq controller availability at probe")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20230102082503.3944927-1-linmq006@gmail.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pinctrl/stm32/pinctrl-stm32.c

index e485506ea599c8e532a355c6c64964c33170e245..e198233c10badf6f6acd8588105abd8705dac79c 100644 (file)
@@ -1380,6 +1380,7 @@ static struct irq_domain *stm32_pctrl_get_irq_domain(struct platform_device *pde
                return ERR_PTR(-ENXIO);
 
        domain = irq_find_host(parent);
+       of_node_put(parent);
        if (!domain)
                /* domain not registered yet */
                return ERR_PTR(-EPROBE_DEFER);