audk/MdeModulePkg
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
..
Application MdeModulePkg: Refine code to use Strn**S safe functions instead of Str**S ones in some cases. 2015-07-08 01:08:09 +00:00
Bus MdeModulePkg/XhciPei: Error handling enhancement for XhcPeiExecTransfer 2015-07-08 05:54:44 +00:00
Core MdeModulePkg PiSmmCore: Remove a hidden assumption of SMRAM reservation 2015-07-26 07:38:12 +00:00
Include MdeModulePkg VariableDxe: Correct address pointers from AuthVariableLib 2015-07-26 08:03:50 +00:00
Library MdeModulePkg: Make boot option description unique 2015-07-26 08:07:15 +00:00
Logo MdeModulePkg: Convert non DOS format files to DOS format and remove unused module UNI files. 2014-09-03 08:39:12 +00:00
Universal MdeModulePkg BootScriptExecutorDxe: Reduce reserved memory consumption 2015-07-27 03:03:25 +00:00
Contributions.txt */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
License.txt Update copyright format 2012-04-24 06:49:39 +00:00
MdeModulePkg.dec MdeModulePkg: Correct PcdConOutColumn help string. 2015-07-16 05:44:16 +00:00
MdeModulePkg.dsc MdeModulePkg: Remove Ip4ConfigDxe and related guid definition 2015-07-10 05:49:48 +00:00
MdeModulePkg.uni MdeModulePkg: Correct PcdConOutColumn help string. 2015-07-16 05:44:16 +00:00
MdeModulePkgExtra.uni MdeModulePkg: INF/DEC file updates to EDK II packages 2014-08-28 06:55:48 +00:00