
22 Jun
2018
22 Jun
'18
10:38 a.m.
Each entry of the EFI memory descriptors occupies map->desc_size, not sizeof(struct efi_mem_desc).
Signed-off-by: Bin Meng bmeng.cn@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