LoongArch: Do not kill the task in die() if notify_die() returns NOTIFY_STOP
authorTiezhu Yang <yangtiezhu@loongson.cn>
Fri, 25 Aug 2023 15:40:26 +0000 (23:40 +0800)
committerHuacai Chen <chenhuacai@loongson.cn>
Fri, 25 Aug 2023 15:40:26 +0000 (23:40 +0800)
commit6933c11fb501a40681d43336b3e0eee9df2abee0
tree09f0d8c6741c3f0f525bdca0b99deed74fe69d96
parenta746ceb1f32cc375e983c4bc40378a72ff26c766
LoongArch: Do not kill the task in die() if notify_die() returns NOTIFY_STOP

If notify_die() returns NOTIFY_STOP, honor the return value from the
handler chain invocation in die() and return without killing the task
as, through a debugger, the fault may have been fixed. It makes sense
even if ignoring the event will make the system unstable: by allowing
access through a debugger it has been compromised already anyway. It
makes our port consistent with x86, arm64, riscv and csky.

Commit 20c0d2d44029 ("[PATCH] i386: pass proper trap numbers to die
chain handlers") may be the earliest of similar changes.

Link: https://lore.kernel.org/r/43DDF02E.76F0.0078.0@novell.com/
Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/loongarch/include/asm/ptrace.h
arch/loongarch/kernel/traps.c