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. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by:Dave Young <dyoung@redhat.com> Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Vivek Goyal <vgoyal@redhat.com> Cc: Petr Tesarik <ptesarik@suse.cz> Cc: Theodore Ts'o <tytso@mit.edu> Cc: Josh Boyer <jwboyer@fedoraproject.org> Cc: David Howells <dhowells@redhat.com> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
Showing
- arch/Kconfig 3 additions, 0 deletionsarch/Kconfig
- arch/arm/Kconfig 1 addition, 0 deletionsarch/arm/Kconfig
- arch/ia64/Kconfig 1 addition, 0 deletionsarch/ia64/Kconfig
- arch/m68k/Kconfig 1 addition, 0 deletionsarch/m68k/Kconfig
- arch/mips/Kconfig 1 addition, 0 deletionsarch/mips/Kconfig
- arch/powerpc/Kconfig 1 addition, 0 deletionsarch/powerpc/Kconfig
- arch/s390/Kconfig 1 addition, 0 deletionsarch/s390/Kconfig
- arch/sh/Kconfig 1 addition, 0 deletionsarch/sh/Kconfig
- arch/tile/Kconfig 1 addition, 0 deletionsarch/tile/Kconfig
- arch/x86/Kconfig 2 additions, 1 deletionarch/x86/Kconfig
- arch/x86/boot/header.S 1 addition, 1 deletionarch/x86/boot/header.S
- arch/x86/include/asm/kdebug.h 1 addition, 1 deletionarch/x86/include/asm/kdebug.h
- arch/x86/kernel/Makefile 2 additions, 2 deletionsarch/x86/kernel/Makefile
- arch/x86/kernel/kvmclock.c 2 additions, 2 deletionsarch/x86/kernel/kvmclock.c
- arch/x86/kernel/reboot.c 2 additions, 2 deletionsarch/x86/kernel/reboot.c
- arch/x86/kernel/setup.c 1 addition, 1 deletionarch/x86/kernel/setup.c
- arch/x86/kernel/vmlinux.lds.S 1 addition, 1 deletionarch/x86/kernel/vmlinux.lds.S
- arch/x86/kvm/vmx.c 4 additions, 4 deletionsarch/x86/kvm/vmx.c
- arch/x86/platform/efi/efi.c 2 additions, 2 deletionsarch/x86/platform/efi/efi.c
- arch/x86/platform/uv/uv_nmi.c 3 additions, 3 deletionsarch/x86/platform/uv/uv_nmi.c
Loading
Please register or sign in to comment