OvmfPkg/UefiCpuPkg: Add CcExit prefix to the APIs of CcExitLib

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4123

APIs which are defined in CcExitLib.h are added with the CcExit prefix.
This is to make the APIs' name more meaningful.

This change impacts OvmfPkg/UefiCpuPkg.

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: 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 15:50:11 +08:00
committed by mergify[bot]
parent a89f558d3c
commit 765ba5bf05
15 changed files with 117 additions and 117 deletions

View File

@@ -103,7 +103,7 @@ VmgExitErrorCheck (
**/
UINT64
EFIAPI
VmgExit (
CcExitVmgExit (
IN OUT GHCB *Ghcb,
IN UINT64 ExitCode,
IN UINT64 ExitInfo1,
@@ -114,9 +114,9 @@ VmgExit (
Ghcb->SaveArea.SwExitInfo1 = ExitInfo1;
Ghcb->SaveArea.SwExitInfo2 = ExitInfo2;
VmgSetOffsetValid (Ghcb, GhcbSwExitCode);
VmgSetOffsetValid (Ghcb, GhcbSwExitInfo1);
VmgSetOffsetValid (Ghcb, GhcbSwExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwExitCode);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwExitInfo1);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwExitInfo2);
//
// Guest memory is used for the guest-hypervisor communication, so fence
@@ -138,12 +138,12 @@ VmgExit (
@param[in, out] Ghcb A pointer to the GHCB
@param[in, out] InterruptState A pointer to hold the current interrupt
state, used for restoring in VmgDone ()
state, used for restoring in CcExitVmgDone ()
**/
VOID
EFIAPI
VmgInit (
CcExitVmgInit (
IN OUT GHCB *Ghcb,
IN OUT BOOLEAN *InterruptState
)
@@ -173,7 +173,7 @@ VmgInit (
**/
VOID
EFIAPI
VmgDone (
CcExitVmgDone (
IN OUT GHCB *Ghcb,
IN BOOLEAN InterruptState
)
@@ -195,7 +195,7 @@ VmgDone (
**/
VOID
EFIAPI
VmgSetOffsetValid (
CcExitVmgSetOffsetValid (
IN OUT GHCB *Ghcb,
IN GHCB_REGISTER Offset
)
@@ -224,7 +224,7 @@ VmgSetOffsetValid (
**/
BOOLEAN
EFIAPI
VmgIsOffsetValid (
CcExitVmgIsOffsetValid (
IN GHCB *Ghcb,
IN GHCB_REGISTER Offset
)

View File

@@ -611,7 +611,7 @@ UnsupportedExit (
{
UINT64 Status;
Status = VmgExit (Ghcb, SVM_EXIT_UNSUPPORTED, Regs->ExceptionData, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_UNSUPPORTED, Regs->ExceptionData, 0);
if (Status == 0) {
GHCB_EVENT_INJECTION Event;
@@ -755,8 +755,8 @@ MmioExit (
CopyMem (Ghcb->SharedBuffer, &InstructionData->Ext.RegData, Bytes);
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_WRITE, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_WRITE, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -807,8 +807,8 @@ MmioExit (
CopyMem (Ghcb->SharedBuffer, &Regs->Rax, Bytes);
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_WRITE, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_WRITE, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -843,8 +843,8 @@ MmioExit (
CopyMem (Ghcb->SharedBuffer, InstructionData->Immediate, Bytes);
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_WRITE, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_WRITE, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -882,8 +882,8 @@ MmioExit (
ExitInfo2 = Bytes;
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -942,8 +942,8 @@ MmioExit (
ExitInfo2 = Bytes;
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -979,8 +979,8 @@ MmioExit (
ExitInfo2 = Bytes;
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -1011,8 +1011,8 @@ MmioExit (
ExitInfo2 = Bytes;
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MMIO_READ, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -1068,11 +1068,11 @@ MwaitExit (
DecodeModRm (Regs, InstructionData);
Ghcb->SaveArea.Rax = Regs->Rax;
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Ghcb->SaveArea.Rcx = Regs->Rcx;
VmgSetOffsetValid (Ghcb, GhcbRcx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRcx);
return VmgExit (Ghcb, SVM_EXIT_MWAIT, 0, 0);
return CcExitVmgExit (Ghcb, SVM_EXIT_MWAIT, 0, 0);
}
/**
@@ -1100,13 +1100,13 @@ MonitorExit (
DecodeModRm (Regs, InstructionData);
Ghcb->SaveArea.Rax = Regs->Rax; // Identity mapped, so VA = PA
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Ghcb->SaveArea.Rcx = Regs->Rcx;
VmgSetOffsetValid (Ghcb, GhcbRcx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRcx);
Ghcb->SaveArea.Rdx = Regs->Rdx;
VmgSetOffsetValid (Ghcb, GhcbRdx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRdx);
return VmgExit (Ghcb, SVM_EXIT_MONITOR, 0, 0);
return CcExitVmgExit (Ghcb, SVM_EXIT_MONITOR, 0, 0);
}
/**
@@ -1131,7 +1131,7 @@ WbinvdExit (
IN SEV_ES_INSTRUCTION_DATA *InstructionData
)
{
return VmgExit (Ghcb, SVM_EXIT_WBINVD, 0, 0);
return CcExitVmgExit (Ghcb, SVM_EXIT_WBINVD, 0, 0);
}
/**
@@ -1160,14 +1160,14 @@ RdtscpExit (
DecodeModRm (Regs, InstructionData);
Status = VmgExit (Ghcb, SVM_EXIT_RDTSCP, 0, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_RDTSCP, 0, 0);
if (Status != 0) {
return Status;
}
if (!VmgIsOffsetValid (Ghcb, GhcbRax) ||
!VmgIsOffsetValid (Ghcb, GhcbRcx) ||
!VmgIsOffsetValid (Ghcb, GhcbRdx))
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRcx) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRdx))
{
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
@@ -1206,16 +1206,16 @@ VmmCallExit (
DecodeModRm (Regs, InstructionData);
Ghcb->SaveArea.Rax = Regs->Rax;
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Ghcb->SaveArea.Cpl = (UINT8)(Regs->Cs & 0x3);
VmgSetOffsetValid (Ghcb, GhcbCpl);
CcExitVmgSetOffsetValid (Ghcb, GhcbCpl);
Status = VmgExit (Ghcb, SVM_EXIT_VMMCALL, 0, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_VMMCALL, 0, 0);
if (Status != 0) {
return Status;
}
if (!VmgIsOffsetValid (Ghcb, GhcbRax)) {
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax)) {
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
@@ -1254,28 +1254,28 @@ MsrExit (
case 0x30: // WRMSR
ExitInfo1 = 1;
Ghcb->SaveArea.Rax = Regs->Rax;
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Ghcb->SaveArea.Rdx = Regs->Rdx;
VmgSetOffsetValid (Ghcb, GhcbRdx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRdx);
//
// fall through
//
case 0x32: // RDMSR
Ghcb->SaveArea.Rcx = Regs->Rcx;
VmgSetOffsetValid (Ghcb, GhcbRcx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRcx);
break;
default:
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
Status = VmgExit (Ghcb, SVM_EXIT_MSR, ExitInfo1, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_MSR, ExitInfo1, 0);
if (Status != 0) {
return Status;
}
if (ExitInfo1 == 0) {
if (!VmgIsOffsetValid (Ghcb, GhcbRax) ||
!VmgIsOffsetValid (Ghcb, GhcbRdx))
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRdx))
{
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
@@ -1471,8 +1471,8 @@ IoioExit (
}
Ghcb->SaveArea.SwScratch = (UINT64)Ghcb->SharedBuffer;
VmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = VmgExit (Ghcb, SVM_EXIT_IOIO_PROT, ExitInfo1, ExitInfo2);
CcExitVmgSetOffsetValid (Ghcb, GhcbSwScratch);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_IOIO_PROT, ExitInfo1, ExitInfo2);
if (Status != 0) {
return Status;
}
@@ -1495,15 +1495,15 @@ IoioExit (
CopyMem (&Ghcb->SaveArea.Rax, &Regs->Rax, IOIO_DATA_BYTES (ExitInfo1));
}
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Status = VmgExit (Ghcb, SVM_EXIT_IOIO_PROT, ExitInfo1, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_IOIO_PROT, ExitInfo1, 0);
if (Status != 0) {
return Status;
}
if ((ExitInfo1 & IOIO_TYPE_IN) != 0) {
if (!VmgIsOffsetValid (Ghcb, GhcbRax)) {
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax)) {
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
@@ -1536,7 +1536,7 @@ InvdExit (
IN SEV_ES_INSTRUCTION_DATA *InstructionData
)
{
return VmgExit (Ghcb, SVM_EXIT_INVD, 0, 0);
return CcExitVmgExit (Ghcb, SVM_EXIT_INVD, 0, 0);
}
/**
@@ -1581,23 +1581,23 @@ GetCpuidHyp (
{
*UnsupportedExit = FALSE;
Ghcb->SaveArea.Rax = EaxIn;
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Ghcb->SaveArea.Rcx = EcxIn;
VmgSetOffsetValid (Ghcb, GhcbRcx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRcx);
if (EaxIn == CPUID_EXTENDED_STATE) {
Ghcb->SaveArea.XCr0 = XCr0;
VmgSetOffsetValid (Ghcb, GhcbXCr0);
CcExitVmgSetOffsetValid (Ghcb, GhcbXCr0);
}
*Status = VmgExit (Ghcb, SVM_EXIT_CPUID, 0, 0);
*Status = CcExitVmgExit (Ghcb, SVM_EXIT_CPUID, 0, 0);
if (*Status != 0) {
return FALSE;
}
if (!VmgIsOffsetValid (Ghcb, GhcbRax) ||
!VmgIsOffsetValid (Ghcb, GhcbRbx) ||
!VmgIsOffsetValid (Ghcb, GhcbRcx) ||
!VmgIsOffsetValid (Ghcb, GhcbRdx))
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRbx) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRcx) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRdx))
{
*UnsupportedExit = TRUE;
return FALSE;
@@ -2049,15 +2049,15 @@ RdpmcExit (
UINT64 Status;
Ghcb->SaveArea.Rcx = Regs->Rcx;
VmgSetOffsetValid (Ghcb, GhcbRcx);
CcExitVmgSetOffsetValid (Ghcb, GhcbRcx);
Status = VmgExit (Ghcb, SVM_EXIT_RDPMC, 0, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_RDPMC, 0, 0);
if (Status != 0) {
return Status;
}
if (!VmgIsOffsetValid (Ghcb, GhcbRax) ||
!VmgIsOffsetValid (Ghcb, GhcbRdx))
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRdx))
{
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
@@ -2092,13 +2092,13 @@ RdtscExit (
{
UINT64 Status;
Status = VmgExit (Ghcb, SVM_EXIT_RDTSC, 0, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_RDTSC, 0, 0);
if (Status != 0) {
return Status;
}
if (!VmgIsOffsetValid (Ghcb, GhcbRax) ||
!VmgIsOffsetValid (Ghcb, GhcbRdx))
if (!CcExitVmgIsOffsetValid (Ghcb, GhcbRax) ||
!CcExitVmgIsOffsetValid (Ghcb, GhcbRdx))
{
return UnsupportedExit (Ghcb, Regs, InstructionData);
}
@@ -2150,9 +2150,9 @@ Dr7WriteExit (
// Using a value of 0 for ExitInfo1 means RAX holds the value
//
Ghcb->SaveArea.Rax = *Register;
VmgSetOffsetValid (Ghcb, GhcbRax);
CcExitVmgSetOffsetValid (Ghcb, GhcbRax);
Status = VmgExit (Ghcb, SVM_EXIT_DR7_WRITE, 0, 0);
Status = CcExitVmgExit (Ghcb, SVM_EXIT_DR7_WRITE, 0, 0);
if (Status != 0) {
return Status;
}
@@ -2243,7 +2243,7 @@ InternalVmgExitHandleVc (
Regs = SystemContext.SystemContextX64;
VmgInit (Ghcb, &InterruptState);
CcExitVmgInit (Ghcb, &InterruptState);
ExitCode = Regs->ExceptionData;
switch (ExitCode) {
@@ -2327,7 +2327,7 @@ InternalVmgExitHandleVc (
VcRet = EFI_PROTOCOL_ERROR;
}
VmgDone (Ghcb, InterruptState);
CcExitVmgDone (Ghcb, InterruptState);
return VcRet;
}

View File

@@ -464,7 +464,7 @@ MmioExit (
**/
EFI_STATUS
EFIAPI
VmTdExitHandleVe (
CcExitHandleVe (
IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
IN OUT EFI_SYSTEM_CONTEXT SystemContext
)

View File

@@ -33,7 +33,7 @@
**/
EFI_STATUS
EFIAPI
VmgExitHandleVc (
CcExitHandleVc (
IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
IN OUT EFI_SYSTEM_CONTEXT SystemContext
)

View File

@@ -33,7 +33,7 @@
**/
EFI_STATUS
EFIAPI
VmgExitHandleVc (
CcExitHandleVc (
IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
IN OUT EFI_SYSTEM_CONTEXT SystemContext
)