From 7cbcbea853d19c54fae31681be7d73c5dd0c0b4b Mon Sep 17 00:00:00 2001 From: Leif Lindholm Date: Tue, 7 Jan 2014 17:52:50 +0000 Subject: [PATCH 36/37] arm64: set correct length of device path end entry The length of the Device Path End entry in the grub_linux_boot() function was incorrectly set to 0. This triggers an assert failure in debug builds of Tianocore. Set it to sizeof (grub_efi_device_path_t). --- ChangeLog | 4 ++++ grub-core/loader/arm64/linux.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 41bcebf..cc1ff58 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2014-01-07 Leif Lindholm + + * grub-core/loader/arm64/linux.c: correctly set device path end length. + 2013-12-24 Vladimir Serbinenko * configure.ac: Set version to 2.02~beta2. diff --git a/grub-core/loader/arm64/linux.c b/grub-core/loader/arm64/linux.c index 9d15aad..75ad871 100644 --- a/grub-core/loader/arm64/linux.c +++ b/grub-core/loader/arm64/linux.c @@ -268,7 +268,7 @@ grub_linux_boot (void) mempath[1].header.type = GRUB_EFI_END_DEVICE_PATH_TYPE; mempath[1].header.subtype = GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE; - mempath[1].header.length = 0; + mempath[1].header.length = sizeof (grub_efi_device_path_t); b = grub_efi_system_table->boot_services; status = b->load_image (0, grub_efi_image_handle, -- 1.8.4.2