Changeset 48204 in vbox for trunk/src/VBox
- Timestamp:
- Aug 30, 2013 5:04:08 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r48200 r48204 1737 1737 * VMCB. 1738 1738 * 1739 * @param pVM Pointer to the VM.1740 1739 * @param pVCpu Pointer to the VMCPU. 1740 * @param pVmcb Pointer to the VMCB. 1741 1741 * @param pCtx Pointer to the guest-CPU context. 1742 1742 * 1743 1743 * @remarks No-long-jump zone!!! 1744 1744 */ 1745 static void hmR0VmxLoadSharedState(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx)1745 static void hmR0VmxLoadSharedState(PVMCPU pVCpu, PSVMVMCB pVmcb, PCPUMCTX pCtx) 1746 1746 { 1747 1747 Assert(!RTThreadPreemptIsEnabled(NIL_RTTHREAD)); 1748 1748 Assert(!VMMRZCallRing3IsEnabled(pVCpu)); 1749 PSVMVMCB pVmcb = (PSVMVMCB)pVCpu->hm.s.svm.pvVmcb;1750 1749 1751 1750 if (pVCpu->hm.s.fContextUseFlags & HM_CHANGED_GUEST_CR0) … … 2832 2831 2833 2832 /* Load the state shared between host and guest (FPU, debug). */ 2833 PSVMVMCB pVmcb = (PSVMVMCB)pVCpu->hm.s.svm.pvVmcb; 2834 2834 if (pVCpu->hm.s.fContextUseFlags & HM_CHANGED_HOST_GUEST_SHARED_STATE) 2835 hmR0VmxLoadSharedState(pV M, pVCpu, pCtx);2835 hmR0VmxLoadSharedState(pVCpu, pVmcb, pCtx); 2836 2836 pVCpu->hm.s.fContextUseFlags &= ~HM_CHANGED_HOST_CONTEXT; /* Preemption might set this, nothing to do on AMD-V. */ 2837 2837 AssertMsg(!pVCpu->hm.s.fContextUseFlags, ("fContextUseFlags=%#x\n", pVCpu->hm.s.fContextUseFlags)); 2838 2838 2839 2839 /* If VMCB Clean Bits isn't supported by the CPU, simply mark all state-bits as dirty, indicating (re)load-from-VMCB. */ 2840 PSVMVMCB pVmcb = (PSVMVMCB)pVCpu->hm.s.svm.pvVmcb;2841 2840 if (!(pVM->hm.s.svm.u32Features & AMD_CPUID_SVM_FEATURE_EDX_VMCB_CLEAN)) 2842 2841 pVmcb->ctrl.u64VmcbCleanBits = 0;
Note:
See TracChangeset
for help on using the changeset viewer.