From: Marc Zyngier Date: Tue, 29 Jan 2019 15:19:23 +0000 (+0000) Subject: irqchip/gic-v3-its: Gracefully fail on LPI exhaustion X-Git-Tag: v4.19.29~66 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=423869f8871dee4028b67fa30f660ab43d14cfb2;p=platform%2Fkernel%2Flinux-rpi.git irqchip/gic-v3-its: Gracefully fail on LPI exhaustion [ Upstream commit 45725e0fc3e7fe52fedb94f59806ec50e9618682 ] In the unlikely event that we cannot find any available LPI in the system, we should gracefully return an error instead of carrying on with no LPI allocated at all. Fixes: 38dd7c494cf6 ("irqchip/gic-v3-its: Drop chunk allocation compatibility") Signed-off-by: Marc Zyngier Signed-off-by: Sasha Levin --- diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c index d9a8801..15579cb 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -1581,6 +1581,9 @@ static unsigned long *its_lpi_alloc(int nr_irqs, u32 *base, int *nr_ids) nr_irqs /= 2; } while (nr_irqs > 0); + if (!nr_irqs) + err = -ENOSPC; + if (err) goto out;