From: "Min Xu" <min.m.xu@intel.com>
To: devel@edk2.groups.io
Cc: Min Xu <min.m.xu@intel.com>, Eric Dong <eric.dong@intel.com>,
Ray Ni <ray.ni@intel.com>, Brijesh Singh <brijesh.singh@amd.com>,
Erdem Aktas <erdemaktas@google.com>,
Gerd Hoffmann <kraxel@redhat.com>,
James Bottomley <jejb@linux.ibm.com>,
Jiewen Yao <jiewen.yao@intel.com>,
Tom Lendacky <thomas.lendacky@amd.com>,
Guo Dong <guo.dong@intel.com>,
Sean Rhodes <sean@starlabs.systems>,
James Lu <james.lu@intel.com>, Gua Guo <gua.guo@intel.com>,
Michael D Kinney <michael.d.kinney@intel.com>,
Liming Gao <gaoliming@byosoft.com.cn>
Subject: [PATCH V6 0/3] Rename VmgExitLib to CcExitLib
Date: Fri, 11 Nov 2022 15:17:07 +0800 [thread overview]
Message-ID: <20221111071710.1596-1-min.m.xu@intel.com> (raw)
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4123
VmgExitLib once was designed to provide interfaces to support #VC handler
and issue VMGEXIT instruction. After TDVF (enable TDX feature in OVMF) is
introduced, this library is updated to support #VE as well. Now the name
of VmgExitLib cannot reflect what the lib does.
This patch-set renames VmgExitLib to CcExitLib (Cc means Confidential
Computing). This is simple renaming and there is no logic changes. Then
APIs defined in CcExitLib.h are added with a CcExit prefix. This is to
make the name more meaningful.
Please to be noted, changing the name of VmgExitLib to CcExitLib is a
non-backwards compatible change from a platform DSC file perspective for
downstream consumers. So for downstream platform below changes should
be applied:
1. For DSC files:
- VmgExitLib|OvmfPkg/Library/VmgExitLib/SecVmgExitLib.inf =>
CcExitLib|OvmfPkg/Library/CcExitLib/SecCcExitLib.inf
- VmgExitLib|UefiCpuPkg/Library/VmgExitLibNull/VmgExitLibNull.inf =>
CcExitLib|UefiCpuPkg/Library/CcExitLibNull/CcExitLibNull.inf
- VmgExitLib|OvmfPkg/Library/VmgExitLib/VmgExitLib.inf =>
CcExitLib|OvmfPkg/Library/CcExitLib/CcExitLib.inf
2. For INF files:
- VmgExitLib => CcExitLib
3. For Header files
- #include <Library/VmgExitLib.h> => #include <Library/CcExitLib.h>
4. For C files
- Replace the APIs defined in the VmgExitLib.h with the ones defined in
CcExitLib.h. The old name is renamed by adding a prefix (CcExit).
For example VmgInit is renamed as CcExitVmgInit.
Code: https://github.com/mxu9/edk2/tree/CcExitLib.v5
v6 changes:
- Fix a typo in patch0@v5.
- No other changes from v5. So the code is same as v5.
v5 changes:
- Rebased the code base to c17c3c24d8.
- Add instructions in patch#0 on what updates to a downstream
platform DSC.
v4 changes:
- The previous versions of the patch-set are to first duplicate a new
CcExitLib then delete the old VmgExitLib. According to this comments
https://edk2.groups.io/g/devel/message/96019 it suggests renaming in
a single patch is better.
- Lib APIs are added with CcExit prefix, not CcExitLib prefix.
v3 changes:
- Rename CcExitHandleVc / CcExitHandleVe to
CcExitLibHandleVc / CcExitLibHandleVe to make the nameing consistent.
- Update the CcExitLib to merge the patch eff44c008d99
(OvmfPkg/VmgExitLig: HALT on #VE when access to private memory).
v2 changes:
- Patch #3 is added to import CcExitLib in OvmfPkg's *.dsc. This is to
prevent the building from being broken in the following patches.
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Erdem Aktas <erdemaktas@google.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>
Cc: Guo Dong <guo.dong@intel.com>
Cc: Sean Rhodes <sean@starlabs.systems>
Cc: James Lu <james.lu@intel.com>
Cc: Gua Guo <gua.guo@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Signed-off-by: Min Xu <min.m.xu@intel.com>
Min M Xu (3):
OvmfPkg/UefiCpuPkg/UefiPayloadPkg: Rename VmgExitLib to CcExitLib
OvmfPkg/UefiCpuPkg: Add CcExit prefix to the APIs of CcExitLib
Maintainers: Update the VmgExitLib to CcExitLib
Maintainers.txt | 2 +-
OvmfPkg/AmdSev/AmdSevX64.dsc | 4 +-
OvmfPkg/Bhyve/BhyveX64.dsc | 2 +-
OvmfPkg/CloudHv/CloudHvX64.dsc | 6 +-
OvmfPkg/IntelTdx/IntelTdxX64.dsc | 4 +-
.../DxeMemEncryptSevLib.inf | 2 +-
.../PeiMemEncryptSevLib.inf | 2 +-
.../SecMemEncryptSevLib.inf | 2 +-
.../X64/SnpPageStateChangeInternal.c | 10 +-
.../VmgExitLib.c => CcExitLib/CcExitLib.c} | 23 ++--
.../CcExitLib.inf} | 17 +--
.../CcExitTd.h} | 4 +-
.../CcExitVcHandler.c} | 129 +++++++++---------
.../CcExitVcHandler.h} | 6 +-
.../CcExitVeHandler.c} | 6 +-
.../PeiDxeCcExitVcHandler.c} | 6 +-
.../SecCcExitLib.inf} | 14 +-
.../SecCcExitVcHandler.c} | 6 +-
.../X64/TdVmcallCpuid.nasm | 0
OvmfPkg/Microvm/MicrovmX64.dsc | 4 +-
OvmfPkg/OvmfPkgIa32.dsc | 4 +-
OvmfPkg/OvmfPkgIa32X64.dsc | 4 +-
OvmfPkg/OvmfPkgX64.dsc | 6 +-
OvmfPkg/OvmfXen.dsc | 2 +-
OvmfPkg/PlatformPei/AmdSev.c | 10 +-
OvmfPkg/PlatformPei/PlatformPei.inf | 2 +-
.../FvbServicesRuntimeDxe.inf | 2 +-
.../QemuFlashDxe.c | 10 +-
.../Library/{VmgExitLib.h => CcExitLib.h} | 29 ++--
.../CcExitLibNull.c} | 47 +++++--
.../CcExitLibNull.inf} | 12 +-
.../Library/CcExitLibNull/CcExitLibNull.uni | 14 ++
.../DxeCpuExceptionHandlerLib.inf | 2 +-
.../PeiCpuExceptionHandlerLib.inf | 2 +-
.../PeiDxeSmmCpuException.c | 6 +-
.../SecPeiCpuException.c | 6 +-
.../SecPeiCpuExceptionHandlerLib.inf | 2 +-
.../SmmCpuExceptionHandlerLib.inf | 2 +-
.../Xcode5SecPeiCpuExceptionHandlerLib.inf | 2 +-
UefiCpuPkg/Library/MpInitLib/AmdSev.c | 10 +-
UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf | 2 +-
UefiCpuPkg/Library/MpInitLib/DxeMpLib.c | 8 +-
UefiCpuPkg/Library/MpInitLib/MpLib.c | 2 +-
UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf | 2 +-
UefiCpuPkg/Library/MpInitLib/X64/AmdSev.c | 10 +-
.../Library/VmgExitLibNull/VmTdExitNull.c | 38 ------
.../Library/VmgExitLibNull/VmgExitLibNull.uni | 15 --
UefiCpuPkg/UefiCpuPkg.dec | 4 +-
UefiCpuPkg/UefiCpuPkg.dsc | 4 +-
UefiPayloadPkg/UefiPayloadPkg.dsc | 2 +-
50 files changed, 252 insertions(+), 258 deletions(-)
rename OvmfPkg/Library/{VmgExitLib/VmgExitLib.c => CcExitLib/CcExitLib.c} (89%)
rename OvmfPkg/Library/{VmgExitLib/VmgExitLib.inf => CcExitLib/CcExitLib.inf} (66%)
rename OvmfPkg/Library/{VmgExitLib/VmTdExitHandler.h => CcExitLib/CcExitTd.h} (86%)
rename OvmfPkg/Library/{VmgExitLib/VmgExitVcHandler.c => CcExitLib/CcExitVcHandler.c} (90%)
rename OvmfPkg/Library/{VmgExitLib/VmgExitVcHandler.h => CcExitLib/CcExitVcHandler.h} (89%)
rename OvmfPkg/Library/{VmgExitLib/VmTdExitVeHandler.c => CcExitLib/CcExitVeHandler.c} (95%)
rename OvmfPkg/Library/{VmgExitLib/PeiDxeVmgExitVcHandler.c => CcExitLib/PeiDxeCcExitVcHandler.c} (93%)
rename OvmfPkg/Library/{VmgExitLib/SecVmgExitLib.inf => CcExitLib/SecCcExitLib.inf} (79%)
rename OvmfPkg/Library/{VmgExitLib/SecVmgExitVcHandler.c => CcExitLib/SecCcExitVcHandler.c} (93%)
rename OvmfPkg/Library/{VmgExitLib => CcExitLib}/X64/TdVmcallCpuid.nasm (100%)
rename UefiCpuPkg/Include/Library/{VmgExitLib.h => CcExitLib.h} (87%)
rename UefiCpuPkg/Library/{VmgExitLibNull/VmgExitLibNull.c => CcExitLibNull/CcExitLibNull.c} (76%)
rename UefiCpuPkg/Library/{VmgExitLibNull/VmgExitLibNull.inf => CcExitLibNull/CcExitLibNull.inf} (60%)
create mode 100644 UefiCpuPkg/Library/CcExitLibNull/CcExitLibNull.uni
delete mode 100644 UefiCpuPkg/Library/VmgExitLibNull/VmTdExitNull.c
delete mode 100644 UefiCpuPkg/Library/VmgExitLibNull/VmgExitLibNull.uni
--
2.29.2.windows.2
next reply other threads:[~2022-11-11 7:17 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-11 7:17 Min Xu [this message]
2022-11-11 7:17 ` [PATCH V6 1/3] OvmfPkg/UefiCpuPkg/UefiPayloadPkg: Rename VmgExitLib to CcExitLib Min Xu
2022-11-11 7:17 ` [PATCH V6 2/3] OvmfPkg/UefiCpuPkg: Add CcExit prefix to the APIs of CcExitLib Min Xu
2022-11-11 7:17 ` [PATCH V6 3/3] Maintainers: Update the VmgExitLib to CcExitLib Min Xu
2022-11-12 2:49 ` [edk2-stable202211] [PATCH V6 0/3] Rename " Yao, Jiewen
2022-11-14 4:15 ` 回复: [edk2-devel] " gaoliming
[not found] ` <1727585BE67BAA7B.24122@groups.io>
2022-11-14 11:56 ` gaoliming
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221111071710.1596-1-min.m.xu@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox