[PATCH 2/2] riscv: Add KUnit test for stack trace start frames
Shuai Xue
xueshuai at linux.alibaba.com
Mon Oct 12 02:38:41 PDT 2026
On 10/10/26 9:27 PM, Karl Mehltretter wrote:
> stack_trace_save() and return_address() depend on the first frame reported
> by arch_stack_walk(), but no test checks their frame numbering.
>
> Add a test that calls both through a chain of three noinline functions
> and compares the symbol of the result with the function expected for
> each skip count or level.
>
> Require FRAME_POINTER because the stack-scanning walker cannot provide an
> exact start frame.
>
> Assisted-by: LLM
> Signed-off-by: Karl Mehltretter <kmehltretter at gmail.com>
> ---
> arch/riscv/kernel/tests/Kconfig.debug | 12 ++
> arch/riscv/kernel/tests/Makefile | 1 +
> arch/riscv/kernel/tests/stacktrace_test.c | 142 ++++++++++++++++++++++
> 3 files changed, 155 insertions(+)
>
> diff --git a/arch/riscv/kernel/tests/Kconfig.debug b/arch/riscv/kernel/tests/Kconfig.debug
> index 40f8dafffa0a..eb79df5b2c5a 100644
> --- a/arch/riscv/kernel/tests/Kconfig.debug
> +++ b/arch/riscv/kernel/tests/Kconfig.debug
> @@ -42,6 +42,18 @@ config RISCV_KPROBES_KUNIT
>
> If unsure, say N.
>
> +config RISCV_STACKTRACE_KUNIT_TEST
> + bool "KUnit tests for RISC-V stack trace start frames"
> + depends on KUNIT && STACKTRACE && FRAME_POINTER && KALLSYMS
Hi, Karl
One small nit: the new RISCV_STACKTRACE_KUNIT_TEST entry does
not follow the KUNIT_ALL_TESTS pattern of the two existing entries
right next to it (RISCV_KPROBES_KUNIT, RISCV_MODULE_LINKING_KUNIT):
config RISCV_STACKTRACE_KUNIT_TEST
bool "KUnit tests for RISC-V stack trace start frames" if !KUNIT_ALL_TESTS
default KUNIT_ALL_TESTS
Without "default KUNIT_ALL_TESTS" the suite is never enabled by
kunit.all_tests, and without the "if !KUNIT_ALL_TESTS" prompt guard
it shows up as a redundant prompt when KUNIT_ALL_TESTS is already
set. This is not a blocker in any way, just a nice tweak for a
potential v2.
Please feel free to add
Tested-by: Shuai Xue <xueshuai at linux.alibaba.com>
to both patches, and additionally on 1/2
Reviewed-by: Shuai Xue <xueshuai at linux.alibaba.com>
Thanks!
Shuai
More information about the linux-riscv
mailing list