Kexec Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Vivek Goyal <vgoyal@redhat.com>
To: WANG Chao <chaowang@redhat.com>
Cc: "Thomas D." <whissi@whissi.de>,
	Kexec Mailing List <kexec@lists.infradead.org>,
	Kees Cook <keescook@chromium.org>
Subject: Re: kexec fails to boot kernels where CONFIG_RANDOMIZE_BASE=y is set
Date: Fri, 22 Aug 2014 08:38:12 -0400	[thread overview]
Message-ID: <20140822123811.GD5954@redhat.com> (raw)
In-Reply-To: <20140822031941.GB2651@dhcp-17-37.nay.redhat.com>

On Fri, Aug 22, 2014 at 11:19:41AM +0800, WANG Chao wrote:
> On 08/21/14 at 02:10pm, Vivek Goyal wrote:
> >
> > If kernel is being moved physically, then we potentially have the issue of
> > it stomping other things. So how do we make sure that it does not overwrite
> > initramfs, or previous kernel's page tables or something else?
> 
> In case you don't read that part, memory of initrd, cmdline and others
> won't be overwritten.
> 
> This work is done in x86/boot/compressed/aslr.c::mem_avoid_init().

Ok, got it. so cmdline and initrd info is present in bootparams and kernel
can use that to avoid stomping those.

But that still does not protect ELF header segment (prepared in case of
kdump) and page tables setup by previous kernel.

So may be this failure happens because new kernel stomps over page tables
of old kernel. But if that theory is right, then we should be able to
kexec using 32bit entry point of bzImage.

Thomas, have you had any success with that?

Thanks
Vivek

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

  parent reply	other threads:[~2014-08-22 12:38 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-17 21:02 kexec fails to boot kernels where CONFIG_RANDOMIZE_BASE=y is set Thomas D.
2014-08-18 14:57 ` Vivek Goyal
2014-08-19  9:07   ` WANG Chao
2014-08-20 14:33     ` Vivek Goyal
2014-08-21 15:57       ` Kees Cook
2014-08-21 18:10         ` Vivek Goyal
2014-08-21 19:02           ` Vivek Goyal
2014-08-21 19:27             ` Thomas D.
2014-08-22 18:18               ` Kexec failing in handle_relocations() (Was: Re: kexec fails to boot kernels where CONFIG_RANDOMIZE_BASE=y is set) Vivek Goyal
2014-08-21 19:16           ` kexec fails to boot kernels where CONFIG_RANDOMIZE_BASE=y is set Vivek Goyal
2014-08-22  3:19           ` WANG Chao
2014-08-22 11:59             ` Baoquan He
2014-08-22 12:30               ` Thomas D.
2014-08-22 12:40                 ` Vivek Goyal
2014-08-22 13:23                   ` Thomas D.
2014-08-22 13:16               ` Vivek Goyal
2014-08-22 14:44                 ` Baoquan He
2014-08-22 12:38             ` Vivek Goyal [this message]
2014-08-22 12:47               ` Thomas D.
2014-08-22 12:53                 ` Vivek Goyal
2014-08-22 14:59                   ` Baoquan He

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=20140822123811.GD5954@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=chaowang@redhat.com \
    --cc=keescook@chromium.org \
    --cc=kexec@lists.infradead.org \
    --cc=whissi@whissi.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox