I've traced a series of kernel panics on one of my projects back to a
failed call to efi_ioremap in efi_64.c. In my project, there is a 4MB
region in the EFI memory map declared as EFI_MEMORY_RUNTIME, but
efi_ioremap fails if the total number of mapped pages is greater than
100:
if (pages_mapped + pages > MAX_EFI_IO_PAGES)
return NULL;
A 4MB runtime region seems to be allowed by the EFI spec. Why is
MAX_EFI_IO_PAGES so low?
----
Jonathan Barkelew
[email protected]