[tip: irq/drivers] irqchip/gic-v5: Fix loop in gicv5_its_create_itt_two_level() cleanup path

tip-bot2 for Dan Carpenter posted 1 patch 3 weeks, 2 days ago
drivers/irqchip/irq-gic-v5-its.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[tip: irq/drivers] irqchip/gic-v5: Fix loop in gicv5_its_create_itt_two_level() cleanup path
Posted by tip-bot2 for Dan Carpenter 3 weeks, 2 days ago
The following commit has been merged into the irq/drivers branch of tip:

Commit-ID:     bfcd1fdaae92faa8cae880eb4c3aaaa60c54bf0d
Gitweb:        https://git.kernel.org/tip/bfcd1fdaae92faa8cae880eb4c3aaaa60c54bf0d
Author:        Dan Carpenter <dan.carpenter@linaro.org>
AuthorDate:    Mon, 08 Sep 2025 10:27:44 +02:00
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Tue, 09 Sep 2025 11:51:09 +02:00

irqchip/gic-v5: Fix loop in gicv5_its_create_itt_two_level() cleanup path

The "i" variable in gicv5_its_create_itt_two_level() needs to be signed
otherwise it can cause a forever loop in the function's cleanup path.

[ lpieralisi: Reworded commit message ]

Fixes: 57d72196dfc8 ("irqchip/gic-v5: Add GICv5 ITS support")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
Link: https://lore.kernel.org/all/20250908082745.113718-3-lpieralisi@kernel.org

---
 drivers/irqchip/irq-gic-v5-its.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/irqchip/irq-gic-v5-its.c b/drivers/irqchip/irq-gic-v5-its.c
index 81d813c..dcdf8bc 100644
--- a/drivers/irqchip/irq-gic-v5-its.c
+++ b/drivers/irqchip/irq-gic-v5-its.c
@@ -191,9 +191,9 @@ static int gicv5_its_create_itt_two_level(struct gicv5_its_chip_data *its,
 					  unsigned int num_events)
 {
 	unsigned int l1_bits, l2_bits, span, events_per_l2_table;
-	unsigned int i, complete_tables, final_span, num_ents;
+	unsigned int complete_tables, final_span, num_ents;
 	__le64 *itt_l1, *itt_l2, **l2ptrs;
-	int ret;
+	int i, ret;
 	u64 val;
 
 	ret = gicv5_its_l2sz_to_l2_bits(itt_l2sz);