[PATCH 0/7] Kexec-tools: Improve RISC-V port

Song Shuai songshuaishuai at tinylab.org
Tue Oct 10 22:22:45 PDT 2023



在 2023/9/20 19:56, Simon Horman 写道:
> On Fri, Sep 15, 2023 at 11:50:06AM +0800, Song Shuai wrote:
>> Hi,
>>
>> This series is created to improve RISC-V port of kexec-tools,
>> and is based on the horms/kexec-tools:build-test-riscv-v2 branch.
> 
> In my mind the big question is how to move RISC-V support
> from that branch, to being merged into main.
> 
> IIRC there were some issues that needed to be addressed.
> Perhaps they are all addressed by this series, and with
> some appropriate squashing we can move forwards with a series
> based on main?

Hi, Simon and Nick:

I squashed the first four patches as a "RISC-V: Some fixes for riscv 
port" patch and then took the horms/main as the base to collect the 2 
patches from horms/build-test-riscv-v2 branch and this series togother. 
These are the Github link and all commits for RISC-V.

https://github.com/sugarfillet/kexec-tools/commits/main_rv

5dc133e RISC-V: Support loading Image binary file
b042f6d RISC-V: Separate elf_riscv_find_pbase out
8f344c7 RISC-V: Enable kexec_file_load syscall
7d4b982 RISC-V: Some fixes for riscv port
3205c1c local: RISC-V: distribute purgatory/riscv/Makefile
54f9daf RISC-V: Add support for riscv kexec/kdump on kexec-tools

Since I didn't found the issues/fixes as Nick mentioned with these 
commits, I prefer to merge them into horms/main and let more kexec/kdump 
users to help improve/fixup RISC-V port.

I would like to listen to your advice.

> 
>>
>> For your convenience, here is my Github branch for kexec-tools:
>> https://github.com/sugarfillet/kexec-tools/commits/rv-Image
>>
>> The first four patches fixes some build or runtime issues:
>>
>>    RISC-V: Use linux,usable-memory-range for crash kernel
>>    RISC-V: Fix the undeclared ‘EM_RISCV’ build failure
>>    RISC-V: Get memory ranges from iomem
>>    RISC-V: Correct the usage of command line option
>>
>> The last three patches enable the kexec_file_load syscall to load
>> vmlinux and support loading Image binary file for two syscalls.
>>
>>    RISC-V: Enable kexe_file_load
>>    RISC-V: Separate elf_riscv_find_pbase out
>>    RISC-V: Support loading Image binary file
>>
>> Note that:
>>
>> RISC-V Linux kexec_load_file's support for Image file has been sent out but not merged [1].
>>
>> [1]: https://lore.kernel.org/linux-riscv/20230914020044.1397356-1-songshuaishuai@tinylab.org/T/#t
>>
>> Li Zhengyu (1):
>>    RISC-V: Enable kexe_file_load
>>
>> Song Shuai (6):
>>    RISC-V: Use linux,usable-memory-range for crash kernel
>>    RISC-V: Fix the undeclared ‘EM_RISCV’ build failure
>>    RISC-V: Get memory ranges from iomem
>>    RISC-V: Correct the usage of command line option
>>    RISC-V: Separate elf_riscv_find_pbase out
>>    RISC-V: Support loading Image binary file
>>
>>   kexec/arch/riscv/Makefile            |   2 +
>>   kexec/arch/riscv/crashdump-riscv.c   |   2 +-
>>   kexec/arch/riscv/image-header.h      |  88 ++++++++++++++
>>   kexec/arch/riscv/iomem.h             |  10 ++
>>   kexec/arch/riscv/kexec-elf-riscv.c   |  77 +-----------
>>   kexec/arch/riscv/kexec-image-riscv.c |  95 +++++++++++++++
>>   kexec/arch/riscv/kexec-riscv.c       | 176 ++++++++++++++++++++++-----
>>   kexec/arch/riscv/kexec-riscv.h       |  21 ++++
>>   kexec/kexec-syscall.h                |   3 +
>>   9 files changed, 368 insertions(+), 106 deletions(-)
>>   create mode 100644 kexec/arch/riscv/image-header.h
>>   create mode 100644 kexec/arch/riscv/iomem.h
>>   create mode 100644 kexec/arch/riscv/kexec-image-riscv.c
>>
>> -- 
>> 2.20.1
>>
> 

-- 
Thanks
Song Shuai



More information about the kexec mailing list