From dd099ec44b5d0a5d2dff537fc5b3b3441a49eec6 Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Fri, 22 Jun 2018 01:38:31 -0700 Subject: [PATCH] cmd: efi: Fix wrong memory descriptor end address Each entry of the EFI memory descriptors occupies map->desc_size, not sizeof(struct efi_mem_desc). Signed-off-by: Bin Meng Reviewed-by: Simon Glass --- 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