[ipxe-devel] Unable to boot Linux kernel for arm64 architecture

Michael Brown mcb30 at ipxe.org
Fri Mar 17 13:43:45 UTC 2017


On 15/03/17 16:01, Andre wrote:
> I'm using a chain loaded iPXE (snponly.efi) via UEFI network boot.
> If I want to boot a Linux kernel I get the following error messages and
> the system hangs.
> ---
> http://192.168.0.1/rescue-arm64/4.4.52/vmlinuz... ok
> http://192.168.0.1/rescue-arm64/4.4.52/initramfs.cpio.xz... ok
> EFI stub: Booting Linux Kernel...
> EFI stub: Using DTB from configuration table
> EFI stub: Exiting boot services and installing virtual address map...
>
> Synchronous Exception at 0x000000807C5F6B4C
> snponly.efi loaded at 0x000000807C5EC000

iPXE relies on the UEFI firmware fixing up any unaligned accesses.  It's 
possible that the kernel EFI stub disables this support before calling 
ExitBootServices().

You can use the linker map (bin-arm64-efi/snponly.efi.tmp.map) to 
identify where the unaligned access happens.  The exception is at offset 
(0x807c5f6b4c-0x807c5ec000 = 0xab4c), so you need to find this address 
within the (ordered) symbol list at the end of the 
bin-arm64-efi/snponly.efi.tmp.map corresponding to your snponly.efi binary.

Michael



More information about the ipxe-devel mailing list