]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
irqchip/crossbar: Fix parent domain resource leak
authorBhargav Joshi <j.bhargav.u@gmail.com>
Sat, 20 Jun 2026 12:09:17 +0000 (17:39 +0530)
committerThomas Gleixner <tglx@kernel.org>
Sun, 21 Jun 2026 12:59:20 +0000 (14:59 +0200)
irq_domain_alloc_irqs_parent() is called in allocate_gic_irq() but
irq_domain_free_irqs_parent() is never called which causes a resource leak.

Fix this by calling irq_domain_free_irqs_parent() in
crossbar_domain_free().

Fixes: 783d31863fb82 ("irqchip: crossbar: Convert dra7 crossbar to stacked domains")
Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Link: https://patch.msgid.link/20260620-irq-crossbar-fix-v2-2-b8e8499f468a@gmail.com
drivers/irqchip/irq-crossbar.c

index 4e19e9d8a41d256d7c9aceef6e940cf755bab7ca..033b08782119595c3b942c7575b067abcddba1db 100644 (file)
@@ -168,6 +168,7 @@ static void crossbar_domain_free(struct irq_domain *domain, unsigned int virq,
                irq_domain_reset_irq_data(d);
        }
        raw_spin_unlock(&cb->lock);
+       irq_domain_free_irqs_parent(domain, virq, nr_irqs);
 }
 
 static int crossbar_domain_translate(struct irq_domain *d,