Acidanthera UEFI Development Kit based on EDK II edk2-stable202311
Go to file
Jiewen Yao 026e2ca2c3 MdeModulePkg/PiSmmCore: MemoryAttributeTable need keep non-PE record.
Current memory attribute table implementation will only mark PE code
to be EfiRuntimeServicesCode, and mark rest to be EfiRuntimeServicesData.

However, there might be a case that a SMM code wants to allocate
EfiRuntimeServicesCode explicitly to let page table protect this region
to be read only. It is unsupported.

This patch enhances the current solution so that MemoryAttributeTable
does not touch non PE image record.
Only the PE image region is forced to be EfiRuntimeServicesCode for
code and EfiRuntimeServicesData for data.

Cc: Jeff Fan <jeff.fan@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>
Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
2016-12-07 13:13:51 +08:00
AppPkg AppPkg: Update email and URL. 2016-10-26 09:34:34 -07:00
ArmPkg ArmPkg: fix compilation error in ArmDmaLib 2016-12-01 17:02:13 +00:00
ArmPlatformPkg ArmPlatformPkg: Fix VE RTSM mem map descriptor count 2016-11-25 14:03:32 +00:00
ArmVirtPkg ArmVirtPkg/QemuFwCfgLib: rebase lib instance to updated lib class header 2016-12-05 19:44:52 +01:00
BaseTools BaseTools/VolInfo: Fix printf issue using '%ls' in format string 2016-12-05 09:48:28 +08:00
BeagleBoardPkg Omap35xxPkg, BeagleBoardPkg: Use Pcd for INTERRUPT_BASE 2016-12-05 17:21:40 +00:00
Conf EDK II: Add .gitignore 2014-10-14 16:08:15 +00:00
CorebootModulePkg CorebootPayloadPkg/CbSupportPei: Fix the memory map issue 2016-11-17 14:49:11 -08:00
CorebootPayloadPkg CorebootPayloadPkg: Allow PciLib instance selection 2016-11-17 10:21:52 -08:00
CryptoPkg CryptoPkg/BaseCryptLib: Make comments consistent with the function 2016-11-11 13:46:04 +08:00
DuetPkg DuetPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-02 15:59:19 +00:00
EdkCompatibilityPkg EdkCompatibilityPkg/PrintLite: Fix ErrorPrint() wrong NULL char check 2016-11-03 10:28:47 +08:00
EdkShellBinPkg */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
EdkShellPkg */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
EmbeddedPkg EmbeddedPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-05 15:53:30 +00:00
EmulatorPkg EmulatorPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-02 15:59:19 +00:00
FatBinPkg FatBinPkg: Change to 2-clause BSD license 2016-04-22 00:55:21 -07:00
FatPkg FatPkg/EnhancedFatDxe: rebase to ARRAY_SIZE() 2016-10-27 11:10:54 +02:00
IntelFrameworkModulePkg IntelFrameworkModulePkg/LegacyBios: Fix legacy serial redirection bug 2016-11-10 10:19:54 +08:00
IntelFrameworkPkg IntelFrameworkPkg PeiHobLib: Check FV alignment when building FV HOB 2016-11-17 09:27:13 +08:00
IntelFsp2Pkg IntelFsp2Pkg: 41d739e breaks flat tree build 2016-12-05 14:17:23 +08:00
IntelFsp2WrapperPkg IntelFsp2WrapperPkg: Add a PCD to control if signaling PciEnumerationComplete. 2016-10-28 07:46:42 +08:00
IntelFspPkg IntelFspPkg: Fix typos in comments 2016-10-24 09:26:28 +08:00
IntelFspWrapperPkg IntelFspWrapperPkg: Fix typos in comments 2016-10-24 09:26:30 +08:00
IntelSiliconPkg IntelSiliconPkg: Add DxeSmbiosDataHobLib 2016-11-17 17:35:02 -08:00
MdeModulePkg MdeModulePkg/PiSmmCore: MemoryAttributeTable need keep non-PE record. 2016-12-07 13:13:51 +08:00
MdePkg MdePkg IndustryStandard: Add DDR3, DDR4 and LPDDR definition per SPD spec 2016-11-28 11:15:49 +08:00
NetworkPkg NetworkPkg/IpSecDxe: correct one comment and remove the unused buf 2016-12-06 18:37:25 +08:00
Nt32Pkg Nt32Pkg: Fix typos in comments and variables 2016-11-15 11:05:33 +08:00
Omap35xxPkg Omap35xxPkg, BeagleBoardPkg: Use Pcd for INTERRUPT_BASE 2016-12-05 17:21:40 +00:00
OptionRomPkg OptionRomPkg: Fix typos in comments 2016-11-15 11:05:34 +08:00
OvmfPkg OvmfPkg/build.sh: Use GCC49 toolchains with GCC 6.[0-2] 2016-12-06 18:00:56 +01:00
PcAtChipsetPkg PcAtChipsetPkg/PcRtc: Fix bad EOL 2016-12-06 17:07:47 +08:00
PerformancePkg PerformancePkg/Dp_App: rebase to ARRAY_SIZE() 2016-10-27 11:10:59 +02:00
QuarkPlatformPkg QuarkPlatformPkg/dsc: enable Smm paging protection. 2016-11-17 16:30:08 +08:00
QuarkSocPkg QuarkSocPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-02 15:59:19 +00:00
SecurityPkg SecurityPkg Tcg2ConfigDxe: Align Attempt TPM Device help with options 2016-11-28 16:21:25 +08:00
ShellBinPkg ShellBinPkg Arm/AArch64 Shell binary update 2016-08-02 12:25:13 +02:00
ShellPkg ShellPkg: Add error prompt message in Ifconfig6 command. 2016-12-06 18:37:50 +08:00
SignedCapsulePkg SignedCapsulePkg: GetImage() return EFI_UNSUPPORTED. 2016-11-30 14:39:01 +08:00
SourceLevelDebugPkg SourceLevelDebugPkg: Avoid to re-init IDT table again at SMI entry 2016-11-30 14:34:45 +08:00
StdLib StdLib/LibC ARM AARCH64: do not redefine compiler intrinsics 2016-08-09 10:10:12 +02:00
StdLibPrivateInternalFiles StdLib: Clarify and improve comments. 2016-01-06 00:31:42 +00:00
UefiCpuPkg UefiCpuPkg/Include: Add VMX MSR register structures 2016-12-01 11:58:02 -08:00
UnixPkg UnixPkg: Remove UnixPkg files (It is replaced by EmulatorPkg) 2013-07-29 21:09:55 +00:00
Vlv2DeviceRefCodePkg Vlv2DeviceRefCodePkg/ValleyView2Soc: Remove the unused code 2016-08-03 11:02:19 +08:00
Vlv2TbltDevicePkg Vlv2TbltDevicePkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-06 09:18:51 +00:00
.gitignore EDK II: Add .gitignore 2014-10-14 16:08:15 +00:00
BuildNotes2.txt BaseTools: Updated BuildNotes URLs 2016-03-25 09:46:44 +08:00
Edk2Setup.bat Edk2Setup.bat: Fix build errors from VS tools PREFIX ENV missing 2016-11-05 09:10:58 +08:00
Maintainers.txt Maintainers.txt: Change maintainer of VLV2 packages. 2016-10-27 21:08:23 +08:00
edksetup.bat edksetup.bat: make sure BASE_TOOLS_PATH be set correctly 2016-10-26 13:45:45 +08:00
edksetup.sh edksetup.sh, BaseTools/BuildEnv: add --reconfig support 2016-10-24 13:53:16 +01:00