[tip:irq/urgent] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Commit-ID:  45725e0fc3e7fe52fedb94f59806ec50e9618682
Gitweb:     https://git.kernel.org/tip/45725e0fc3e7fe52fedb94f59806ec50e9618682
Author:     Marc Zyngier <marc.zyngier@xxxxxxx>
AuthorDate: Tue, 29 Jan 2019 15:19:23 +0000
Committer:  Marc Zyngier <marc.zyngier@xxxxxxx>
CommitDate: Tue, 29 Jan 2019 15:48:51 +0000

irqchip/gic-v3-its: Gracefully fail on LPI exhaustion

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 <marc.zyngier@xxxxxxx>
---
 drivers/irqchip/irq-gic-v3-its.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
index f25ec92f23ee..c3aba3fc818d 100644
--- a/drivers/irqchip/irq-gic-v3-its.c
+++ b/drivers/irqchip/irq-gic-v3-its.c
@@ -1586,6 +1586,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;
 



[Index of Archives]     [Linux Stable Commits]     [Linux Stable Kernel]     [Linux Kernel]     [Linux USB Devel]     [Linux Video &Media]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux