OvmfPkg/UefiCpuPkg/UefiPayloadPkg: 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 renames VmgExitLib to CcExitLib (Cc means Confidential
Computing). This is a simple renaming and there is no logic changes.
After renaming all the VmgExitLib related codes are updated with
CcExitLib. These changes are in OvmfPkg/UefiCpuPkg/UefiPayloadPkg.

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: 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>
Reviewed-by: James Lu <james.lu@intel.com>
Reviewed-by: Gua Guo <gua.guo@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Signed-off-by: Min Xu <min.m.xu@intel.com>
This commit is contained in:
Min M Xu
2022-11-07 14:30:26 +08:00
committed by mergify[bot]
parent b9e702c3c9
commit a89f558d3c
49 changed files with 135 additions and 141 deletions

View File

@@ -1,14 +1,15 @@
/** @file
VMGEXIT Base Support Library.
CcExit Base Support Library.
Copyright (C) 2020, Advanced Micro Devices, Inc. All rights reserved.<BR>
Copyright (c) 2020 - 2022, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#include <Base.h>
#include <Uefi.h>
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
/**
Perform VMGEXIT.
@@ -163,3 +164,31 @@ VmgExitHandleVc (
return EFI_UNSUPPORTED;
}
/**
Handle a #VE exception.
Performs the necessary processing to handle a #VE exception.
@param[in, out] ExceptionType Pointer to an EFI_EXCEPTION_TYPE to be set
as value to use on error.
@param[in, out] SystemContext Pointer to EFI_SYSTEM_CONTEXT
@retval EFI_SUCCESS Exception handled
@retval EFI_UNSUPPORTED #VE not supported, (new) exception value to
propagate provided
@retval EFI_PROTOCOL_ERROR #VE handling failed, (new) exception value to
propagate provided
**/
EFI_STATUS
EFIAPI
VmTdExitHandleVe (
IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
IN OUT EFI_SYSTEM_CONTEXT SystemContext
)
{
*ExceptionType = VE_EXCEPTION;
return EFI_UNSUPPORTED;
}

View File

@@ -1,23 +1,23 @@
## @file
# VMGEXIT Support Library.
# CcExit Base Support Library.
#
# Copyright (C) 2020, Advanced Micro Devices, Inc. All rights reserved.<BR>
# Copyright (c) 2020 - 2022, Intel Corporation. All rights reserved.<BR>
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = VmgExitLibNull
MODULE_UNI_FILE = VmgExitLibNull.uni
BASE_NAME = CcExitLibNull
MODULE_UNI_FILE = CcExitLibNull.uni
FILE_GUID = 3cd7368f-ef9b-4a9b-9571-2ed93813677e
MODULE_TYPE = BASE
VERSION_STRING = 1.0
LIBRARY_CLASS = VmgExitLib
LIBRARY_CLASS = CcExitLib
[Sources.common]
VmgExitLibNull.c
VmTdExitNull.c
CcExitLibNull.c
[Packages]
MdePkg/MdePkg.dec

View File

@@ -0,0 +1,14 @@
// /** @file
// CcExitLib instance.
//
// Copyright (C) 2020, Advanced Micro Devices, Inc. All rights reserved.<BR>
// Copyright (c) 2020 - 2022, Intel Corporation. All rights reserved.<BR>
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/
#string STR_MODULE_ABSTRACT #language en-US "CcExitLib NULL instance"
#string STR_MODULE_DESCRIPTION #language en-US "CcExitLib NULL instance."

View File

@@ -60,4 +60,4 @@
PeCoffGetEntryPointLib
MemoryAllocationLib
DebugLib
VmgExitLib
CcExitLib

View File

@@ -52,7 +52,7 @@
HobLib
MemoryAllocationLib
SynchronizationLib
VmgExitLib
CcExitLib
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard # CONSUMES

View File

@@ -7,7 +7,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#include <Library/DebugLib.h>
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
#include "CpuExceptionCommon.h"
/**

View File

@@ -7,7 +7,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#include <PiPei.h>
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
#include "CpuExceptionCommon.h"
CONST UINTN mDoFarReturnFlag = 0;

View File

@@ -48,7 +48,7 @@
PrintLib
LocalApicLib
PeCoffGetEntryPointLib
VmgExitLib
CcExitLib
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard

View File

@@ -51,7 +51,7 @@
LocalApicLib
PeCoffGetEntryPointLib
DebugLib
VmgExitLib
CcExitLib
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard

View File

@@ -53,7 +53,7 @@
PrintLib
LocalApicLib
PeCoffGetEntryPointLib
VmgExitLib
CcExitLib
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard

View File

@@ -8,7 +8,7 @@
**/
#include "MpLib.h"
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
/**
Get Protected mode code segment with 16-bit default addressing

View File

@@ -54,7 +54,7 @@
DebugAgentLib
SynchronizationLib
PcdLib
VmgExitLib
CcExitLib
MicrocodeLib
[Protocols]

View File

@@ -12,7 +12,7 @@
#include <Library/UefiBootServicesTableLib.h>
#include <Library/DebugAgentLib.h>
#include <Library/DxeServicesTableLib.h>
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
#include <Register/Amd/Fam17Msr.h>
#include <Register/Amd/Ghcb.h>

View File

@@ -9,7 +9,7 @@
**/
#include "MpLib.h"
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
#include <Register/Amd/Fam17Msr.h>
#include <Register/Amd/Ghcb.h>

View File

@@ -53,7 +53,7 @@
SynchronizationLib
PeiServicesLib
PcdLib
VmgExitLib
CcExitLib
MicrocodeLib
[Pcd]

View File

@@ -9,7 +9,7 @@
**/
#include "MpLib.h"
#include <Library/VmgExitLib.h>
#include <Library/CcExitLib.h>
#include <Register/Amd/Fam17Msr.h>
#include <Register/Amd/Ghcb.h>

View File

@@ -1,38 +0,0 @@
/** @file
Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#include <Base.h>
#include <Uefi.h>
#include <Library/VmgExitLib.h>
/**
Handle a #VE exception.
Performs the necessary processing to handle a #VE exception.
@param[in, out] ExceptionType Pointer to an EFI_EXCEPTION_TYPE to be set
as value to use on error.
@param[in, out] SystemContext Pointer to EFI_SYSTEM_CONTEXT
@retval EFI_SUCCESS Exception handled
@retval EFI_UNSUPPORTED #VE not supported, (new) exception value to
propagate provided
@retval EFI_PROTOCOL_ERROR #VE handling failed, (new) exception value to
propagate provided
**/
EFI_STATUS
EFIAPI
VmTdExitHandleVe (
IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
IN OUT EFI_SYSTEM_CONTEXT SystemContext
)
{
*ExceptionType = VE_EXCEPTION;
return EFI_UNSUPPORTED;
}

View File

@@ -1,15 +0,0 @@
// /** @file
// VMGEXIT support library instance.
//
// VMGEXIT support library instance.
//
// Copyright (C) 2020, Advanced Micro Devices, Inc. All rights reserved.<BR>
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/
#string STR_MODULE_ABSTRACT #language en-US "VMGEXIT support NULL library instance"
#string STR_MODULE_DESCRIPTION #language en-US "VMGEXIT support NULL library instance."