Hi Dave, On Tue, Jul 14, 2015 at 11:11 AM, Dave Young <dyoung at redhat.com> wrote: > On 07/14/15 at 10:50am, Geert Uytterhoeven wrote: >> On Tue, Jul 14, 2015 at 10:46 AM, Dave Young <dyoung at redhat.com> wrote: >> >> > 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? >> >> No, ARCH_HAS_KEXEC and all other KEXEC config options in arch/Kconfig. >> All other KEXEC config options should depend on ARCH_HAS_KEXEC, >> which can be selected by architectures that support kexec. > > So it will be like below? problem is KEXEC_FILE is x86 only now, how > to handle it then? > > arch/Kconfig: > config ARCH_HAS_KEXEC > ... > config KEXEC_CORE > ... > config KEXEC depends on ARCH_HAS_KEXEC > ... > config KEXEC_FILE depends on ARCH_HAS_KEXEC > ... > > arch/arm/Kconfig: > select ARCH_HAS_KEXEC Right, that's the idea. (Minor nit: ARM has dependencies for kexec, so it should be "select ARCH_HAS_KEXEC if (!SMP || PM_SLEEP_SMP) && !CPU_V7M") >> > How about simply move below chunk to arch/Kconfig instead of introducing >> > another ARCH_HAS_KEXEC: >> > config KEXEC_CORE >> > bool >> >> Not all architectures support kexec, hence my proposed dependency on >> ARCH_HAS_KEXEC. > > KEXEC_CORE is not visible in menuconfig, it is selected by KEXEC and KEXEC_FILE > so move it in arch/Kconfig is ok? Yes. Thanks! 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