Changeset 81861 in vbox
- Timestamp:
- Nov 15, 2019 3:58:56 AM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 134655
- Location:
- trunk/src/VBox/VMM/VMMR0
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMR0.cpp
r81733 r81861 784 784 static DECLCALLBACK(void) hmR0EnableCpuCallback(RTCPUID idCpu, void *pvUser1, void *pvUser2) 785 785 { 786 PVMCC 786 PVMCC pVM = (PVMCC)pvUser1; /* can be NULL! */ 787 787 PHMR0FIRSTRC pFirstRc = (PHMR0FIRSTRC)pvUser2; 788 788 AssertReturnVoid(g_HmR0.fGlobalInit); -
trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
r81806 r81861 3745 3745 { 3746 3746 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 3747 3748 3747 uint32_t fVal = pVM->hm.s.vmx.Msrs.ProcCtls.n.allowed0; /* Bits set here must be set in the VMCS. */ 3749 3748 uint32_t const fZap = pVM->hm.s.vmx.Msrs.ProcCtls.n.allowed1; /* Bits cleared here must be cleared in the VMCS. */ … … 4663 4662 if (ASMAtomicUoReadU64(&pVCpu->hm.s.fCtxChanged) & HM_CHANGED_VMX_ENTRY_EXIT_CTLS) 4664 4663 { 4665 PVMCC pVM= pVCpu->CTX_SUFF(pVM);4664 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 4666 4665 PVMXVMCSINFO pVmcsInfo = pVmxTransient->pVmcsInfo; 4667 4666 bool const fGstInLongMode = CPUMIsGuestInLongModeEx(&pVCpu->cpum.GstCtx); … … 5330 5329 if (ASMAtomicUoReadU64(&pVCpu->hm.s.fCtxChanged) & HM_CHANGED_GUEST_CR0) 5331 5330 { 5332 PVMCC pVM= pVCpu->CTX_SUFF(pVM);5331 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 5333 5332 PVMXVMCSINFO pVmcsInfo = pVmxTransient->pVmcsInfo; 5334 5333 … … 5910 5909 * unusable bit and doesn't change the guest-context value. 5911 5910 */ 5912 PVMCC pVM= pVCpu->CTX_SUFF(pVM);5911 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 5913 5912 PCCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 5914 5913 hmR0VmxImportGuestState(pVCpu, pVmcsInfo, CPUMCTX_EXTRN_CR0); … … 6139 6138 static int hmR0VmxExportGuestSegRegsXdtr(PVMCPUCC pVCpu, PCVMXTRANSIENT pVmxTransient) 6140 6139 { 6141 int rc= VERR_INTERNAL_ERROR_5;6142 PVMCC pVM= pVCpu->CTX_SUFF(pVM);6140 int rc = VERR_INTERNAL_ERROR_5; 6141 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 6143 6142 PCCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 6144 6143 PVMXVMCSINFO pVmcsInfo = pVmxTransient->pVmcsInfo; … … 6385 6384 AssertPtr(pVmxTransient); 6386 6385 6387 PVMCC pVM= pVCpu->CTX_SUFF(pVM);6386 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 6388 6387 PCCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 6389 6388 … … 6766 6765 bool fParavirtTsc; 6767 6766 uint64_t uTscOffset; 6768 PVMCC 6767 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 6769 6768 PVMXVMCSINFO pVmcsInfo = hmGetVmxActiveVmcsInfo(pVCpu); 6770 6769 … … 9252 9251 } while (0) 9253 9252 9254 PVMCC 9255 PCPUMCTX 9256 uint32_t 9257 uint32_t 9253 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 9254 PCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 9255 uint32_t uError = VMX_IGS_ERROR; 9256 uint32_t u32IntrState = 0; 9258 9257 bool const fUnrestrictedGuest = pVM->hm.s.vmx.fUnrestrictedGuest; 9259 9258 do … … 15237 15236 uint32_t const cbValue = s_aIOSizes[uIOSize]; 15238 15237 uint32_t const cbInstr = pVmxTransient->cbExitInstr; 15239 bool fUpdateRipAlready= false; /* ugly hack, should be temporary. */15240 PVMCC pVM 15238 bool fUpdateRipAlready = false; /* ugly hack, should be temporary. */ 15239 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 15241 15240 if (fIOString) 15242 15241 { … … 15729 15728 * weird case. See @bugref{6043}. 15730 15729 */ 15731 PVMCC 15730 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 15732 15731 PCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 15733 15732 rcStrict = PGMR0Trap0eHandlerNPMisconfig(pVM, pVCpu, PGMMODE_EPT, CPUMCTX2CORE(pCtx), GCPhys, UINT32_MAX); … … 15814 15813 uErrorCode |= X86_TRAP_PF_P; 15815 15814 15816 PVMCC 15815 PVMCC pVM = pVCpu->CTX_SUFF(pVM); 15817 15816 PCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 15818 15817 Log4Func(("at %#RX64 (%#RX64 errcode=%#x) cs:rip=%#04x:%#RX64\n", GCPhys, uExitQual, uErrorCode, pCtx->cs.Sel, pCtx->rip));
Note:
See TracChangeset
for help on using the changeset viewer.