audk/ArmPkg/Library/ArmMmuLib
Ard Biesheuvel 66509f90fc ArmPkg/ArmMmuLib ARM: trim high memory regions instead of rejecting them
ArmSetMemoryAttributes() still chokes in some cases, i.e., when the
length of the region exceeds 4 GB, the subtraction overflows, which
results in the region being misidentified as being 32-bit addressable.

Let's update the logic to trim the length to what we can address with
32 bits. This fixes the issue, and also deals with the issue where an
entire region is disregarded if part of it exceeds beyond what we can
map with 32 bits.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2019-01-28 20:01:45 +01:00
..
AArch64 ArmPkg/ArmMmuLib AARCH64: fix out of bounds access 2019-01-14 19:46:57 +01:00
Arm ArmPkg/ArmMmuLib ARM: trim high memory regions instead of rejecting them 2019-01-28 20:01:45 +01:00
ArmMmuBaseLib.inf ArmPkg/ArmMmuLib: take the CPU supported maximum PA space into account 2018-11-29 18:54:59 +01:00
ArmMmuPeiLib.inf ArmPkg/ArmMmuLib: take the CPU supported maximum PA space into account 2018-11-29 18:54:59 +01:00