Reviewed by: Jiewen Yao <jiewen.yao@intel.com> Hi Mike/Liming I suggest this be in edk2-stable202211. Thank you Yao, Jiewen > -----Original Message----- > From: Xu, Min M <min.m.xu@intel.com> > Sent: Friday, November 11, 2022 3:17 PM > To: devel@edk2.groups.io > Cc: Xu, Min M <min.m.xu@intel.com>; Dong, Eric <eric.dong@intel.com>; > Ni, Ray <ray.ni@intel.com>; Brijesh Singh <brijesh.singh@amd.com>; Aktas, > Erdem <erdemaktas@google.com>; Gerd Hoffmann <kraxel@redhat.com>; > James Bottomley <jejb@linux.ibm.com>; Yao, Jiewen > <jiewen.yao@intel.com>; Tom Lendacky <thomas.lendacky@amd.com>; > Dong, Guo <guo.dong@intel.com>; Rhodes, Sean <sean@starlabs.systems>; > Lu, James <james.lu@intel.com>; Guo, Gua <gua.guo@intel.com>; Kinney, > Michael D <michael.d.kinney@intel.com>; Gao, Liming > <gaoliming@byosoft.com.cn> > Subject: [PATCH V6 0/3] Rename VmgExitLib to CcExitLib > > 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 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#96318): https://edk2.groups.io/g/devel/message/96318 Mute This Topic: https://groups.io/mt/94973804/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Jiewen: This patch set has passed code review before soft feature freeze phase. And, there is no code change recently. So, I agree to merge this patch set for the stable tag. I will help merge it. Thanks Liming > -----邮件原件----- > 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Yao, Jiewen > 发送时间: 2022年11月12日 10:50 > 收件人: Xu, Min M <min.m.xu@intel.com>; devel@edk2.groups.io > 抄送: Dong, Eric <eric.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Brijesh > Singh <brijesh.singh@amd.com>; Aktas, Erdem <erdemaktas@google.com>; > Gerd Hoffmann <kraxel@redhat.com>; James Bottomley > <jejb@linux.ibm.com>; Tom Lendacky <thomas.lendacky@amd.com>; Dong, > Guo <guo.dong@intel.com>; Rhodes, Sean <sean@starlabs.systems>; Lu, > James <james.lu@intel.com>; Guo, Gua <gua.guo@intel.com>; Kinney, > Michael D <michael.d.kinney@intel.com>; Gao, Liming > <gaoliming@byosoft.com.cn> > 主题: [edk2-devel] [edk2-stable202211] [PATCH V6 0/3] Rename VmgExitLib > to CcExitLib > > Reviewed by: Jiewen Yao <jiewen.yao@intel.com> > > Hi Mike/Liming > I suggest this be in edk2-stable202211. > > Thank you > Yao, Jiewen > > > -----Original Message----- > > From: Xu, Min M <min.m.xu@intel.com> > > Sent: Friday, November 11, 2022 3:17 PM > > To: devel@edk2.groups.io > > Cc: Xu, Min M <min.m.xu@intel.com>; Dong, Eric <eric.dong@intel.com>; > > Ni, Ray <ray.ni@intel.com>; Brijesh Singh <brijesh.singh@amd.com>; Aktas, > > Erdem <erdemaktas@google.com>; Gerd Hoffmann <kraxel@redhat.com>; > > James Bottomley <jejb@linux.ibm.com>; Yao, Jiewen > > <jiewen.yao@intel.com>; Tom Lendacky <thomas.lendacky@amd.com>; > > Dong, Guo <guo.dong@intel.com>; Rhodes, Sean <sean@starlabs.systems>; > > Lu, James <james.lu@intel.com>; Guo, Gua <gua.guo@intel.com>; Kinney, > > Michael D <michael.d.kinney@intel.com>; Gao, Liming > > <gaoliming@byosoft.com.cn> > > Subject: [PATCH V6 0/3] Rename VmgExitLib to CcExitLib > > > > 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 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#96340): https://edk2.groups.io/g/devel/message/96340 Mute This Topic: https://groups.io/mt/95012832/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.