]> git.proxmox.com Git - mirror_edk2.git/commitdiff
UefiCpuPkg: Explain relationship between several SMM PCDs
authorRay Ni <ray.ni@intel.com>
Sun, 25 Aug 2019 22:27:13 +0000 (06:27 +0800)
committerRay Ni <ray.ni@intel.com>
Tue, 3 Sep 2019 17:00:11 +0000 (01:00 +0800)
There are three PCDs that may impact the behavior of each other in
SMM environment:
  PcdCpuSmmProfileEnable
  PcdHeapGuardPropertyMask in MdeModulePkg
  PcdCpuSmmRestrictedMemoryAccess

The patch updates the comments in DEC file to document it.

Signed-off-by: Ray Ni <ray.ni@intel.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
UefiCpuPkg/UefiCpuPkg.dec

index 83acd3361282ccfaf7703b02f890b57179218cd9..9a03bdd716faf631521eb1b70076ad3ea7c3b222 100644 (file)
@@ -81,7 +81,8 @@
 [PcdsFeatureFlag]\r
   ## Indicates if SMM Profile will be enabled.\r
   #  If enabled, instruction executions in and data accesses to memory outside of SMRAM will be logged.\r
-  #  It could not be enabled at the same time with SMM static page table feature (PcdCpuSmmStaticPageTable).\r
+  #  In X64 build, it could not be enabled when PcdCpuSmmRestrictedMemoryAccess is TRUE.\r
+  #  In IA32 build, the page table memory is not marked as read-only when it is enabled.\r
   #  This PCD is only for validation purpose. It should be set to false in production.<BR><BR>\r
   #   TRUE  - SMM Profile will be enabled.<BR>\r
   #   FALSE - SMM Profile will be disabled.<BR>\r
   #  The PCD value is considered as constantly TRUE in IA32 platforms.\r
   #  When the PCD value is TRUE, page table is initialized to cover all memory spaces\r
   #  and the memory occupied by page table is protected by page table itself as read-only.\r
+  #  In X64 build, it cannot be enabled at the same time with SMM profile feature (PcdCpuSmmProfileEnable).\r
+  #  In X64 build, it could not be enabled also at the same time with heap guard feature for SMM\r
+  #  (PcdHeapGuardPropertyMask in MdeModulePkg).\r
+  #  In IA32 build, page table memory is not marked as read-only when either SMM profile feature (PcdCpuSmmProfileEnable)\r
+  #  or heap guard feature for SMM (PcdHeapGuardPropertyMask in MdeModulePkg) is enabled.\r
   #   TRUE  - Access to non-SMRAM memory is restricted to reserved, runtime and ACPI NVS type after SmmReadyToLock.<BR>\r
   #   FALSE - Access to any type of non-SMRAM memory after SmmReadyToLock is allowed.<BR>\r
   # @Prompt Access to non-SMRAM memory is restricted to reserved, runtime and ACPI NVS type after SmmReadyToLock.\r