]> git.proxmox.com Git - mirror_edk2.git/commit
ArmPkg/ArmMmuLib: base page table VA size on GCD memory map size
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Fri, 9 Sep 2016 08:01:56 +0000 (09:01 +0100)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Tue, 13 Sep 2016 12:43:34 +0000 (13:43 +0100)
commitdd82465a9f0f0beff0e4d74c6e3192b966853332
tree5bb8c1aa39b134a058b568c53a7ebe59e30ad297
parentd32702d2c2aa23e828363a7f88829b78ce36c3af
ArmPkg/ArmMmuLib: base page table VA size on GCD memory map size

As reported by Eugene, the practice of sizing the address space in the
virtual memory system based on the maximum address in the table passed
to ArmConfigureMmu() is problematic, since it fails to take into account
the fact that the GCD memory space may be extended at a later time, both
for memory and for MMIO. So instead, choose the VA size identical to the
GCD memory map size, which is based on PcdPrePiCpuMemorySize on ARM
systems.

Reported-by: Eugene Cohen <eugene@hp.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Eugene Cohen <eugene@hp.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
ArmPkg/Library/ArmMmuLib/AArch64/ArmMmuLibCore.c
ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf