Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753257AbbGNIrK (ORCPT ); Tue, 14 Jul 2015 04:47:10 -0400 Received: from mx1.redhat.com ([209.132.183.28]:53316 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752375AbbGNIrG (ORCPT ); Tue, 14 Jul 2015 04:47:06 -0400 Date: Tue, 14 Jul 2015 16:46:51 +0800 From: Dave Young To: Geert Uytterhoeven Cc: "linux-kernel@vger.kernel.org" , "kexec@lists.infradead.org" , "Eric W. Biederman" , Vivek Goyal , ptesarik@suse.cz, "Theodore Ts'o" , Josh Boyer , David Howells Subject: Re: [PATCH 2/3] [PATCH 2/3] kexec: split kexec_load syscall from kexec core code Message-ID: <20150714084651.GB4483@dhcp-129-237.nay.redhat.com> References: <20150713021353.282890552@redhat.com> <20150713022634.175021545@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.22.1-rc1 (2013-10-16) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3642 Lines: 92 Hi, Geert Sorry for reply late, I'm occupied by other things. On 07/13/15 at 10:55am, Geert Uytterhoeven wrote: > On Mon, Jul 13, 2015 at 4:13 AM, 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 > > --- > > 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. I'm not sure I understand your idea well, do you means like in arch/Kconfig add ARCH_HAS_KEXEC which depends on KEXEC_CORE? How about simply move below chunk to arch/Kconfig instead of introducing another ARCH_HAS_KEXEC: config KEXEC_CORE bool BTW, I found I missed one arch that is s390, I need update the patches and resend. Thanks Dave -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/