[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <868sz3ve63.wl-marc.zyngier@arm.com>
Date: Tue, 29 Jan 2019 12:31:00 +0000
From: Marc Zyngier <marc.zyngier@....com>
To: Julien Thierry <julien.thierry@....com>
Cc: <linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <daniel.thompson@...aro.org>,
<joel@...lfernandes.org>, <christoffer.dall@....com>,
<james.morse@....com>, <catalin.marinas@....com>,
<will.deacon@....com>, <mark.rutland@....com>,
Thomas Gleixner <tglx@...utronix.de>,
Jason Cooper <jason@...edaemon.net>
Subject: Re: [PATCH v9 20/26] irqchip/gic-v3: Handle pseudo-NMIs
On Tue, 29 Jan 2019 11:33:35 +0000,
Julien Thierry <julien.thierry@....com> wrote:
>
>
>
> On 28/01/2019 11:59, Marc Zyngier wrote:
> > On Mon, 21 Jan 2019 15:33:39 +0000,
> > Julien Thierry <julien.thierry@....com> 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@....com>
> >> Cc: Thomas Gleixner <tglx@...utronix.de>
> >> Cc: Jason Cooper <jason@...edaemon.net>
> >> Cc: Marc Zyngier <marc.zyngier@....com>
> >> ---
> >> 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.
Powered by blists - more mailing lists