[PATCH 2/3] [PATCH 2/3] kexec: split kexec_load syscall from kexec core code

Geert Uytterhoeven geert at linux-m68k.org
Tue Jul 14 02:47:48 PDT 2015


Hi Dave,

On Tue, Jul 14, 2015 at 11:24 AM, Dave Young <dyoung at redhat.com> wrote:
> On 07/14/15 at 11:16am, Geert Uytterhoeven wrote:
>> 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
>
> But only x86 has KEXEC_FILE, if we make this change one will see KEXEC_FILE
> on arches other than x86..

Is there any technical reason why it's limited to x86?
Else we may need ARCH_HAS_KEXEC_FILE, too :-(

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



More information about the kexec mailing list