Re: [PATCH v9 20/26] irqchip/gic-v3: Handle pseudo-NMIs

From: Marc Zyngier
Date: Tue Jan 29 2019 - 07:31:04 EST


On Tue, 29 Jan 2019 11:33:35 +0000,
Julien Thierry <julien.thierry@xxxxxxx> wrote:
>
>
>
> On 28/01/2019 11:59, Marc Zyngier wrote:
> > On Mon, 21 Jan 2019 15:33:39 +0000,
> > Julien Thierry <julien.thierry@xxxxxxx> wrote:
> >>
> >> Provide a higher priority to be used for pseudo-NMIs. When such an
> >> interrupt is received, keep interrupts fully disabled at CPU level to
> >> prevent receiving other pseudo-NMIs while handling the current one.
> >>
> >> Signed-off-by: Julien Thierry <julien.thierry@xxxxxxx>
> >> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> >> Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
> >> Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
> >> ---
> >> drivers/irqchip/irq-gic-v3.c | 42 ++++++++++++++++++++++++++++++++++++------
> >> 1 file changed, 36 insertions(+), 6 deletions(-)
> >>
> >> diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c
> >> index 5374b43..4df1e94 100644
> >> --- a/drivers/irqchip/irq-gic-v3.c
> >> +++ b/drivers/irqchip/irq-gic-v3.c
> >> @@ -41,6 +41,8 @@
> >>
> >> #include "irq-gic-common.h"
> >>
> >> +#define GICD_INT_NMI_PRI (GICD_INT_DEF_PRI & ~0x80)
> >> +
> >> #define FLAGS_WORKAROUND_GICR_WAKER_MSM8996 (1ULL << 0)
> >>
> >> struct redist_region {
> >> @@ -381,12 +383,45 @@ static u64 gic_mpidr_to_affinity(unsigned long mpidr)
> >> return aff;
> >> }
> >>
> >> +static inline void gic_deactivate_unexpected_irq(u32 irqnr)
> >
> > Same remark as on some other patches: you should be able to drop the
> > inline attribute without any ill effect. I'd also like this to be
> > renamed "gic_deactivate_spurious", or something similar.
> >
>
> I'm a bit concern about using spurious since it is not related to
> GICC_INT_SPURIOUS, we actually read a valid IRQ number, we just don't
> know how we should handle it.

Well, I'd say that in the case of GICC_INT_SPURIOUS, there is nothing
to deactivate, but hey... ;-)

> Would "gic_deactivate_unhandled" work? Or "gic_deactivate_bad"?

Sure, any will do.

M.

--
Jazz is not dead, it just smell funny.