All of lore.kernel.org
 help / color / mirror / Atom feed
From: Shaun Ruffell <sruffell@digium.com>
To: Vivek Goyal <vgoyal@redhat.com>
Cc: linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
	ebiederm@xmission.com, hpa@zytor.com, kexec@lists.infradead.org
Subject: Re: [PATCH 1/2] kexec: Create a new config option CONFIG_KEXEC_FILE for new syscall
Date: Thu, 14 Aug 2014 13:37:54 -0500	[thread overview]
Message-ID: <20140814183753.GA25199@digium.com> (raw)
In-Reply-To: <1407940980-7100-2-git-send-email-vgoyal@redhat.com>

On Wed, Aug 13, 2014 at 10:42:59AM -0400, Vivek Goyal wrote:
> Currently new system call kexec_file_load() and all the associated code
> compiles if CONFIG_KEXEC=y. But new syscall also compiles purgatory code
> which currently uses gcc option -mcmodel=large. This option seems to be
> available only gcc 4.4 onwards.
> 
> Hiding new functionality behind a new config option will not break
> existing users of old gcc. Those who wish to enable new functionality
> will require new gcc. Having said that, I am trying to figure out how
> can I move away from using -mcmodel=large but that can take a while.
> 
> I think there are other advantages of introducing this new config
> option. As this option will be enabled only on x86_64, other arches
> don't have to compile generic kexec code which will never be used.
> This new code selects CRYPTO=y and CRYPTO_SHA256=y. And all other
> arches had to do this for CONFIG_KEXEC. Now with introduction
> of new config option, we can remove crypto dependency from other
> arches.
> 
> Now CONFIG_KEXEC_FILE is available only on x86_64. So whereever I
> had CONFIG_X86_64 defined, I got rid of that.
> 
> For CONFIG_KEXEC_FILE, instead of doing select CRYPTO=y, I changed
> it to "depends on CRYPTO=y". This should be safer as "select" is
> not recursive.
> 
> Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
> ---
>  arch/x86/Kbuild                    |  4 +---
>  arch/x86/Kconfig                   | 18 ++++++++++++++----
>  arch/x86/Makefile                  |  5 +----
>  arch/x86/kernel/Makefile           |  2 +-
>  arch/x86/kernel/crash.c            |  6 ++----
>  arch/x86/kernel/machine_kexec_64.c | 11 +++++++++++
>  arch/x86/purgatory/Makefile        |  5 +----
>  kernel/kexec.c                     | 11 +++++++++++
>  8 files changed, 42 insertions(+), 20 deletions(-)


Thanks Vivek. It is no surprise but applying this patch resolved my
issue.

Shaun

WARNING: multiple messages have this Message-ID (diff)
From: Shaun Ruffell <sruffell@digium.com>
To: Vivek Goyal <vgoyal@redhat.com>
Cc: akpm@linux-foundation.org, hpa@zytor.com,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	ebiederm@xmission.com
Subject: Re: [PATCH 1/2] kexec: Create a new config option CONFIG_KEXEC_FILE for new syscall
Date: Thu, 14 Aug 2014 13:37:54 -0500	[thread overview]
Message-ID: <20140814183753.GA25199@digium.com> (raw)
In-Reply-To: <1407940980-7100-2-git-send-email-vgoyal@redhat.com>

On Wed, Aug 13, 2014 at 10:42:59AM -0400, Vivek Goyal wrote:
> Currently new system call kexec_file_load() and all the associated code
> compiles if CONFIG_KEXEC=y. But new syscall also compiles purgatory code
> which currently uses gcc option -mcmodel=large. This option seems to be
> available only gcc 4.4 onwards.
> 
> Hiding new functionality behind a new config option will not break
> existing users of old gcc. Those who wish to enable new functionality
> will require new gcc. Having said that, I am trying to figure out how
> can I move away from using -mcmodel=large but that can take a while.
> 
> I think there are other advantages of introducing this new config
> option. As this option will be enabled only on x86_64, other arches
> don't have to compile generic kexec code which will never be used.
> This new code selects CRYPTO=y and CRYPTO_SHA256=y. And all other
> arches had to do this for CONFIG_KEXEC. Now with introduction
> of new config option, we can remove crypto dependency from other
> arches.
> 
> Now CONFIG_KEXEC_FILE is available only on x86_64. So whereever I
> had CONFIG_X86_64 defined, I got rid of that.
> 
> For CONFIG_KEXEC_FILE, instead of doing select CRYPTO=y, I changed
> it to "depends on CRYPTO=y". This should be safer as "select" is
> not recursive.
> 
> Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
> ---
>  arch/x86/Kbuild                    |  4 +---
>  arch/x86/Kconfig                   | 18 ++++++++++++++----
>  arch/x86/Makefile                  |  5 +----
>  arch/x86/kernel/Makefile           |  2 +-
>  arch/x86/kernel/crash.c            |  6 ++----
>  arch/x86/kernel/machine_kexec_64.c | 11 +++++++++++
>  arch/x86/purgatory/Makefile        |  5 +----
>  kernel/kexec.c                     | 11 +++++++++++
>  8 files changed, 42 insertions(+), 20 deletions(-)


Thanks Vivek. It is no surprise but applying this patch resolved my
issue.

Shaun

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  reply	other threads:[~2014-08-14 18:37 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-13 14:42 [PATCH 0/2] kexec: Introduce CONFIG_KEXEC_FILE for new syscall Vivek Goyal
2014-08-13 14:42 ` Vivek Goyal
2014-08-13 14:42 ` [PATCH 1/2] kexec: Create a new config option " Vivek Goyal
2014-08-13 14:42   ` Vivek Goyal
2014-08-14 18:37   ` Shaun Ruffell [this message]
2014-08-14 18:37     ` Shaun Ruffell
2014-08-13 14:43 ` [PATCH 2/2] kexec: Remove CONFIG_KEXEC dependency on crypto Vivek Goyal
2014-08-13 14:43   ` Vivek Goyal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140814183753.GA25199@digium.com \
    --to=sruffell@digium.com \
    --cc=akpm@linux-foundation.org \
    --cc=ebiederm@xmission.com \
    --cc=hpa@zytor.com \
    --cc=kexec@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vgoyal@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.