[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150730141601.GO15651@linux-rxt1.site>
Date: Thu, 30 Jul 2015 22:16:01 +0800
From: joeyli <jlee@...e.com>
To: Matt Fleming <matt@...eblueprint.co.uk>
Cc: Borislav Petkov <bp@...en8.de>, "H. Peter Anvin" <hpa@...or.com>,
"Lee, Chun-Yi" <joeyli.kernel@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, x86@...nel.org,
linux-efi@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] x86_64/efi: Mapping Boot and Runtime EFI memory regions
to different starting virtual address
On Thu, Jul 30, 2015 at 03:05:42PM +0100, Matt Fleming wrote:
> On Thu, 30 Jul, at 09:39:47PM, joeyli wrote:
> >
> > OK, understood! Thanks for your suggestion!
> >
> > But, I have a question about mapping Boot Code/Data to -4G area. I understand
> > we need Runtime regions, and 1:1 mapping is the workaround of some buggy BIOS.
> > But why should kernel mapping Boot regions to -4G area?
>
> We map the Boot Service regions in the -4G area for simplicity, i.e.
> it's easier to iterate through the EFI memory map in order, and map
> things starting at -4G and working down to lower addresses, than it
> would be to make different mapping decisions based on the region type.
>
> As for why we map the Boot Service regions *at all*, that's also a bug
> workaround, see commit 916f676f8dc0 ("x86, efi: Retain boot service code
> until after switching to virtual mode"). We setup the mappings before we
> call efi_free_boot_services().
>
> --
> Matt Fleming, Intel Open Source Technology Center
Thanks for your explanation.
For my issue, I will check if rewriting the VA of runtime services can fix issue.
If not, then I think need find a way to sync the mapping in EFI page table between
boot kernel and image kernel.
Thanks a lot!
Joey Lee
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists