[PATCH 2/3] [PATCH 2/3] kexec: split kexec_load syscall from kexec core code
Geert Uytterhoeven
geert at linux-m68k.org
Mon Jul 13 01:55:33 PDT 2015
On Mon, Jul 13, 2015 at 4:13 AM, <dyoung at redhat.com> wrote:
> Because there's general code need CONFIG_KEXEC_CORE, so I updated all the
> architecture Kconfig with a new option KEXEC_CORE, and let KEXEC selects
> KEXEC_CORE in arch Kconfig. Also updated general kernel code with
> to kexec_load syscall.
>
> Signed-off-by: Dave Young <dyoung at redhat.com>
> ---
> arch/arm/Kconfig | 4 +
> arch/ia64/Kconfig | 4 +
> arch/m68k/Kconfig | 4 +
> arch/mips/Kconfig | 4 +
> arch/powerpc/Kconfig | 4 +
> arch/sh/Kconfig | 4 +
> arch/tile/Kconfig | 4 +
> arch/x86/Kconfig | 6 +-
> arch/x86/boot/header.S | 2 +-
> arch/x86/include/asm/kdebug.h | 2 +-
> arch/x86/kernel/Makefile | 4 +-
> arch/x86/kernel/kvmclock.c | 4 +-
> arch/x86/kernel/reboot.c | 4 +-
> arch/x86/kernel/setup.c | 2 +-
> arch/x86/kernel/vmlinux.lds.S | 2 +-
> arch/x86/kvm/vmx.c | 8 +-
> arch/x86/platform/efi/efi.c | 4 +-
> arch/x86/platform/uv/uv_nmi.c | 6 +-
> drivers/firmware/efi/Kconfig | 2 +-
> drivers/pci/pci-driver.c | 2 +-
> include/linux/kexec.h | 12 +-
> init/initramfs.c | 4 +-
> kernel/Makefile | 1 +
> kernel/events/core.c | 2 +-
> kernel/kexec.c | 1578 +---------------------------------------
> kernel/kexec_core.c | 1594 +++++++++++++++++++++++++++++++++++++++++
> kernel/ksysfs.c | 6 +-
> kernel/printk/printk.c | 2 +-
> kernel/reboot.c | 2 +-
> kernel/sysctl.c | 2 +-
> 30 files changed, 1668 insertions(+), 1611 deletions(-)
> create mode 100644 kernel/kexec_core.c
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 1c50210..20c48b3 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -2001,10 +2001,14 @@ config XIP_PHYS_ADDR
> be linked for and stored to. This address is dependent on your
> own flash usage.
>
> +config KEXEC_CORE
> + bool
> +
> config KEXEC
> bool "Kexec system call (EXPERIMENTAL)"
> depends on (!SMP || PM_SLEEP_SMP)
> depends on !CPU_V7M
> + 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
As this KEXEC_CORE is appearing in all arch/*/Kconfig files, I think it's
time to add an ARCH_HAS_KEXEC symbol (to a common Kconfig file),
and let arch/*/Kconfig select that if the architecture has kexec support.
Then KEXEC and KEXEC_CORE can live in the common Kconfig file,
without the need to duplicate it.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
More information about the kexec
mailing list