There're two issues here actually. >From GCD perspective, its SetMemorySpaceAttributes() method doesn't accept page related attributes. That means users cannot use it to change page attributes, and have to turn to CPU arch protocol to do it, which is not be allowed by PI spec.
>From CpuDxe driver perspective, it doesn't update GCD memory attributes from current page table setup during its initialization. So the memory attributes in GCD might not reflect all memory attributes in real world. Cc: Jiewen Yao <jiewen....@intel.com> Cc: Star Zeng <star.z...@intel.com> Cc: Laszlo Ersek <ler...@redhat.com> Cc: Michael Kinney <michael.d.kin...@intel.com> Suggested-by: Jiewen Yao <jiewen....@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jian J Wang <jian.j.w...@intel.com> Jian J Wang (2): MdeModulePkg/Core: Fix out-of-sync issue in GCD UefiCpuPkg/CpuDxe: Fix out-of-sync issue in page attributes MdeModulePkg/Core/Dxe/Gcd/Gcd.c | 45 ++++++++++++-------- UefiCpuPkg/CpuDxe/CpuDxe.c | 5 +++ UefiCpuPkg/CpuDxe/CpuDxe.h | 9 ++++ UefiCpuPkg/CpuDxe/CpuPageTable.c | 92 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 133 insertions(+), 18 deletions(-) -- 2.14.1.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel