lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <176533649129.498.12013031719621583485.tip-bot2@tip-bot2>
Date: Wed, 10 Dec 2025 03:14:51 -0000
From: "tip-bot2 for Dan Carpenter" <tip-bot2@...utronix.de>
To: linux-tip-commits@...r.kernel.org
Cc: Dan Carpenter <dan.carpenter@...aro.org>,
 Thomas Gleixner <tglx@...utronix.de>,
 Claudiu Beznea <claudiu.beznea@...on.dev>, x86@...nel.org,
 linux-kernel@...r.kernel.org, maz@...nel.org
Subject:
 [tip: irq/urgent] irqchip/mchp-eic: Fix error code in mchp_eic_domain_alloc()

The following commit has been merged into the irq/urgent branch of tip:

Commit-ID:     7dbc0d40d8347bd9de55c904f59ea44bcc8dedb7
Gitweb:        https://git.kernel.org/tip/7dbc0d40d8347bd9de55c904f59ea44bcc8dedb7
Author:        Dan Carpenter <dan.carpenter@...aro.org>
AuthorDate:    Tue, 09 Dec 2025 09:54:16 +03:00
Committer:     Thomas Gleixner <tglx@...utronix.de>
CommitterDate: Wed, 10 Dec 2025 12:11:06 +09:00

irqchip/mchp-eic: Fix error code in mchp_eic_domain_alloc()

If irq_domain_translate_twocell() sets "hwirq" to >= MCHP_EIC_NIRQ (2) then
it results in an out of bounds access.

The code checks for invalid values, but doesn't set the error code.  Return
-EINVAL in that case, instead of returning success.

Fixes: 00fa3461c86d ("irqchip/mchp-eic: Add support for the Microchip EIC")
Signed-off-by: Dan Carpenter <dan.carpenter@...aro.org>
Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
Reviewed-by: Claudiu Beznea <claudiu.beznea@...on.dev>
Link: https://patch.msgid.link/aTfHmOz6IBpTIPU5@stanley.mountain
---
 drivers/irqchip/irq-mchp-eic.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/irqchip/irq-mchp-eic.c b/drivers/irqchip/irq-mchp-eic.c
index 2474fa4..31093a8 100644
--- a/drivers/irqchip/irq-mchp-eic.c
+++ b/drivers/irqchip/irq-mchp-eic.c
@@ -170,7 +170,7 @@ static int mchp_eic_domain_alloc(struct irq_domain *domain, unsigned int virq,
 
 	ret = irq_domain_translate_twocell(domain, fwspec, &hwirq, &type);
 	if (ret || hwirq >= MCHP_EIC_NIRQ)
-		return ret;
+		return ret ?: -EINVAL;
 
 	switch (type) {
 	case IRQ_TYPE_EDGE_RISING:

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ