audk/MdeModulePkg/Universal/Acpi
Star Zeng c6368abcf0 MdeModulePkg BootScriptExecutorDxe: Reduce reserved memory consumption
We are going to reduce reserved memory consumption by page table buffer,
then OS can have more available memory to use.
Take PhysicalAddressBits = 48 and 2MB page granularity as example,
1:1 Virtual to Physical identity mapping page table buffer needs to be
((512 + 1) * 512 + 1) * 4096 = 1075843072 bytes = 0x40201000 bytes.

Current BootScriptExecutorDxe handles > 4G request by page fault because
S3ResumePeim only builds 4G page table when long mode waking vector is
not needed, but BootScriptExecutorDxe still assume the page table buffer for
page table is at 1:1 Virtual to Physical identity mapping.

To reduce reserved memory consumption, the code is updated to only use
8 extra pages to handles > 4G request by page fault.
Another, when both BIOS and OS wants long mode waking vector,
S3ResumePei should have established 1:1 Virtual to Physical identity mapping
page table for ACPI spec requirement, so no need to hook page fault handler.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18067 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-27 03:03:25 +00:00
..
AcpiPlatformDxe MdeModulePkg: Convert non DOS format files to DOS format and remove unused module UNI files. 2014-09-03 08:39:12 +00:00
AcpiTableDxe MdeModulePkg AcpiTableDxe: Install config table at ACPI data change 2015-07-08 09:44:46 +00:00
BootGraphicsResourceTableDxe MdeModulePkg: Convert non DOS format files to DOS format and remove unused module UNI files. 2014-09-03 08:39:12 +00:00
BootScriptExecutorDxe MdeModulePkg BootScriptExecutorDxe: Reduce reserved memory consumption 2015-07-27 03:03:25 +00:00
FirmwarePerformanceDataTableDxe MdeModulePkg: Update FirmwarePerformanceDataTableDxe for LegacyBoot 2015-05-08 07:44:59 +00:00
FirmwarePerformanceDataTablePei MdeModulePkg: Remove GetBootMode() at FirmwarePerformancePeiEntryPoint 2015-05-06 03:31:28 +00:00
FirmwarePerformanceDataTableSmm MdeModulePkg: Cleanup gEfiSmmAccess2ProtocolGuid reference. 2015-02-05 00:59:56 +00:00
S3SaveStateDxe MdeModulePkg: Convert non DOS format files to DOS format and remove unused module UNI files. 2014-09-03 08:39:12 +00:00
SmmS3SaveState MdeModulePkg: Convert non DOS format files to DOS format and remove unused module UNI files. 2014-09-03 08:39:12 +00:00