headers: Make structure padding explicit in efi_memory_descriptor
The EFI memory descriptor 64-bit aligns PhysicalStart on both 32- and 64-bit platforms. Make the padding explicit for arm efi and referring 32-bits platform. - Same fix in FreeBSD: https://reviews.freebsd.org/rS320234 - Confirmed with NetBSD: https://github.com/NetBSD/src/blob/trunk/sys/external/bsd/gnu-efi/dist/inc/efidef.h#L191 - Confirmed with Linux: https://github.com/torvalds/linux/blob/5ee96fa9dd78b2dc81b587e33074d877002d7605/include/linux/efi.h#L137 - Confirmed with Zircon: https://github.com/vsrinivas/fuchsia/blob/master/zircon/kernel/lib/efi/include/efi/boot-services.h#L34 The Early Zircon/Fuchsia version has the same problem we have, apparently they did not test their header on 32bit platforms either, now They have got it fixed. Signed-off-by: Han Pengfei <[email protected]> Change-Id: I0c685d41420c4a63773a7bb39b7d2fdd61e932c4 Reviewed-on: https://review.haiku-os.org/c/haiku/+/3875 Reviewed-by: Adrien Destugues <[email protected]> Reviewed-by: Jérôme Duval <[email protected]> Reviewed-by: Alex von Gluck IV <[email protected]> Reviewed-by: Fredrik Holmqvist <[email protected]>
This commit is contained in:
committed by
Adrien Destugues
parent
d3b7fb5a1d
commit
2db2b2123b
@@ -27,6 +27,7 @@ typedef enum {
|
||||
|
||||
typedef struct {
|
||||
uint32_t Type;
|
||||
uint32_t Padding;
|
||||
efi_physical_addr PhysicalStart;
|
||||
efi_virtual_addr VirtualStart;
|
||||
uint64_t NumberOfPages;
|
||||
|
||||
Reference in New Issue
Block a user