lkml.org 
[lkml]   [2015]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/3] [PATCH 2/3] kexec: split kexec_load syscall from kexec core code
Hi, Geert

On 07/14/15 at 11:16am, Geert Uytterhoeven wrote:
> Hi Dave,
>
> On Tue, Jul 14, 2015 at 11:11 AM, Dave Young <dyoung@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@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

But only x86 has KEXEC_FILE, if we make this change one will see KEXEC_FILE
on arches other than x86..

>
> > ...
> >
> > 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.

I means how about only moving KEXEC_CORE to general Kconfig, but do not introduce
ARCH_HAS_KEXEC..

Thanks
Dave


\
 
 \ /
  Last update: 2015-07-14 11:41    [W:0.048 / U:2.088 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site