On 12/20/23 09:38, Song Shuai wrote:
 Hi, Lianbo
 在 2023/12/19 17:56, Lianbo Jiang 写道:
> Hi, Song
>
> On 12/14/23 13:07, devel-request(a)lists.crash-utility.osci.io wrote:
>> Date: Wed, 13 Dec 2023 17:45:05 +0800
>> From: Song Shuai<songshuaishuai(a)tinylab.org>
>> Subject: [Crash-utility] [PATCH 0/3] RISCV64: enhance bt command
>> To:k-hagio-ab@nec.com,xianting.tian@linux.alibaba.com
>> Cc:devel@lists.crash-utility.osci.io, Song Shuai
>>     <songshuaishuai(a)tinylab.org>
>> Message-ID:<20231213094508.693236-1-songshuaishuai@tinylab.org>
>>
>> hi,
>>
>> This series enhances the bt command for RISCV64 by making bt aware of
>> - possible kernel and user exception frames (bt -e)
>> - per-cpu IRQ stacks (bt for vmcore crashed in irq stack, bt -E)
>> - per-cpu overflow stacks (bt for vmcore caused by kernel stack 
>> overflow)
>>
>> This series is based on the "RISCV64: Fix 'bt' output when no ra on
>> the stack top" patch sent a few days ago. You can get them all from 
>> my Github repo:
>>
>> 
https://github.com/sugarfillet/crash/commits/rv64-bt-enhance/
>
> Could you please provide the patched kexec-tools(link) for 
> riscv64?(if possible, please give the test steps)
>
> It can help me to do some tests quickly.
>
 Thanks for you attention for this series.
 I had tried to make my riscv support based on kexec-tools' 
 horms/build-test-riscv-v2 merged into horms/main a few weeks ago [1],
 but that thread seemed be suspended.
 Anyway, you can directly fetch it from my Github branch:
 
https://github.com/sugarfillet/kexec-tools/commits/main_rv 
Thank you for the information, Song.
With your patched kexec-tools, the 'kexec -p' command loads the vmlinux 
image(with the busybox rootfs) successfully. But the dumping still 
failed, so I can not test it with the generated vmcore according to your 
steps.
Given that, I would tend to rely on the results of your tests on the 
RISCV64 patch set. And the code changes are fine to me, so: Ack.
Thanks.
Lianbo
 [1]: 
https://lore.kernel.org/kexec/DA84A55096BADE15+594e239a-ff6a-368f-ae92-b6...
>
> Thanks.
>
> Lianbo
>
>>
>> The detailed test report can be found in each patch's commit-msg and
>> all these tests passed on the RV64 Qemu-virt and with RISC-V Linux 
>> v6.6.
>>
 These vmcores were basicly triggered via LKDTM,
 you can find the testcases in each patch's commit-msg.
>> Here is the abstract of these three patches:
>>
>> Patch1 :
>>      [Crash-utility] RISCV64: Add support for 'bt -e' option
>>      With this patch we can search the stack for possible kernel and 
>> user
>>      mode exception frames via 'bt -e' command.
>> Patch2 :
>>      [Crash-utility] RISCV64: Add per-cpu IRQ stacks support
>>      This patch introduces per-cpu IRQ stacks for RISCV64 to let
>>      "bt" do backtrace on it and 'bt -E' search eframes on it,
>>      and the 'help -m' command displays the addresses of each
>>      per-cpu IRQ stack.
>> Patch3:
>>      [Crash-utility] RISCV64: Add per-cpu overflow stacks support
>>      The patch introduces per-cpu overflow stacks for RISCV64 to let
>>      "bt" do backtrace on it and the 'help -m' command dispalys
the
>>      addresss of each per-cpu overflow stack.
>>
>> Song Shuai (3):
>>    [Crash-utility] RISCV64: Add support for 'bt -e' option
>>    [Crash-utility] RISCV64: Add per-cpu IRQ stacks support
>>    [Crash-utility] RISCV64: Add per-cpu overflow stacks support
>>
>>   defs.h    |  30 +++-
>>   help.c    |   2 +-
>>   riscv64.c | 492 
>> +++++++++++++++++++++++++++++++++++++++++++++++++++---
>>   3 files changed, 494 insertions(+), 30 deletions(-)
>>
>> -- 2.20.1
>
>