Commit 11cb0a25 authored by Nicholas Piggin's avatar Nicholas Piggin Committed by Michael Ellerman
Browse files

powerpc: improve handling of unrecoverable system reset



If an unrecoverable system reset hits in process context, the system
does not have to panic. Similar to machine check, call nmi_exit()
before die().

Signed-off-by: default avatarNicholas Piggin <npiggin@gmail.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210130130852.2952424-26-npiggin@gmail.com
parent c538938f
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -503,8 +503,11 @@ void system_reset_exception(struct pt_regs *regs)
		die("Unrecoverable nested System Reset", regs, SIGABRT);
#endif
	/* Must die if the interrupt is not recoverable */
	if (!(regs->msr & MSR_RI))
	if (!(regs->msr & MSR_RI)) {
		/* For the reason explained in die_mce, nmi_exit before die */
		nmi_exit();
		die("Unrecoverable System Reset", regs, SIGABRT);
	}

	if (saved_hsrrs) {
		mtspr(SPRN_HSRR0, hsrr0);