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] [thread-next>] [day] [month] [year] [list]
Message-Id: <170802702416.398.14922976721740218856.tip-bot2@tip-bot2> (raw)
Date: Mon, 19 Feb 2024 15:50:36 +0000
From: Biju Das <biju.das.jz@...renesas.com>
To: tip-bot2@...utronix.de
Cc: apatel@...tanamicro.com,
	linux-kernel@...r.kernel.org,
	linux-tip-commits@...r.kernel.org,
	tglx@...utronix.de,
	geert@...ux-m68k.org,
	maz@...nel.org,
	linux-renesas-soc@...r.kernel.org,
	x86@...nel.org
Subject: [tip: irq/msi] genirq/irqdomain: Remove the param count restriction from select()

> Now that the GIC-v3 callback can handle invocation with a fwspec parameter
> count of 0 lift the restriction in the core code and invoke select()
> unconditionally when the domain provides it.

This patch breaks on RZ/G2L SMARC EVK as of_phandle_args_to_fwspec count()
is called after irq_find_matching_fwspec() is causing fwspec->param_count=0
and this results in boot failure as the patch removes the check.

Maybe we need to revert this patch or fix the fundamental issue.

Cheers,
Biju
---
 kernel/irq/irqdomain.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index 0bdef4f..8fee379 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -448,7 +448,7 @@ struct irq_domain *irq_find_matching_fwspec(struct irq_fwspec *fwspec,
 	 */
 	mutex_lock(&irq_domain_mutex);
 	list_for_each_entry(h, &irq_domain_list, link) {
-		if (h->ops->select && fwspec->param_count)
+		if (h->ops->select)
 			rc = h->ops->select(h, fwspec, bus_token);
 		else if (h->ops->match)
 			rc = h->ops->match(h, to_of_node(fwnode), bus_token);


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ