audk/UefiCpuPkg/PiSmmCpuDxeSmm
Yao, Jiewen 881520ea67 UefiCpuPkg/PiSmmCpu: Always set RW+P bit for page table by default
So that we can use write-protection for code later.

This is REPOST.
It includes the bug fix from "Paolo Bonzini" <pbonzini@redhat.com>:

  Title: fix generation of 32-bit PAE page tables

  "Bits 1 and 2 are reserved in 32-bit PAE Page Directory Pointer Table
  Entries (PDPTEs); see Table 4-8 in the SDM.  With VMX extended page
  tables, the processor notices and fails the VM entry as soon as CR0.PG
  is set to 1."

And thanks "Laszlo Ersek" <lersek@redhat.com> to validate the fix.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com>
Signed-off-by: "Paolo Bonzini" <pbonzini@redhat.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Cc: "Fan, Jeff" <jeff.fan@intel.com>
Cc: "Kinney, Michael D" <michael.d.kinney@intel.com>
Cc: "Laszlo Ersek" <lersek@redhat.com>
Cc: "Paolo Bonzini" <pbonzini@redhat.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19067 6f19259b-4bc3-4df7-8a09-765794883524
2015-11-30 19:57:40 +00:00
..
Ia32 UefiCpuPkg/PiSmmCpu: Always set RW+P bit for page table by default 2015-11-30 19:57:40 +00:00
X64 UefiCpuPkg/PiSmmCpu: Always set RW+P bit for page table by default 2015-11-30 19:57:40 +00:00
CpuS3.c UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
CpuService.c UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
CpuService.h UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
MpService.c UefiCpuPkg/PiSmmCpu: Always set RW+P bit for page table by default 2015-11-30 19:57:40 +00:00
PiSmmCpuDxeSmm.c UefiCpuPkg/PiSmmCpu: Update function call for 2 new APIs. 2015-11-27 13:48:12 +00:00
PiSmmCpuDxeSmm.h UefiCpuPkg/PiSmmCpu: Always set RW+P bit for page table by default 2015-11-30 19:57:40 +00:00
PiSmmCpuDxeSmm.inf Eliminate EFI_IMAGE_MACHINE_TYPE_SUPPORTED. 2015-11-25 04:23:01 +00:00
PiSmmCpuDxeSmm.uni UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
PiSmmCpuDxeSmmExtra.uni UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
SmmProfile.c UefiCpuPkg/PiSmmCpu: Always set RW+P bit for page table by default 2015-11-30 19:57:40 +00:00
SmmProfile.h UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
SmmProfileInternal.h UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
SmramSaveState.c UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00
SyncTimer.c UefiCpuPkg: Add PiSmmCpuDxeSmm module no IA32/X64 files 2015-10-19 19:12:53 +00:00