OSDN Git Service

powerpc/64e/interrupt: NMI save irq soft-mask state in C
authorNicholas Piggin <npiggin@gmail.com>
Tue, 16 Mar 2021 10:41:59 +0000 (20:41 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 14 Apr 2021 13:04:20 +0000 (23:04 +1000)
commit3db8aa10de9a478b3086db7894e0266def3d77af
tree3db14697cea897ab39831fb5d40fc52fa2b68cce
parent0c2472de23aea5ce9139a3e887191925759d1259
powerpc/64e/interrupt: NMI save irq soft-mask state in C

64e non-maskable interrupts save the state of the irq soft-mask in
asm. This can be done in C in interrupt wrappers as 64s does.

I haven't been able to test this with qemu because it doesn't seem
to cause FSL bookE WDT interrupts.

This makes WatchdogException an NMI interrupt, which affects 32-bit
as well (okay, or create a new handler?)

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210316104206.407354-6-npiggin@gmail.com
arch/powerpc/include/asm/interrupt.h
arch/powerpc/kernel/exceptions-64e.S
arch/powerpc/kernel/traps.c