From: "H. Peter Anvin" <hpa@zytor.com>
To: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: X86-ML <x86@kernel.org>, KEXEC-ML <kexec@lists.infradead.org>,
"Ahmed S. Darwish" <darwish.07@gmail.com>,
Haren Myneni <hbabu@us.ibm.com>,
Simon Horman <horms@verge.net.au>, Ingo Molnar <mingo@elte.hu>,
Vivek Goyal <vgoyal@redhat.com>
Subject: Re: Saveoops: Making Kexec purgatory position-independent?
Date: Sat, 26 Feb 2011 17:15:50 -0800 [thread overview]
Message-ID: <4D69A5C6.6020906@zytor.com> (raw)
In-Reply-To: <m14o7q5m6d.fsf@fess.ebiederm.org>
On 02/26/2011 04:57 PM, Eric W. Biederman wrote:
>>
>> I can't see any sane reason to *not* make kexec purgatory
>> position-independent. It is the obvious thing to do.
>
> This isn't a case of the code not being position independent. This is
> case of where the relocations are applied.
>
> I can see a couple of handling this with different tradeoffs.
>
> 1) We teach bootloaders how to load two kernels at once. This
> completely avoids the purgatory, as it is replaced by code in the
> bootloader that already exists to load the primary kernel and setup
> it's arguments.
>
> 2) We add minimal relocation processing to purgatory, allowing us to do
> the setup for the second kernel extremely early and allow it to be
> compiled into the first kernel.
>
> 3) We come up with a scheme where we don't share code and the first
> kernel copies the firmware information to place where the second
> kernel can get at it, and uses it's own home grown stub and not
> purgatory.
>
> I think this whole thing can be prototyped easily with a getting /sbin/kexec
> to load to a fixed address and then baking that section into the primary
> kernel. I'm not convinced that directly using /sbin/kexec is the right
> way forward to handle the general case. This is something where the
> devil is in the details.
>
OK... I'm clearly missing something... what code is not being
position-independent and which code needs relocations applied?
-hpa
--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.
_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec
next prev parent reply other threads:[~2011-02-27 1:16 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-26 16:20 Saveoops: Making Kexec purgatory position-independent? Ahmed S. Darwish
2011-02-26 21:38 ` H. Peter Anvin
2011-02-27 0:57 ` Eric W. Biederman
2011-02-27 1:15 ` H. Peter Anvin [this message]
2011-02-27 13:24 ` Ahmed S. Darwish
2011-02-27 14:16 ` Vivek Goyal
2011-02-27 15:43 ` Ahmed S. Darwish
2011-02-27 18:32 ` Eric W. Biederman
2011-02-28 1:38 ` Simon Horman
2011-02-28 1:39 ` H. Peter Anvin
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=4D69A5C6.6020906@zytor.com \
--to=hpa@zytor.com \
--cc=darwish.07@gmail.com \
--cc=ebiederm@xmission.com \
--cc=hbabu@us.ibm.com \
--cc=horms@verge.net.au \
--cc=kexec@lists.infradead.org \
--cc=mingo@elte.hu \
--cc=vgoyal@redhat.com \
--cc=x86@kernel.org \
/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.