diff --git a/arch/loongarch/kernel/traps.c b/arch/loongarch/kernel/traps.c index dfb34cc8b7e6dbce0f78b0d6e3485effbafe32ee..89699db45cec17ab87724ca16b2d24995b88e99b 100644 --- a/arch/loongarch/kernel/traps.c +++ b/arch/loongarch/kernel/traps.c @@ -404,6 +404,9 @@ void die(const char *str, struct pt_regs *regs) oops_exit(); + if (ret == NOTIFY_STOP) + return; + if (regs && kexec_should_crash(current)) crash_kexec(regs); @@ -413,8 +416,7 @@ void die(const char *str, struct pt_regs *regs) if (panic_on_oops) panic("Fatal exception"); - if (ret != NOTIFY_STOP) - make_task_dead(SIGSEGV); + make_task_dead(SIGSEGV); } static inline void setup_vint_size(unsigned int size)