Changeset 79401 in vbox
- Timestamp:
- Jun 28, 2019 6:22:05 AM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
r79386 r79401 9713 9713 { 9714 9714 PCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 9715 PVMXVMCSINFO pVmcsInfo = pVmxTransient->pVmcsInfo; 9715 PVMXVMCSINFO pVmcsInfo = pVmxTransient->pVmcsInfo; 9716 bool const fIsNestedGuest = pVmxTransient->fIsNestedGuest; 9716 9717 9717 9718 /* Get the current interruptibility-state of the guest and then figure out what can be injected. */ … … 9743 9744 { 9744 9745 #ifdef VBOX_WITH_NESTED_HWVIRT_VMX 9745 if ( pVmxTransient->fIsNestedGuest9746 if ( fIsNestedGuest 9746 9747 && CPUMIsGuestVmxPinCtlsSet(pVCpu, pCtx, VMX_PIN_CTLS_NMI_EXIT)) 9747 9748 return IEMExecVmxVmexitXcptNmi(pVCpu); … … 9751 9752 Log4Func(("Pending NMI\n")); 9752 9753 } 9753 else 9754 else if (!fIsNestedGuest) 9754 9755 hmR0VmxSetNmiWindowExitVmcs(pVCpu, pVmcsInfo); 9755 9756 } … … 9771 9772 { 9772 9773 #ifdef VBOX_WITH_NESTED_HWVIRT_VMX 9773 if ( pVmxTransient->fIsNestedGuest9774 if ( fIsNestedGuest 9774 9775 && CPUMIsGuestVmxPinCtlsSet(pVCpu, pCtx, VMX_PIN_CTLS_EXT_INT_EXIT)) 9775 9776 { … … 9784 9785 { 9785 9786 #ifdef VBOX_WITH_NESTED_HWVIRT_VMX 9786 if ( pVmxTransient->fIsNestedGuest9787 if ( fIsNestedGuest 9787 9788 && CPUMIsGuestVmxPinCtlsSet(pVCpu, pCtx, VMX_PIN_CTLS_EXT_INT_EXIT) 9788 9789 && CPUMIsGuestVmxExitCtlsSet(pVCpu, pCtx, VMX_EXIT_CTLS_ACK_EXT_INT)) … … 9798 9799 else if (rc == VERR_APIC_INTR_MASKED_BY_TPR) 9799 9800 { 9800 if ( ! pVmxTransient->fIsNestedGuest9801 if ( !fIsNestedGuest 9801 9802 && (pVmcsInfo->u32ProcCtls & VMX_PROC_CTLS_USE_TPR_SHADOW)) 9802 9803 hmR0VmxApicSetTprThreshold(pVCpu, pVmcsInfo, u8Interrupt >> 4); … … 9812 9813 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchGuestIrq); 9813 9814 } 9814 else 9815 else if (!fIsNestedGuest) 9815 9816 hmR0VmxSetIntWindowExitVmcs(pVCpu, pVmcsInfo); 9816 9817 }
Note:
See TracChangeset
for help on using the changeset viewer.