[RFC PATCH v2 45/45] irqchip/gic-v5: Add NMI support for IPIs

Marc Zyngier maz at kernel.org
Fri Aug 7 03:57:39 PDT 2026


On Fri, 07 Aug 2026 11:42:12 +0100,
Vladimir Murzin <vladimir.murzin at arm.com> wrote:
> 
> On 8/7/26 11:17, Marc Zyngier wrote:
> > On Mon, 27 Jul 2026 17:34:53 +0100,
> > Vladimir Murzin <vladimir.murzin at arm.com> wrote:
> >> diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
> >> index 7eb07e3bdb4c..0091bb5f7662 100644
> >> --- a/kernel/irq/manage.c
> >> +++ b/kernel/irq/manage.c
> >> @@ -1370,9 +1370,14 @@ static bool irq_supports_nmi(struct irq_desc *desc)
> >>  	struct irq_data *d = irq_desc_get_irq_data(desc);
> >>  
> >>  #ifdef CONFIG_IRQ_DOMAIN_HIERARCHY
> >> -	/* Only IRQs directly managed by the root irqchip can be set as NMI */
> >> -	if (d->parent_data)
> >> -		return false;
> >> +	struct irq_data *data;
> >> +	/*
> >> +	 * Only IRQs directly managed by the root irqchip can be set
> >> +	 * as NMI unless we inherit NMI from parent
> >> +	 */
> >> +	for (data = d->parent_data; data; data = data->parent_data)
> >> +		if (!(data->chip && data->chip->flags & IRQCHIP_SUPPORTS_NMI))
> >> +			return false;
> > Maybe we should just trust the local irqchip to do the right
> > thing. After all, the core code shouldn't be in the business of
> > sanitising broken irqchip drivers advertising random crap.
> > 
> 
> That is indeed bit I was not really sure about, if we decide that we
> can trust local irqchip then I assume we just drop the check?

Yup. Drop the CONFIG_IRQ_DOMAIN_HIERARCHY hack, and only consider the
local information.

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list