powerpc/64s/interrupt: Change must-hard-mask interrupt check from BUG to WARN
This new assertion added is generally harmless and gets fixed up
naturally, but it does indicate a problem with MSR manipulation
somewhere.
Fixes: c39fb71a54
("powerpc/64s/interrupt: masked handler debug check for previous hard disable")
Reported-by: Sachin Sant <sachinp@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Tested-by: Sachin Sant <sachinp@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221004051157.308999-1-npiggin@gmail.com
This commit is contained in:
parent
8535a1afff
commit
8154850b28
@ -2823,12 +2823,16 @@ masked_interrupt:
|
||||
#ifdef CONFIG_PPC_IRQ_SOFT_MASK_DEBUG
|
||||
/*
|
||||
* Ensure there was no previous MUST_HARD_MASK interrupt or
|
||||
* HARD_DIS setting.
|
||||
* HARD_DIS setting. If this does fire, the interrupt is still
|
||||
* masked and MSR[EE] will be cleared on return, so no need to
|
||||
* panic, but somebody probably enabled MSR[EE] under
|
||||
* PACA_IRQ_HARD_DIS, mtmsr(mfmsr() | MSR_x) being a common
|
||||
* cause.
|
||||
*/
|
||||
lbz r9,PACAIRQHAPPENED(r13)
|
||||
andi. r9,r9,(PACA_IRQ_MUST_HARD_MASK|PACA_IRQ_HARD_DIS)
|
||||
0: tdnei r9,0
|
||||
EMIT_BUG_ENTRY 0b,__FILE__,__LINE__,0
|
||||
EMIT_WARN_ENTRY 0b,__FILE__,__LINE__,(BUGFLAG_WARNING | BUGFLAG_ONCE)
|
||||
#endif
|
||||
lbz r9,PACAIRQHAPPENED(r13)
|
||||
or r9,r9,r10
|
||||
|
Loading…
Reference in New Issue
Block a user