[PATCH v2 0/3] reuse the SevEsWork area


Brijesh Singh
 

Based on the discussion on the mailing list, we agreed that instead
of wasting extra page in the MEMFD, we can reuse the SevEsWorkArea
buffer for the TDX. To avoid any confusion, lets introduce a OvmfWorkArea
that will contains 32 bytes of header followed by the actual workarea.

While at it, move the code to clear the GHCB page from PageTable build
to AmdSev.asm.

I have used the existing TDX BZ for it because the request came
during the TDX patch review. if anyone have concern please let me know
and I will happily create a new BZ.

Full tree is at: https://github.com/AMDESE/ovmf/tree/sev-new-work-area

Brijesh Singh (3):
OvmfPkg: introduce a common work area
OvmfPkg/ResetVector: update SEV support to use new work area format
OvmfPkg/ResetVector: move the GHCB page setup in AmdSev.asm

Cc: James Bottomley <jejb@linux.ibm.com>
Cc: Min Xu <min.m.xu@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Erdem Aktas <erdemaktas@google.com>

Changes since v1:
- address Jiewen's feedback.

Brijesh Singh (3):
OvmfPkg: introduce a common work area
OvmfPkg/ResetVector: update SEV support to use new work area format
OvmfPkg/ResetVector: move the GHCB page setup in AmdSev.asm

OvmfPkg/OvmfPkg.dec | 12 +++
OvmfPkg/OvmfPkgX64.fdf | 9 +-
OvmfPkg/PlatformPei/PlatformPei.inf | 4 +-
OvmfPkg/ResetVector/ResetVector.inf | 1 +
OvmfPkg/Sec/SecMain.inf | 2 +
OvmfPkg/Include/Library/MemEncryptSevLib.h | 21 +---
OvmfPkg/Include/WorkArea.h | 67 +++++++++++++
OvmfPkg/PlatformPei/MemDetect.c | 32 +++---
OvmfPkg/Sec/SecMain.c | 32 +++++-
OvmfPkg/OvmfPkgDefines.fdf.inc | 6 ++
OvmfPkg/ResetVector/Ia32/AmdSev.asm | 111 +++++++++++++++++----
OvmfPkg/ResetVector/Ia32/PageTables64.asm | 57 ++---------
OvmfPkg/ResetVector/ResetVector.nasmb | 1 +
13 files changed, 247 insertions(+), 108 deletions(-)
create mode 100644 OvmfPkg/Include/WorkArea.h

--
2.17.1

Join devel@edk2.groups.io to automatically receive all group messages.