]> Git Repo - linux.git/commit - arch/Kconfig
kexec: split kexec_load syscall from kexec core code
authorDave Young <[email protected]>
Wed, 9 Sep 2015 22:38:55 +0000 (15:38 -0700)
committerLinus Torvalds <[email protected]>
Thu, 10 Sep 2015 20:29:01 +0000 (13:29 -0700)
commit2965faa5e03d1e71e9ff9aa143fff39e0a77543a
tree78b12008d7078a9cd40e157d5b18b795b14d5d9c
parenta43cac0d9dc2073ff2245a171429ddbe1accece7
kexec: split kexec_load syscall from kexec core code

There are two kexec load syscalls, kexec_load another and kexec_file_load.
 kexec_file_load has been splited as kernel/kexec_file.c.  In this patch I
split kexec_load syscall code to kernel/kexec.c.

And add a new kconfig option KEXEC_CORE, so we can disable kexec_load and
use kexec_file_load only, or vice verse.

The original requirement is from Ted Ts'o, he want kexec kernel signature
being checked with CONFIG_KEXEC_VERIFY_SIG enabled.  But kexec-tools use
kexec_load syscall can bypass the checking.

Vivek Goyal proposed to create a common kconfig option so user can compile
in only one syscall for loading kexec kernel.  KEXEC/KEXEC_FILE selects
KEXEC_CORE so that old config files still work.

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.

[[email protected]: coding-style fixes]
Signed-off-by: Dave Young <[email protected]>
Cc: Eric W. Biederman <[email protected]>
Cc: Vivek Goyal <[email protected]>
Cc: Petr Tesarik <[email protected]>
Cc: Theodore Ts'o <[email protected]>
Cc: Josh Boyer <[email protected]>
Cc: David Howells <[email protected]>
Cc: Geert Uytterhoeven <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
32 files changed:
arch/Kconfig
arch/arm/Kconfig
arch/ia64/Kconfig
arch/m68k/Kconfig
arch/mips/Kconfig
arch/powerpc/Kconfig
arch/s390/Kconfig
arch/sh/Kconfig
arch/tile/Kconfig
arch/x86/Kconfig
arch/x86/boot/header.S
arch/x86/include/asm/kdebug.h
arch/x86/kernel/Makefile
arch/x86/kernel/kvmclock.c
arch/x86/kernel/reboot.c
arch/x86/kernel/setup.c
arch/x86/kernel/vmlinux.lds.S
arch/x86/kvm/vmx.c
arch/x86/platform/efi/efi.c
arch/x86/platform/uv/uv_nmi.c
drivers/firmware/efi/Kconfig
drivers/pci/pci-driver.c
include/linux/kexec.h
init/initramfs.c
kernel/Makefile
kernel/events/core.c
kernel/kexec.c
kernel/kexec_core.c [new file with mode: 0644]
kernel/ksysfs.c
kernel/printk/printk.c
kernel/reboot.c
kernel/sysctl.c
This page took 0.070045 seconds and 4 git commands to generate.