Re: v4.4-rc8 based tip tree kernel hangs on boot.

From: Matt Fleming
Date: Mon Jan 18 2016 - 10:40:13 EST


On Sun, 17 Jan, at 11:02:48PM, Srikar Dronamraju wrote:
>
> Unfortunately even with your below patch on top of c9f2a9a ("x86/efi:
> Hoist page table switching code into efi_call_virt()" also fails to boot
> with and without CONFIG_DEBUG_WX=y. I have added CONFIG_EFI_PGT_DUMP.

What about if you comment out the call to efi_dump_pagetable()? What
if you return early from efi_sync_low_kernel_mappings(), e.g.

diff --git a/arch/x86/platform/efi/efi_64.c b/arch/x86/platform/efi/efi_64.c
index 71121a9d06cf..e1f8ebb88f84 100644
--- a/arch/x86/platform/efi/efi_64.c
+++ b/arch/x86/platform/efi/efi_64.c
@@ -177,6 +177,8 @@ void efi_sync_low_kernel_mappings(void)
init_mm.pgd + pgd_index(PAGE_OFFSET),
sizeof(pgd_t) * num_pgds);

+ return;
+
/*
* We can share all PGD entries apart from the one entry that
* covers the EFI runtime mapping space.

Do either of those modifications make your kernel boot when you apply
the patch I sent on Friday? If so, which one? I'm struggling to find
hardware that's similar enough to reproduce this.