powerpc/64: Don't trace irqs-off at interrupt return to soft-disabled context
authorNicholas Piggin <npiggin@gmail.com>
Thu, 16 Nov 2017 16:00:50 +0000 (02:00 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 11 Dec 2017 02:03:34 +0000 (13:03 +1100)
commitacb1feab320e38588fccc568e3767761f494976f
treea39fcc7d2f6e0cfa3517691032cfe8a65819b12d
parent7813043e1bbcea764c86ef2fcf43aeae2b0e240d
powerpc/64: Don't trace irqs-off at interrupt return to soft-disabled context

When an interrupt is returning to a soft-disabled context (which can
happen for non-maskable interrupts or synchronous interrupts), it goes
through the motions of soft-disabling again, including calling
TRACE_DISABLE_INTS (i.e., trace_hardirqs_off()).

This is not necessary, because we must already be soft-disabled in the
interrupt context, it also may be causing crashes in the irq tracing
code to re-enter as an nmi. Replace it with a warning to ensure that
soft-interrupts are still disabled.

Fixes: 7c0482e3d055 ("powerpc/irq: Fix another case of lazy IRQ state getting out of sync")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/kernel/entry_64.S