mirror of https://github.com/acidanthera/audk.git
147fd35c3e
One of the functionalities of CpuDxe is to update memory paging attributes. If page table protection is applied, it must be disabled temporarily before any attributes update and enabled again afterwards. This patch makes use of the same way as DxeIpl to allocate page table memory from reserved memory pool, which helps to reduce potential "split" operation and recursive calling of SetMemorySpaceAttributes(). Laszlo (lersek@redhat.com) did a regression test on QEMU virtual platform with one middle version of this series patch. The details can be found at https://lists.01.org/pipermail/edk2-devel/2017-December/018625.html There're a few changes after his work. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jian J Wang <jian.j.wang@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> |
||
---|---|---|
.. | ||
Ia32 | ||
X64 | ||
CpuDxe.c | ||
CpuDxe.h | ||
CpuDxe.inf | ||
CpuDxe.uni | ||
CpuDxeExtra.uni | ||
CpuGdt.c | ||
CpuGdt.h | ||
CpuMp.c | ||
CpuMp.h | ||
CpuPageTable.c | ||
CpuPageTable.h |