powerpc/64s/exception: treat NIA below __end_interrupts as soft-masked
authorNicholas Piggin <npiggin@gmail.com>
Thu, 11 Jun 2020 08:12:02 +0000 (18:12 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 22 Jul 2020 13:00:23 +0000 (23:00 +1000)
commitb2dc2977cba48990df45e0a96150663d4f342700
treea09c1b479ed48c24cca0c217c080ec5494c2887c
parent48778464bb7d346b47157d21ffde2af6b2d39110
powerpc/64s/exception: treat NIA below __end_interrupts as soft-masked

The scv instruction causes an interrupt which can enter the kernel with
MSR[EE]=1, thus allowing interrupts to hit at any time. These must not
be taken as normal interrupts, because they come from MSR[PR]=0 context,
and yet the kernel stack is not yet set up and r13 is not set to the
PACA).

Treat this as a soft-masked interrupt regardless of the soft masked
state. This does not affect behaviour yet, because currently all
interrupts are taken with MSR[EE]=0.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200611081203.995112-2-npiggin@gmail.com
arch/powerpc/kernel/exceptions-64s.S