summaryrefslogtreecommitdiffstats
path: root/OvmfPkg/OvmfPkgIa32.dsc
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2015-09-15 08:35:03 +0000
committerlersek <lersek@Edk2>2015-09-15 08:35:03 +0000
commitd26753f8358c47091f380b9c9cd8081c99715e50 (patch)
tree7489556aa528a6c37195355837b5d3da7275ee10 /OvmfPkg/OvmfPkgIa32.dsc
parent901c58c594121899e17cfc27c92aa92fcfa4daa6 (diff)
downloadedk2-d26753f8358c47091f380b9c9cd8081c99715e50.tar.gz
edk2-d26753f8358c47091f380b9c9cd8081c99715e50.tar.bz2
edk2-d26753f8358c47091f380b9c9cd8081c99715e50.zip
OvmfPkg: make PcdSetNxForStack dynamic
Plus, because PcdSetNxForStack is used by the DXE IPL PEIM (in the HandOffToDxeCore() function, and in the CreateIdentityMappingPageTables() function called by the former), we must change the PcdLib class resolution for that module, from the default BasePcdLibNull to PeiPcdLib. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18469 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'OvmfPkg/OvmfPkgIa32.dsc')
-rw-r--r--OvmfPkg/OvmfPkgIa32.dsc9
1 files changed, 7 insertions, 2 deletions
diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
index 685e72a570..0b873f62b6 100644
--- a/OvmfPkg/OvmfPkgIa32.dsc
+++ b/OvmfPkg/OvmfPkgIa32.dsc
@@ -308,7 +308,6 @@
!endif
[PcdsFixedAtBuild]
- gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|TRUE
gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1
gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x10
@@ -372,6 +371,9 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0
gUefiOvmfPkgTokenSpaceGuid.PcdQemuSmbiosValidated|FALSE
+ # Noexec settings for DXE.
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|TRUE
+
################################################################################
#
# Components Section - list of all EDK II Modules needed by this Platform.
@@ -397,7 +399,10 @@
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
}
IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
- MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
+ MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {
+ <LibraryClasses>
+ PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
+ }
OvmfPkg/PlatformPei/PlatformPei.inf {
<LibraryClasses>