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