[PATCH v4 0/2] ARM: Convert to ARCH_STACKWALK

From: Li Huafei
Date: Tue Oct 18 2022 - 08:47:17 EST


This series mainly updates the ARM stack trace code to use the newer and
simpler arch_stack_walk() interface.

When Russell applied patch 1, the patch tracker complained of a minor
conflict with Lei Zhen's patch (see [1]). Lei Zhen's patch has been
merged into v6.1-rc1. Now rebase to v6.1-rc1 and resend this patch set.

Thanks!

[1] https://www.armlinux.org.uk/developer/patches/viewpatch.php?id=9235/1

v4:
- Rebase to v6.1-rc1.
- Fix commit log for patch 2: 'arch _stack_walk()' -> 'arch_stack_walk()'.
- Remove the two bugfix patches that have been merged in:
ARM: stacktrace: Skip frame pointer boundary check for call_with_stack()
ARM: stacktrace: Avoid duplicate saving of exception PC value

v3 resend: https://lore.kernel.org/lkml/20220826074047.107357-1-lihuafei1@xxxxxxxxxx/
It's been a month since I sent the v3. Linus told me I needed to add the
patch to Russell's patch tracker myself, rebase to v6.0-rc1 before that.
Thanks Linus for the tip!

Since commit af6f23b88e95 ("ARM/dma-mapping: use the generic versions of
dma_to_phys/phys_to_dma by default") and commit ae626eb97376
("ARM/dma-mapping: use dma-direct unconditionally") modified
arch/arm/Kconfig, there is a minor conflict with patch 4 when rebase.

v3: https://lore.kernel.org/lkml/20220727040022.139387-1-lihuafei1@xxxxxxxxxx/
- According to the discussion with Linus and Russell in v1:
- Add a comment about "regs[1]" in patch 2, and remove the
unnecessary ternary operator in the initialization of
"frame->ex_frame".
- Remove the patch "ARM: stacktrace: Allow stack trace saving for
non-current tasks", and keep the check for not being able to
unwind non-current tasks (including tasks running on other CPUs)
when CONFIG_SMP=y in patch 4.
- Rebase to linux-5.19-rc8.

v2: https://lore.kernel.org/lkml/20220713110020.85511-1-lihuafei1@xxxxxxxxxx/
- As suggested by Mark, the commit logs for patch 4 and 5 were
refined for easy review.

v1: https://lore.kernel.org/lkml/20220712021527.109921-1-lihuafei1@xxxxxxxxxx/

Li Huafei (2):
ARM: stacktrace: Make stack walk callback consistent with generic code
ARM: stacktrace: Convert stacktrace to generic ARCH_STACKWALK

arch/arm/Kconfig | 1 +
arch/arm/include/asm/stacktrace.h | 2 +-
arch/arm/kernel/perf_callchain.c | 9 +--
arch/arm/kernel/return_address.c | 8 +-
arch/arm/kernel/stacktrace.c | 119 +++++++++---------------------
5 files changed, 44 insertions(+), 95 deletions(-)

--
2.17.1