Message ID | 20240413064051.31315-2-guanrui.huang@linux.alibaba.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [v4,1/2] irqchip/gic-v3-its: Fix double free on error | expand |
On Sat, 13 Apr 2024 07:40:51 +0100, Guanrui Huang <guanrui.huang@linux.alibaba.com> wrote: > > If vm is NULL in here, that means caller has a bug. > BUG_ON in here is useless, this will paper over bug. This BUG_ON() doesn't paper over a bug like your previous patch did. It catches a bug (vm should never be NULL), but also forces the system to crash for no good reason. The same effect will be obtained by letting the code run its course and vm being dereferenced, triggering an exception. > > So just remove this check. > > Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com> > --- > drivers/irqchip/irq-gic-v3-its.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c > index 2305f6b524a9..55c83e19719d 100644 > --- a/drivers/irqchip/irq-gic-v3-its.c > +++ b/drivers/irqchip/irq-gic-v3-its.c > @@ -4521,8 +4521,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq > struct page *vprop_page; > int base, nr_ids, i, err = 0; > > - BUG_ON(!vm); > - > bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids); > if (!bitmap) > return -ENOMEM; With the commit message fixed: Acked-by: Marc Zyngier <maz@kernel.org> M.
diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c index 2305f6b524a9..55c83e19719d 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -4521,8 +4521,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq struct page *vprop_page; int base, nr_ids, i, err = 0; - BUG_ON(!vm); - bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids); if (!bitmap) return -ENOMEM;
If vm is NULL in here, that means caller has a bug. BUG_ON in here is useless, this will paper over bug. So just remove this check. Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com> --- drivers/irqchip/irq-gic-v3-its.c | 2 -- 1 file changed, 2 deletions(-)