Since this commit a51f953f4ee8 ("mkimage: Align efi sections on 4k boundary") grubarm.efi crashes. Let's revert it.
a51f953f4ee8 ("mkimage: Align efi sections on 4k boundary") Signed-off-by: Heinrich Schuchardt <xypron.g...@gmx.de> --- As Alexander Graf pointed out in a private mail without his patch Qcom ARM notebooks did not work. So I am sending this as an RFC. --- include/grub/efi/pe32.h | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/include/grub/efi/pe32.h b/include/grub/efi/pe32.h index 0ed8781f0..d1359eb66 100644 --- a/include/grub/efi/pe32.h +++ b/include/grub/efi/pe32.h @@ -20,7 +20,6 @@ #define GRUB_EFI_PE32_HEADER 1 #include <grub/types.h> -#include <grub/efi/memory.h> /* The MSDOS compatibility stub. This was copied from the output of objcopy, and it is not necessary to care about what this means. */ @@ -51,14 +50,8 @@ /* According to the spec, the minimal alignment is 512 bytes... But some examples (such as EFI drivers in the Intel Sample Implementation) use 32 bytes (0x20) instead, and it seems - to be working. - - However, there is firmware showing up in the field now with - page alignment constraints to guarantee that page protection - bits take effect. Because currently existing GRUB code can not - properly distinguish between in-memory and in-file layout, let's - bump all alignment to GRUB_EFI_PAGE_SIZE. */ -#define GRUB_PE32_SECTION_ALIGNMENT GRUB_EFI_PAGE_SIZE + to be working. For now, GRUB uses 512 bytes for safety. */ +#define GRUB_PE32_SECTION_ALIGNMENT 0x200 #define GRUB_PE32_FILE_ALIGNMENT GRUB_PE32_SECTION_ALIGNMENT struct grub_pe32_coff_header -- 2.20.1 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel