summaryrefslogtreecommitdiff
path: root/src/VBox
diff options
context:
space:
mode:
authorvboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f>2019-05-24 04:57:21 +0000
committervboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f>2019-05-24 04:57:21 +0000
commitdf98c22ec465a30ef1213c2c8d405b2c977e5ca3 (patch)
tree42ced094b190fea21ad84a803be4e116304e5331 /src/VBox
parentcdcbbf4e519f470b7f56bd3cb29e6a9f1865a666 (diff)
downloadVirtualBox-svn-df98c22ec465a30ef1213c2c8d405b2c977e5ca3.tar.gz
VMM: Nested VMX: bugref:9180 Renamed HM_CHANGED_[VMX|SVM]_GUEST_XCPT_INTERCEPTS.
git-svn-id: https://www.virtualbox.org/svn/vbox/trunk@78707 cfe28804-0f27-0410-a406-dd0f0b0b656f
Diffstat (limited to 'src/VBox')
-rw-r--r--src/VBox/VMM/VMMAll/HMAll.cpp4
-rw-r--r--src/VBox/VMM/VMMR0/HMSVMR0.cpp8
-rw-r--r--src/VBox/VMM/VMMR0/HMVMXR0.cpp4
-rw-r--r--src/VBox/VMM/VMMR3/HM.cpp10
-rw-r--r--src/VBox/VMM/include/HMInternal.h6
5 files changed, 15 insertions, 17 deletions
diff --git a/src/VBox/VMM/VMMAll/HMAll.cpp b/src/VBox/VMM/VMMAll/HMAll.cpp
index b9619ed5139..38b9f671d21 100644
--- a/src/VBox/VMM/VMMAll/HMAll.cpp
+++ b/src/VBox/VMM/VMMAll/HMAll.cpp
@@ -788,9 +788,9 @@ VMM_INT_DECL(void) HMHCChangedPagingMode(PVM pVM, PVMCPU pVCpu, PGMMODE enmShado
CPUM_ASSERT_NOT_EXTRN(pVCpu, CPUMCTX_EXTRN_CR0 | CPUMCTX_EXTRN_CR3 | CPUMCTX_EXTRN_CR4 | CPUMCTX_EXTRN_EFER); /* No recursion! */
uint64_t fChanged = HM_CHANGED_GUEST_CR0 | HM_CHANGED_GUEST_CR3 | HM_CHANGED_GUEST_CR4 | HM_CHANGED_GUEST_EFER_MSR;
if (pVM->hm.s.svm.fSupported)
- fChanged |= HM_CHANGED_SVM_GUEST_XCPT_INTERCEPTS;
+ fChanged |= HM_CHANGED_SVM_XCPT_INTERCEPTS;
else
- fChanged |= HM_CHANGED_VMX_GUEST_XCPT_INTERCEPTS | HM_CHANGED_VMX_ENTRY_EXIT_CTLS;
+ fChanged |= HM_CHANGED_VMX_XCPT_INTERCEPTS | HM_CHANGED_VMX_ENTRY_EXIT_CTLS;
ASMAtomicUoOrU64(&pVCpu->hm.s.fCtxChanged, fChanged);
}
# endif
diff --git a/src/VBox/VMM/VMMR0/HMSVMR0.cpp b/src/VBox/VMM/VMMR0/HMSVMR0.cpp
index 55bb5ce5eb9..7dea1f0bf3c 100644
--- a/src/VBox/VMM/VMMR0/HMSVMR0.cpp
+++ b/src/VBox/VMM/VMMR0/HMSVMR0.cpp
@@ -2175,7 +2175,7 @@ static void hmR0SvmExportGuestXcptIntercepts(PVMCPU pVCpu, PSVMVMCB pVmcb)
Assert(!RTThreadPreemptIsEnabled(NIL_RTTHREAD));
/* If we modify intercepts from here, please check & adjust hmR0SvmMergeVmcbCtrlsNested() if required. */
- if (pVCpu->hm.s.fCtxChanged & HM_CHANGED_SVM_GUEST_XCPT_INTERCEPTS)
+ if (pVCpu->hm.s.fCtxChanged & HM_CHANGED_SVM_XCPT_INTERCEPTS)
{
/* Trap #UD for GIM provider (e.g. for hypercalls). */
if (pVCpu->hm.s.fGIMTrapXcptUD)
@@ -2190,7 +2190,7 @@ static void hmR0SvmExportGuestXcptIntercepts(PVMCPU pVCpu, PSVMVMCB pVmcb)
hmR0SvmClearXcptIntercept(pVCpu, pVmcb, X86_XCPT_BP);
/* The remaining intercepts are handled elsewhere, e.g. in hmR0SvmExportGuestCR0(). */
- pVCpu->hm.s.fCtxChanged &= ~HM_CHANGED_SVM_GUEST_XCPT_INTERCEPTS;
+ pVCpu->hm.s.fCtxChanged &= ~HM_CHANGED_SVM_XCPT_INTERCEPTS;
}
}
@@ -2486,7 +2486,7 @@ static int hmR0SvmExportGuestState(PVMCPU pVCpu)
| HM_CHANGED_GUEST_TSC_AUX
| HM_CHANGED_GUEST_OTHER_MSRS
| HM_CHANGED_GUEST_HWVIRT
- | (HM_CHANGED_KEEPER_STATE_MASK & ~HM_CHANGED_SVM_GUEST_XCPT_INTERCEPTS)));
+ | (HM_CHANGED_KEEPER_STATE_MASK & ~HM_CHANGED_SVM_XCPT_INTERCEPTS)));
#ifdef VBOX_STRICT
/*
@@ -2714,7 +2714,7 @@ static int hmR0SvmExportGuestStateNested(PVMCPU pVCpu)
| HM_CHANGED_GUEST_XCRx
| HM_CHANGED_GUEST_TSC_AUX
| HM_CHANGED_GUEST_OTHER_MSRS
- | HM_CHANGED_SVM_GUEST_XCPT_INTERCEPTS
+ | HM_CHANGED_SVM_XCPT_INTERCEPTS
| (HM_CHANGED_KEEPER_STATE_MASK & ~HM_CHANGED_SVM_MASK)));
#ifdef VBOX_STRICT
diff --git a/src/VBox/VMM/VMMR0/HMVMXR0.cpp b/src/VBox/VMM/VMMR0/HMVMXR0.cpp
index e1e6e4dc21d..e2c2b2791a6 100644
--- a/src/VBox/VMM/VMMR0/HMVMXR0.cpp
+++ b/src/VBox/VMM/VMMR0/HMVMXR0.cpp
@@ -4560,7 +4560,7 @@ static uint32_t hmR0VmxGetGuestIntrState(PVMCPU pVCpu, PCVMXVMCSINFO pVmcsInfo)
*/
static int hmR0VmxExportGuestXcptIntercepts(PVMCPU pVCpu, PVMXTRANSIENT pVmxTransient)
{
- if (ASMAtomicUoReadU64(&pVCpu->hm.s.fCtxChanged) & HM_CHANGED_VMX_GUEST_XCPT_INTERCEPTS)
+ if (ASMAtomicUoReadU64(&pVCpu->hm.s.fCtxChanged) & HM_CHANGED_VMX_XCPT_INTERCEPTS)
{
/* When executing a nested-guest, we do not need to trap GIM hypercalls by intercepting #UD. */
if ( !pVmxTransient->fIsNestedGuest
@@ -4570,7 +4570,7 @@ static int hmR0VmxExportGuestXcptIntercepts(PVMCPU pVCpu, PVMXTRANSIENT pVmxTran
hmR0VmxRemoveXcptIntercept(pVCpu, pVmxTransient, X86_XCPT_UD);
/* Other exception intercepts are handled elsewhere, e.g. while exporting guest CR0. */
- ASMAtomicUoAndU64(&pVCpu->hm.s.fCtxChanged, ~HM_CHANGED_VMX_GUEST_XCPT_INTERCEPTS);
+ ASMAtomicUoAndU64(&pVCpu->hm.s.fCtxChanged, ~HM_CHANGED_VMX_XCPT_INTERCEPTS);
}
return VINF_SUCCESS;
}
diff --git a/src/VBox/VMM/VMMR3/HM.cpp b/src/VBox/VMM/VMMR3/HM.cpp
index 1ebeb3ce9ad..4b4f54f753e 100644
--- a/src/VBox/VMM/VMMR3/HM.cpp
+++ b/src/VBox/VMM/VMMR3/HM.cpp
@@ -644,11 +644,11 @@ static int hmR3InitFinalizeR3(PVM pVM)
}
#ifdef VBOX_WITH_STATISTICS
- STAM_REG(pVM, &pVM->hm.s.StatTprPatchSuccess, STAMTYPE_COUNTER, "/HM/TPR/Patch/Success", STAMUNIT_OCCURENCES, "Number of times an instruction was successfully patched.");
- STAM_REG(pVM, &pVM->hm.s.StatTprPatchFailure, STAMTYPE_COUNTER, "/HM/TPR/Patch/Failed", STAMUNIT_OCCURENCES, "Number of unsuccessful patch attempts.");
- STAM_REG(pVM, &pVM->hm.s.StatTprReplaceSuccessCr8, STAMTYPE_COUNTER, "/HM/TPR/Replace/SuccessCR8",STAMUNIT_OCCURENCES, "Number of instruction replacements by MOV CR8.");
- STAM_REG(pVM, &pVM->hm.s.StatTprReplaceSuccessVmc, STAMTYPE_COUNTER, "/HM/TPR/Replace/SuccessVMC",STAMUNIT_OCCURENCES, "Number of instruction replacements by VMMCALL.");
- STAM_REG(pVM, &pVM->hm.s.StatTprReplaceFailure, STAMTYPE_COUNTER, "/HM/TPR/Replace/Failed", STAMUNIT_OCCURENCES, "Number of unsuccessful replace attempts.");
+ STAM_REG(pVM, &pVM->hm.s.StatTprPatchSuccess, STAMTYPE_COUNTER, "/HM/TPR/Patch/Success", STAMUNIT_OCCURENCES, "Number of times an instruction was successfully patched.");
+ STAM_REG(pVM, &pVM->hm.s.StatTprPatchFailure, STAMTYPE_COUNTER, "/HM/TPR/Patch/Failed", STAMUNIT_OCCURENCES, "Number of unsuccessful patch attempts.");
+ STAM_REG(pVM, &pVM->hm.s.StatTprReplaceSuccessCr8, STAMTYPE_COUNTER, "/HM/TPR/Replace/SuccessCR8", STAMUNIT_OCCURENCES, "Number of instruction replacements by MOV CR8.");
+ STAM_REG(pVM, &pVM->hm.s.StatTprReplaceSuccessVmc, STAMTYPE_COUNTER, "/HM/TPR/Replace/SuccessVMC", STAMUNIT_OCCURENCES, "Number of instruction replacements by VMMCALL.");
+ STAM_REG(pVM, &pVM->hm.s.StatTprReplaceFailure, STAMTYPE_COUNTER, "/HM/TPR/Replace/Failed", STAMUNIT_OCCURENCES, "Number of unsuccessful replace attempts.");
#endif
/*
diff --git a/src/VBox/VMM/include/HMInternal.h b/src/VBox/VMM/include/HMInternal.h
index 34fc6047b24..589b76656ae 100644
--- a/src/VBox/VMM/include/HMInternal.h
+++ b/src/VBox/VMM/include/HMInternal.h
@@ -141,8 +141,7 @@ RT_C_DECLS_BEGIN
#define HM_CHANGED_KEEPER_STATE_MASK UINT64_C(0xffff000000000000)
-/** @todo r=ramshankar: Remove "GUEST" from XCPT_INTERCEPTS. */
-#define HM_CHANGED_VMX_GUEST_XCPT_INTERCEPTS UINT64_C(0x0001000000000000)
+#define HM_CHANGED_VMX_XCPT_INTERCEPTS UINT64_C(0x0001000000000000)
#define HM_CHANGED_VMX_GUEST_AUTO_MSRS UINT64_C(0x0002000000000000)
#define HM_CHANGED_VMX_GUEST_LAZY_MSRS UINT64_C(0x0004000000000000)
#define HM_CHANGED_VMX_ENTRY_EXIT_CTLS UINT64_C(0x0008000000000000)
@@ -150,8 +149,7 @@ RT_C_DECLS_BEGIN
#define HM_CHANGED_VMX_HOST_GUEST_SHARED_STATE ( HM_CHANGED_GUEST_DR_MASK \
| HM_CHANGED_VMX_GUEST_LAZY_MSRS)
-/** @todo r=ramshankar: Remove "GUEST" from XCPT_INTERCEPTS. */
-#define HM_CHANGED_SVM_GUEST_XCPT_INTERCEPTS UINT64_C(0x0001000000000000)
+#define HM_CHANGED_SVM_XCPT_INTERCEPTS UINT64_C(0x0001000000000000)
#define HM_CHANGED_SVM_MASK UINT64_C(0x0001000000000000)
#define HM_CHANGED_SVM_HOST_GUEST_SHARED_STATE HM_CHANGED_GUEST_DR_MASK