From: Olivier Martin Date: Mon, 6 Jul 2015 16:53:37 +0000 (+0000) Subject: ArmPkg/CpuDxe: Fixed AArch64 MMU X-Git-Tag: edk2-stable201903~9442 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=c4149528d4603656fbddb21b5cba821cac90cbdb ArmPkg/CpuDxe: Fixed AArch64 MMU When the function that determines the size of a contiguous region was returning from a sub-level table scanning it was forgetting to move to the next entry of its own level table. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin Reviewed-by: Ronald Cron git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17832 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c b/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c index 6cba1218c6..d8bb419780 100644 --- a/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c +++ b/ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c @@ -279,6 +279,9 @@ GetMemoryRegionRec ( if (!EFI_ERROR(Status)) { return EFI_SUCCESS; } + + // Now we processed the table move to the next entry + BlockEntry++; } else if (EntryType == BlockEntryType) { // We have found the BlockEntry attached to the address. We save its start address (the start // address might be before the 'BaseAdress') and attributes