audk/ArmPkg/Drivers
Ard Biesheuvel 36a87fec68 ArmPkg/ArmMmuLib ARM: handle unmapped section in GetMemoryRegion()
GetMemoryRegion() is used to obtain the attributes of an existing
mapping, to permit permission attribute changes to be optimized
away if the attributes don't actually change.

The current ARM code assumes that a section mapping or a page mapping
exists for any region passed into GetMemoryRegion(), but the region
may be unmapped entirely, in which case the code will crash. So check
if a section mapping exists before dereferencing it.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2018-12-03 15:54:39 +01:00
..
ArmCrashDumpDxe ArmPkg: add ArmCrashDumpDxe driver 2017-09-06 17:48:03 +01:00
ArmGic ArmPkg/ArmGicDxe ARM: fix encoding for GICv3 interrupt acknowledge 2018-11-15 04:33:07 -08:00
ArmPciCpuIo2Dxe ArmPkg: implement CpuIo2 protocol driver specific for PCI 2016-04-29 18:04:25 +02:00
ArmScmiDxe ArmPkg/ArmScmiDxe: Dynamically allocate buffer for protocol ids 2018-06-22 08:22:04 +02:00
CpuDxe ArmPkg/ArmMmuLib ARM: handle unmapped section in GetMemoryRegion() 2018-12-03 15:54:39 +01:00
CpuPei ArmPkg/CpuPei: base GCD memory space size on CPU's PA range 2018-11-29 18:55:08 +01:00
GenericWatchdogDxe ArmPkg/GenericWatchdogDxe: Split 64bit register write to 2x32bit 2018-08-03 09:29:14 +02:00
MmCommunicationDxe ArmPkg/Drivers: Add EFI_MM_COMMUNICATION_PROTOCOL DXE driver. 2018-11-27 13:05:57 +01:00
TimerDxe ArmPkg: add reenable hook to ArmGenericTimerCounterLib 2018-04-26 08:31:12 +02:00