Messages in this thread | | | Date | Wed, 16 Oct 2013 09:07:11 +0100 | From | Matt Fleming <> | Subject | Re: [PATCH] x86 efi: efi reverve boot service fix |
| |
Also better include Maarten on Cc as the author of the code.
On Wed, 16 Oct, at 03:11:22PM, Dave Young wrote: > typo, fix hpa's mail address.. > > On 10/16/13 at 03:03pm, Dave Young wrote: > > > > Current code check boot service region with kernel text region by: > > start+size >= __pa_symbol(_text) > > The end of the above region should be start + size - 1 instead. > > > > I see this problem in ovmf + Fedora 19 grub boot: > > text start: 1000000 md start: 800000 md size: 800000 > > > > Signed-off-by: Dave Young <dyoung@redhat.com> > > --- > > arch/x86/platform/efi/efi.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > --- linux-2.6.orig/arch/x86/platform/efi/efi.c > > +++ linux-2.6/arch/x86/platform/efi/efi.c > > @@ -440,7 +440,7 @@ void __init efi_reserve_boot_services(vo > > * - Not within any part of the kernel > > * - Not the bios reserved area > > */ > > - if ((start+size >= __pa_symbol(_text) > > + if ((start + size - 1 >= __pa_symbol(_text) > > && start <= __pa_symbol(_end)) || > > !e820_all_mapped(start, start+size, E820_RAM) || > > memblock_is_region_reserved(start, size)) {
-- Matt Fleming, Intel Open Source Technology Center
| |