Messages in this thread | ![/](/images/icornerl.gif) | | From | Linus Walleij <> | Date | Wed, 27 Jul 2022 09:25:18 +0200 | Subject | Re: [PATCH v3 4/4] ARM: stacktrace: Convert stacktrace to generic ARCH_STACKWALK |
| |
On Wed, Jul 27, 2022 at 6:03 AM Li Huafei <lihuafei1@huawei.com> wrote:
> Historically architectures have had duplicated code in their stack trace > implementations for filtering what gets traced. In order to avoid this > duplication some generic code has been provided using a new interface > arch_stack_walk(), enabled by selecting ARCH_STACKWALK in Kconfig, which > factors all this out into the generic stack trace code. Convert ARM to > use this common infrastructure. > > When initializing the stack frame of the current task, arm64 uses > __builtin_frame_address(1) to initialize the frame pointer, skipping > arch_stack_walk(), see the commit c607ab4f916d ("arm64: stacktrace: > don't trace arch_ stack_walk()"). Since __builtin_frame_address(1) does > not work on ARM, unwind_frame() is used to unwind the stack one layer > forward before calling walk_stackframe(). > > Signed-off-by: Li Huafei <lihuafei1@huawei.com>
Looks good to me. Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Yours, Linus Walleij
| ![\](/images/icornerr.gif) |