From 1015fb3c1beb27eabd77e97f06f6b1012bacf3d8 Mon Sep 17 00:00:00 2001 From: Star Zeng Date: Thu, 7 Dec 2017 17:00:48 +0800 Subject: UefiCpuPkg PiSmmCpuDxeSmm: SMM profile and static paging mutual exclusion SMM profile and static paging could not be enabled at the same time, this patch is to add check and comments to make sure it. Similar comments are also added for the case of static paging and heap guard for SMM. Cc: Jiewen Yao Cc: Eric Dong Cc: Ruiyu Ni Cc: Jian J Wang Cc: Laszlo Ersek Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Star Zeng Reviewed-by: Eric Dong Reviewed-by: Laszlo Ersek --- UefiCpuPkg/UefiCpuPkg.dec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'UefiCpuPkg/UefiCpuPkg.dec') diff --git a/UefiCpuPkg/UefiCpuPkg.dec b/UefiCpuPkg/UefiCpuPkg.dec index d2965ba14c..6bac23ff52 100644 --- a/UefiCpuPkg/UefiCpuPkg.dec +++ b/UefiCpuPkg/UefiCpuPkg.dec @@ -84,6 +84,7 @@ [PcdsFeatureFlag] ## Indicates if SMM Profile will be enabled. # If enabled, instruction executions in and data accesses to memory outside of SMRAM will be logged. + # It could not be enabled at the same time with SMM static page table feature (PcdCpuSmmStaticPageTable). # This PCD is only for validation purpose. It should be set to false in production.

# TRUE - SMM Profile will be enabled.
# FALSE - SMM Profile will be disabled.
@@ -225,8 +226,11 @@ gUefiCpuPkgTokenSpaceGuid.PcdCpuApTargetCstate|0|UINT8|0x00000007 ## Indicates if SMM uses static page table. - # If enabled, SMM will not use on-demand paging. SMM will build static page table for all memory.

- # This flag only impacts X64 build, because SMM alway builds static page table for IA32. + # If enabled, SMM will not use on-demand paging. SMM will build static page table for all memory. + # This flag only impacts X64 build, because SMM always builds static page table for IA32. + # It could not be enabled at the same time with SMM profile feature (PcdCpuSmmProfileEnable). + # It could not be enabled also at the same time with heap guard feature for SMM + # (PcdHeapGuardPropertyMask in MdeModulePkg).

# TRUE - SMM uses static page table for all memory.
# FALSE - SMM uses static page table for below 4G memory and use on-demand paging for above 4G memory.
# @Prompt Use static page table for all memory in SMM. -- cgit v1.2.3