Merge tag 'irq-urgent-2024-04-28' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 28 Apr 2024 18:51:13 +0000 (11:51 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 28 Apr 2024 18:51:13 +0000 (11:51 -0700)
Pull irq fix from Ingo Molnar:
 "Fix a double free bug in the init error path of the GICv3 irqchip
  driver"

* tag 'irq-urgent-2024-04-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  irqchip/gic-v3-its: Prevent double free on error

drivers/irqchip/irq-gic-v3-its.c

index 2a537cbfcb077246c0aee43a5b9f1885a3e0b5f2..5f7d3db3afd8248e43e6fc86b677fb0fdc587a84 100644 (file)
@@ -4567,13 +4567,8 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
                irqd_set_resend_when_in_progress(irq_get_irq_data(virq + i));
        }
 
-       if (err) {
-               if (i > 0)
-                       its_vpe_irq_domain_free(domain, virq, i);
-
-               its_lpi_free(bitmap, base, nr_ids);
-               its_free_prop_table(vprop_page);
-       }
+       if (err)
+               its_vpe_irq_domain_free(domain, virq, i);
 
        return err;
 }