Re: [PATCH] x86/efi Fix regression in efi_arch_mem_reserve

From: Petr Oros
Date: Thu Dec 22 2016 - 05:21:56 EST


Matt Fleming pÃÅe v Wed 21. 12. 2016 v 22:30 +0000:
> On Wed, 21 Dec, at 02:11:38PM, Petr Oros wrote:
> >
> > Â Booting on EFI with ESRT table has been stop since commit:
> > ÂÂÂÂ8e80632 efi/esrt: Use efi_mem_reserve() and avoid a kmalloc()
> >
> > Â This is caused by this commit:
> > ÂÂÂÂ816e761 efi: Allow drivers to reserve boot services forever
> >
> > Â Problem is, that efi_memmap_insert need memory aligned
> > Â on EFI_PAGE_SIZE. If memory not aligned, efi_memmap_insert
> > Â just return and let efi.memmap in inconsistent state.
> > Â This breaking boot.
> >
> > Â Tested in my machine, which stop booting
> > Â after upgrade to 4.9
> >
> > Signed-off-by: Petr Oros <poros@xxxxxxxxxx>
> > ---
> > Âarch/x86/platform/efi/quirks.c | 2 +-
> > Â1 file changed, 1 insertion(+), 1 deletion(-)
>
> Could you provide some more information? Why does efi_memmap_insert()
> require this alignment? How does booting "break"? If you see an Oops,
> please post it here.

Ooops, sorry, please ignore this patch. I overlooked efi_memmap_insert
argument order. I bisected kernel and this patch breaking kernel boot
but from other reason. Provided patch fixed kernel booting issue by
mistake.

-Petr