summaryrefslogtreecommitdiffstats
path: root/kernel/irq
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/irq')
-rw-r--r--kernel/irq/irqdomain.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index a82853739694..4752b43662e0 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -1192,8 +1192,10 @@ int irq_domain_alloc_irqs_recursive(struct irq_domain *domain,
1192 if (recursive) 1192 if (recursive)
1193 ret = irq_domain_alloc_irqs_recursive(parent, irq_base, 1193 ret = irq_domain_alloc_irqs_recursive(parent, irq_base,
1194 nr_irqs, arg); 1194 nr_irqs, arg);
1195 if (ret >= 0) 1195 if (ret < 0)
1196 ret = domain->ops->alloc(domain, irq_base, nr_irqs, arg); 1196 return ret;
1197
1198 ret = domain->ops->alloc(domain, irq_base, nr_irqs, arg);
1197 if (ret < 0 && recursive) 1199 if (ret < 0 && recursive)
1198 irq_domain_free_irqs_recursive(parent, irq_base, nr_irqs); 1200 irq_domain_free_irqs_recursive(parent, irq_base, nr_irqs);
1199 1201