In V4 patch set:
1.Add a new patch 'MdeModulePkg: Remove RO and NX protection when unset guard page'
2.Add a new patch 'UefiCpuPkg/PiSmmCpuDxeSmm: Clear CR0.WP before modify page table', the assumption that smm page table is always RW should be dropped.
3.Add DEBUG_CODE in 'UefiCpuPkg: Use CpuPageTableLib to convert SMM paging attribute.' to indicate that when mapping a range to present and EFI_MEMORY_RO or EFI_MEMORY_XP is not specificed, existing Present range in input range is set to NX disable and ReadOnly.
4.Sort mSmmCpuSmramRanges and mProtectionMemRange in seperate patches.
5.Seperate patches for creating smm runtime page table and smm s3 page table.
Dun Tan (15):
OvmfPkg: Add CpuPageTableLib required by PiSmmCpuDxe
UefiPayloadPkg: Add CpuPageTableLib required by PiSmmCpuDxe
OvmfPkg:Remove code that apply AddressEncMask to non-leaf entry
MdeModulePkg: Remove RO and NX protection when unset guard page
UefiCpuPkg: Use CpuPageTableLib to convert SMM paging attribute.
UefiCpuPkg/PiSmmCpuDxeSmm: Avoid setting non-present range to RO/NX
UefiCpuPkg/PiSmmCpuDxeSmm: Add 2 function to disable/enable CR0.WP
UefiCpuPkg/PiSmmCpuDxeSmm: Clear CR0.WP before modify page table
UefiCpuPkg: Extern mSmmShadowStackSize in PiSmmCpuDxeSmm.h
UefiCpuPkg: Add GenSmmPageTable() to create smm page table
UefiCpuPkg: Use GenSmmPageTable() to create Smm S3 page table
UefiCpuPkg: Sort mSmmCpuSmramRanges in FindSmramInfo
UefiCpuPkg: Sort mProtectionMemRange when ReadyToLock
UefiCpuPkg: Refinement to smm runtime InitPaging() code
UefiCpuPkg/PiSmmCpuDxeSmm: Remove unnecessary function
MdeModulePkg/Core/PiSmmCore/HeapGuard.c | 2 +-
OvmfPkg/CloudHv/CloudHvX64.dsc | 2 +-
OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c | 6 +++---
OvmfPkg/OvmfPkgIa32.dsc | 3 ++-
OvmfPkg/OvmfPkgIa32X64.dsc | 2 +-
OvmfPkg/OvmfPkgX64.dsc | 2 +-
UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/PageTbl.c | 5 +++--
UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmFuncsArch.c | 3 +--
UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmProfileArch.c | 2 +-
UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 132 ------------------------------------------------------------------------------------------------------------------------------------
UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 43 +++++++++++++++++++++++++++++++++++++++++--
UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------
UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 1 +
UefiCpuPkg/PiSmmCpuDxeSmm/SmmCpuMemoryManagement.c | 801 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfile.c | 327 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
UefiCpuPkg/PiSmmCpuDxeSmm/X64/PageTbl.c | 231 +++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmFuncsArch.c | 3 +--
UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmProfileArch.c | 19 ++-----------------
UefiPayloadPkg/UefiPayloadPkg.dsc | 2 +-
19 files changed, 683 insertions(+), 1024 deletions(-)
--
2.31.1.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#104920): https://edk2.groups.io/g/devel/message/104920
Mute This Topic: https://groups.io/mt/98922924/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-