audk/ArmPkg/Library/ArmMmuLib
Ard Biesheuvel 9f1dcbe8c8 ArmPkg/ArmMmuLib ARM: implement memory permission control routines
Now that we have the prerequisite functionality available in ArmMmuLib,
wire it up into ArmSetMemoryRegionNoExec, ArmClearMemoryRegionNoExec,
ArmSetMemoryRegionReadOnly and ArmClearMemoryRegionReadOnly. This is
used by the non-executable stack feature that is configured by DxeIpl.

NOTE: The current implementation will not combine RO and XP attributes,
      i.e., setting/clearing a region no-exec will unconditionally
      clear the read-only attribute, and vice versa. Currently, we
      only use ArmSetMemoryRegionNoExec(), so for now, we should be
      able to live with this.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2017-03-07 10:31:53 +01:00
..
AArch64 ArmPkg/ArmMmuLib: remove VirtualMask arg from ArmSetMemoryAttributes 2017-03-07 09:38:08 +01:00
Arm ArmPkg/ArmMmuLib ARM: implement memory permission control routines 2017-03-07 10:31:53 +01:00
ArmMmuBaseLib.inf ArmPkg/ArmMmuLib: base page table VA size on GCD memory map size 2016-09-13 13:43:34 +01:00
ArmMmuPeiLib.inf ArmPkg/ArmMmuLib: base page table VA size on GCD memory map size 2016-09-13 13:43:34 +01:00