sh/kexec: refactor for kernel/Kconfig.kexec
The kexec and crash kernel options are provided in the common kernel/Kconfig.kexec. Utilize the common options and provide the ARCH_SUPPORTS_ and ARCH_SELECTS_ entries to recreate the equivalent set of KEXEC and CRASH options. Link: https://lkml.kernel.org/r/20230712161545.87870-14-eric.devolder@oracle.com Signed-off-by: Eric DeVolder <eric.devolder@oracle.com> Acked-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
75239cf775
commit
40445d0601
@ -548,44 +548,14 @@ menu "Kernel features"
|
|||||||
|
|
||||||
source "kernel/Kconfig.hz"
|
source "kernel/Kconfig.hz"
|
||||||
|
|
||||||
config KEXEC
|
config ARCH_SUPPORTS_KEXEC
|
||||||
bool "kexec system call (EXPERIMENTAL)"
|
def_bool MMU
|
||||||
depends on MMU
|
|
||||||
select KEXEC_CORE
|
|
||||||
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.
|
|
||||||
|
|
||||||
The name comes from the similarity to the exec system call.
|
config ARCH_SUPPORTS_CRASH_DUMP
|
||||||
|
def_bool BROKEN_ON_SMP
|
||||||
|
|
||||||
It is an ongoing process to be certain the hardware in a machine
|
config ARCH_SUPPORTS_KEXEC_JUMP
|
||||||
is properly shutdown, so do not be surprised if this code does not
|
def_bool y
|
||||||
initially work for you. As of this writing the exact hardware
|
|
||||||
interface is strongly in flux, so no good recommendation can be
|
|
||||||
made.
|
|
||||||
|
|
||||||
config CRASH_DUMP
|
|
||||||
bool "kernel crash dumps (EXPERIMENTAL)"
|
|
||||||
depends on BROKEN_ON_SMP
|
|
||||||
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. The crash dump kernel must be compiled
|
|
||||||
to a memory address not used by the main kernel using
|
|
||||||
PHYSICAL_START.
|
|
||||||
|
|
||||||
For more details see Documentation/admin-guide/kdump/kdump.rst
|
|
||||||
|
|
||||||
config KEXEC_JUMP
|
|
||||||
bool "kexec jump (EXPERIMENTAL)"
|
|
||||||
depends on KEXEC && HIBERNATION
|
|
||||||
help
|
|
||||||
Jump between original kernel and kexeced kernel and invoke
|
|
||||||
code via KEXEC
|
|
||||||
|
|
||||||
config PHYSICAL_START
|
config PHYSICAL_START
|
||||||
hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
|
hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
|
||||||
|
Loading…
Reference in New Issue
Block a user