On 5 June 2014 16:01, Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote: > On Thu, 5 Jun 2014 14:27:34 +0100 > Matt Fleming <matt@xxxxxxxxxxxxxxxxx> wrote: > >> From: Matt Fleming <matt.fleming@xxxxxxxxx> >> >> free_bootmem_late() expects to only be passed RAM regions that the >> kernel can access, and that have a corresponding 'struct page'. It's >> possible for regions in the EFI memory map to reside in address ranges >> for which pfn_to_page() doesn't work, for instance when running on an >> i386 system with CONFIG_HIGHMEM=n. >> >> This is in fact the case for one of Alan's machines where some of the >> EFI boot services pages live in highmem, and running a kernel without >> CONFIG_HIGHMEM enabled results in the following oops, >> >> BUG: unable to handle kernel paging request at f7f1f080 >> IP: [<c17fba96>] __free_pages_bootmem+0x5a/0xb8 >> *pdpt = 0000000001887001 *pde = 0000000001984067 *pte = 000000000 0000000 >> Oops: 0002 [#1] SMP > > No improvement, and the if case is never true 8( Argh, dammit. OK, back to the drawing board. Thanks for testing. -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html