[PATCH v1 05/21] arm64/kexec: refactor for kernel/Kconfig.kexec
Eric DeVolder
eric.devolder at oracle.com
Wed Jun 14 04:57:42 PDT 2023
On 6/13/23 20:22, Leizhen (ThunderTown) wrote:
>
>
> On 2023/6/13 1:27, Eric DeVolder wrote:
>> The kexec and crash kernel options are provided in the common
>> kernel/Kconfig.kexec. Utilize the common options and provide
>> the ARCH_HAS_ and ARCH_SUPPORTS_ entries to recreate the
>> equivalent set of KEXEC and CRASH options.
>>
>> Signed-off-by: Eric DeVolder <eric.devolder at oracle.com>
>> ---
>> arch/arm64/Kconfig | 61 ++++++++--------------------------------------
>> 1 file changed, 10 insertions(+), 51 deletions(-)
>>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index 343e1e1cae10..33552476a877 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -1433,60 +1433,19 @@ config PARAVIRT_TIME_ACCOUNTING
>>
>> If in doubt, say N here.
>>
>> -config KEXEC
>> - depends on PM_SLEEP_SMP
>> - select KEXEC_CORE
>> - bool "kexec system call"
>> - help
>> - kexec is a system call that implements the ability to shutdown your
>> - current kernel, and to start another kernel. It is like a reboot
>> - but it is independent of the system firmware. And like a reboot
>> - you can start any kernel with it, not just Linux.
>> -
>> -config KEXEC_FILE
>> - bool "kexec file based system call"
>> - select KEXEC_CORE
>> - select HAVE_IMA_KEXEC if IMA
>> - help
>> - This is new version of kexec system call. This system call is
>> - file based and takes file descriptors as system call argument
>> - for kernel and initramfs as opposed to list of segments as
>> - accepted by previous system call.
>> -
>> -config KEXEC_SIG
>> - bool "Verify kernel signature during kexec_file_load() syscall"
>> - depends on KEXEC_FILE
>> - help
>> - Select this option to verify a signature with loaded kernel
>> - image. If configured, any attempt of loading a image without
>> - valid signature will fail.
>> -
>> - In addition to that option, you need to enable signature
>> - verification for the corresponding kernel image type being
>> - loaded in order for this to work.
>> +config ARCH_HAS_KEXEC
>> + def_bool PM_SLEEP_SMP
>>
>> -config KEXEC_IMAGE_VERIFY_SIG
>> - bool "Enable Image signature verification support"
>> - default y
>> - depends on KEXEC_SIG
>> - depends on EFI && SIGNED_PE_FILE_VERIFICATION
>> - help
>> - Enable Image signature verification support.
>
> I don't see an alternative to this option. It's used in
> arch/arm64/kernel/kexec_image.c:135
>
Good catch! I will move this into the common options.
Thank you Zhen!
eric
>> -
>> -comment "Support for PE file signature verification disabled"
>> - depends on KEXEC_SIG
>> - depends on !EFI || !SIGNED_PE_FILE_VERIFICATION
>> +config ARCH_HAS_KEXEC_FILE
>> + def_bool y
>>
>> -config CRASH_DUMP
>> - bool "Build kdump crash kernel"
>> - help
>> - Generate crash dump after being started by kexec. This should
>> - be normally only set in special crash dump kernels which are
>> - loaded in the main kernel with kexec-tools into a specially
>> - reserved region and then later executed after a crash by
>> - kdump/kexec.
>> +config ARCH_SUPPORTS_KEXEC_FILE
>> + def_bool y
>> + depends on KEXEC_FILE
>> + select HAVE_IMA_KEXEC if IMA
>>
>> - For more details see Documentation/admin-guide/kdump/kdump.rst
>> +config ARCH_HAS_CRASH_DUMP
>> + def_bool y
>>
>> config TRANS_TABLE
>> def_bool y
>>
>
More information about the linux-riscv
mailing list