From: Clément Léger Date: Tue, 17 Jan 2023 14:49:29 +0000 (+0100) Subject: of/irq: add missing of_node_put() for interrupt parent node X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=eb2b4ecf7299ee39ee9cecc4d3f2633aeb10cefb;p=linux.git of/irq: add missing of_node_put() for interrupt parent node After calling of_irq_parse_one(), the node provided in the of_phandle_args has a refcount increment by one. Add missing of_node_put in of_irq_get() to decrement the refcount once used. Signed-off-by: Clément Léger Link: https://lore.kernel.org/r/20230117144929.423089-1-clement.leger@bootlin.com Signed-off-by: Rob Herring --- diff --git a/drivers/of/irq.c b/drivers/of/irq.c index e9bf5236ed892..174900072c18c 100644 --- a/drivers/of/irq.c +++ b/drivers/of/irq.c @@ -438,10 +438,16 @@ int of_irq_get(struct device_node *dev, int index) return rc; domain = irq_find_host(oirq.np); - if (!domain) - return -EPROBE_DEFER; + if (!domain) { + rc = -EPROBE_DEFER; + goto out; + } - return irq_create_of_mapping(&oirq); + rc = irq_create_of_mapping(&oirq); +out: + of_node_put(oirq.np); + + return rc; } EXPORT_SYMBOL_GPL(of_irq_get);