[PATCH v3 0/5] LoongArch: Some fix and new features for unwinders

From: Jinyang He
Date: Wed Jan 11 2023 - 19:37:29 EST


Make the stacktrace more effective and the codes more clear.

v3:
Make unwind_{guess,prologue}.c as frontend and share unwind.c.
Drop unwind ops and reenable unwind type for clear logic.

v2:
Directly use unwinder_guess when register unwinder.
Drop unwind type.
Drop patch which add raw_show_trace parameter.
Handle task == NULL case in unwind_start.

Thanks for Qing and Huacai.

Jinyang He (5):
LoongArch: Get frame info in unwind_start when regs is not supported
LoongArch: Use correct sp value to get graph addr in unwinder guess
LoongArch: Adjust PC value when unwind next frame in prologue unwinder
LoongArch: Strip guess_unwinder out from prologue_unwinder
LoongArch: Add generic ex-handler unwind in prologue unwinder

arch/loongarch/include/asm/ftrace.h | 2 -
arch/loongarch/include/asm/unwind.h | 40 +++-
arch/loongarch/kernel/Makefile | 2 +-
arch/loongarch/kernel/genex.S | 3 +
arch/loongarch/kernel/process.c | 12 +-
arch/loongarch/kernel/traps.c | 3 -
arch/loongarch/kernel/unwind.c | 33 ++++
arch/loongarch/kernel/unwind_guess.c | 49 +----
arch/loongarch/kernel/unwind_prologue.c | 247 ++++++++++++++----------
arch/loongarch/mm/tlb.c | 2 +-
10 files changed, 232 insertions(+), 161 deletions(-)
create mode 100644 arch/loongarch/kernel/unwind.c

--
2.34.3