audk/UefiCpuPkg/SecCore
Jiaxin Wu b4d3b77973 UefiCpuPkg/SecCore: Migrate page table to permanent memory
Background:
For arch X64, system will enable the page table in SPI to cover 0-512G
range via CR4.PAE & MSR.LME & CR0.PG & CR3 setting (see ResetVector code).
Existing code doesn't cover the higher address access above 512G before
memory-discovered callback. That will be potential problem if system
access the higher address after the transition from temporary RAM to
permanent MEM RAM.

Solution:
This patch is to migrate page table to permanent memory to map entire physical
address space if CR0.PG is set during temporary RAM Done.

Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Zeng Star <star.zeng@intel.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
2023-05-31 04:48:36 +00:00
..
Ia32 UefiCpuPkg/SecCore: Add pre-memory AP vector 2020-06-23 01:50:29 +00:00
FindPeiCore.c UefiCpuPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
SecBist.c UefiCpuPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
SecCore.inf UefiCpuPkg/SecCore: Migrate page table to permanent memory 2023-05-31 04:48:36 +00:00
SecCore.uni UefiCpuPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:28 -07:00
SecCoreExtra.uni UefiCpuPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:28 -07:00
SecCoreNative.inf UefiCpuPkg/SecCore: Migrate page table to permanent memory 2023-05-31 04:48:36 +00:00
SecMain.c UefiCpuPkg/SecCore: Migrate page table to permanent memory 2023-05-31 04:48:36 +00:00
SecMain.h UefiCpuPkg/SecCore: Migrate page table to permanent memory 2023-05-31 04:48:36 +00:00