From: Alex Thorlton <athorlton@sgi.com>
To: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Alex Thorlton <athorlton@sgi.com>,
linux-kernel@vger.kernel.org, Russ Anderson <rja@sgi.com>,
Mike Travis <travis@sgi.com>, Borislav Petkov <bp@suse.de>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
x86@kernel.org
Subject: Re: [RFC PATCH] Fix EFI callbacks on UV during kexec
Date: Mon, 1 Aug 2016 09:34:10 -0500 [thread overview]
Message-ID: <20160801143410.GJ5939@stormcage.americas.sgi.com> (raw)
In-Reply-To: <20160801133926.GG3636@codeblueprint.co.uk>
On Mon, Aug 01, 2016 at 02:39:26PM +0100, Matt Fleming wrote:
> On Tue, 26 Jul, at 05:38:32PM, Alex Thorlton wrote:
> >
> > After investigating the problem here and figuring out the proper way to
> > get the noefi parameter working again, I noticed that there appears to
> > be support for EFI runtime callbacks in a kexec'd kernel now... I
> > think we need some more cleanup here to get that all working entirely.
> > Without noefi, we hit a bad paging request when we try to do EFI
> > callbacks:
>
> [...]
>
> > [ 0.341531] BUG: unable to handle kernel paging request at 000000006a1ab938
> > [ 0.349319] IP: [<000000006a1ab938>] 0x6a1ab938
> > [ 0.354386] PGD 354e0063 PUD 0
> > [ 0.357910] Oops: 0010 [#1] SMP
> > [ 0.361414] Modules linked in:
> > [ 0.364833] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.7.0-runtime-check+ #713
>
> [...]
>
> > This is due to the fact that the efi_map_region_fixed calls in
> > kexec_enter_virtual_mode, which map in the EFI runtime memory
> > descriptors, only map the virtual address of the descriptor.
> > Unfortunately, since we're still relying on the physical address of our
> > EFI runtime code being mapped in, we don't have access to that code in
> > the kexec scenario.
> >
> > A potential fix for this would be to map in the physical addresses of
> > the descriptors as well as the virtual addresses in
> > efi_map_region_fixed, but the more "correct" fix would be to update
> > our system table pointer to its new virtual address during
> > SetVirtualAddressMap. We intend to get that piece fixed up relatively
> > soon, but haven't quite gotten around to it yet.
>
> I don't think it would be so bad if we did the 1:1 mappings in the
> kexec kernel too, we've got our own page tables after all and the VA
> space is available. It would be required if people ever want to use
> kexec with mixed mode kernels too.
Hmm... That's a good point. It certainly would be nice for us to have
those mappings in the kexec kernel, at least for the time being. If
you're not opposed to it, I can write up the patch. Pretty sure it's a
one-liner.
- Alex
next prev parent reply other threads:[~2016-08-01 14:34 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-26 22:38 Alex Thorlton
2016-07-26 22:38 ` [PATCH] Skip UV runtime services mapping in the efi_runtime_disabled case Alex Thorlton
2016-08-01 13:49 ` Matt Fleming
2016-08-01 14:28 ` Alex Thorlton
2016-08-03 19:36 ` Alex Thorlton
2016-08-04 9:23 ` Matt Fleming
2016-08-01 13:39 ` [RFC PATCH] Fix EFI callbacks on UV during kexec Matt Fleming
2016-08-01 14:34 ` Alex Thorlton [this message]
2016-08-04 9:25 ` Matt Fleming
2016-08-04 15:07 ` Alex Thorlton
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=20160801143410.GJ5939@stormcage.americas.sgi.com \
--to=athorlton@sgi.com \
--cc=bp@suse.de \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matt@codeblueprint.co.uk \
--cc=mingo@redhat.com \
--cc=rja@sgi.com \
--cc=tglx@linutronix.de \
--cc=travis@sgi.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®