arch: arm64: implement arch_stack_walk()

Currently it supports `esf` based unwinding only.

Then, update the exception stack unwinding to use
`arch_stack_walk()`, and update the Kconfigs & testcase
accordingly.

Also, `EXCEPTION_STACK_TRACE_MAX_FRAMES` is unused and
made redundant after this change, so remove it.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
This commit is contained in:
Yong Cong Sin 2024-08-14 17:56:26 +08:00 committed by Anas Nashif
commit ab676fdb86
4 changed files with 66 additions and 31 deletions

View file

@ -54,8 +54,9 @@ tests:
harness_config:
type: multi_line
regex:
- "E: backtrace 0: fp: \\w+ lr: \\w+"
- "E: backtrace 1: fp: \\w+ lr: \\w+"
- "E: call trace:"
- "E: 0: fp: \\w+ lr: \\w+"
- "E: 1: fp: \\w+ lr: \\w+"
arch.common.stack_unwind.symtab:
arch_allow:
- riscv