[U-Boot] [PATCH 6/6] cmd: efi: Fix wrong memory descriptor end address
Bin Meng
bmeng.cn at gmail.com
Fri Jun 22 08:38:31 UTC 2018
Each entry of the EFI memory descriptors occupies map->desc_size,
not sizeof(struct efi_mem_desc).
Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
---
cmd/efi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cmd/efi.c b/cmd/efi.c
index 2511c6c..6c1eb88 100644
--- a/cmd/efi.c
+++ b/cmd/efi.c
@@ -83,7 +83,7 @@ void *efi_build_mem_table(struct efi_entry_memmap *map, int size, bool skip_bs)
prev = NULL;
addr = 0;
dest = base;
- end = base + count;
+ end = (struct efi_mem_desc *)((ulong)base + count * map->desc_size);
for (desc = base; desc < end; desc = efi_get_next_mem_desc(map, desc)) {
bool merge = true;
int type = desc->type;
--
2.7.4
More information about the U-Boot
mailing list