Re: [PATCH v3 2/2] x86/efi: clean up dead code around efi_reserve_boot_services()
From: Naoya Horiguchi
Date: Tue Jul 25 2017 - 20:13:35 EST
On Mon, Jul 24, 2017 at 02:20:44PM +0100, Matt Fleming wrote:
> On Mon, 10 Jul, at 02:51:36PM, Naoya Horiguchi wrote:
> > EFI_BOOT_SERVICES_{CODE|DATA} regions never overlap the kernel now,
> > so we can clean up the check in efi_reserve_boot_services().
> >
> > Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
> > ---
> > arch/x86/platform/efi/quirks.c | 23 +----------------------
> > 1 file changed, 1 insertion(+), 22 deletions(-)
>
> Is this true for kernels not using KASLR?
Thank you for pointing out this. It's not true depending on memmap layout.
If a firmware does not define the memory around the kernel address
(0x1000000 or CONFIG_PHYSICAL_START) as EFI_BOOT_SERVICES_*, no overlap
happens. That's true in my testing server, but I don't think that we can
expect it generally.
So I think of adding some assertion in the patch 1/2 to detect this overlap
in extract_kernel() even for no KASLR case.
Thanks,
Naoya Horiguchi