Changeset 46752 in vbox
- Timestamp:
- Jun 24, 2013 12:23:15 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r46748 r46752 1125 1125 1126 1126 pVmcb->ctrl.u64VmcbCleanBits &= ~HMSVM_VMCB_CLEAN_CRX_EFER; 1127 pVCpu->hm.s.fContextUseFlags &= HM_CHANGED_GUEST_CR3;1127 pVCpu->hm.s.fContextUseFlags &= ~HM_CHANGED_GUEST_CR3; 1128 1128 } 1129 1129 … … 1544 1544 NOREF(pVCpu); 1545 1545 /* Nothing to do here. AMD-V does this for us automatically during the world-switch. */ 1546 pVCpu->hm.s.fContextUseFlags &= ~HM_CHANGED_HOST_CONTEXT; 1546 1547 return VINF_SUCCESS; 1547 1548 } … … 2754 2755 2755 2756 /* Handle the #VMEXIT. */ 2756 AssertMsg(SvmTransient.u64ExitCode != (uint64_t)SVM_EXIT_INVALID, ("%#x\n", SvmTransient.u64ExitCode));2757 2757 HMSVM_EXITCODE_STAM_COUNTER_INC(SvmTransient.u64ExitCode); 2758 2758 rc = hmR0SvmHandleExit(pVCpu, pCtx, &SvmTransient); … … 2786 2786 DECLINLINE(int) hmR0SvmHandleExit(PVMCPU pVCpu, PCPUMCTX pCtx, PSVMTRANSIENT pSvmTransient) 2787 2787 { 2788 Assert(pSvmTransient->u64ExitCode > 0);2788 Assert(pSvmTransient->u64ExitCode != (uint64_t)SVM_EXIT_INVALID); 2789 2789 Assert(pSvmTransient->u64ExitCode <= SVM_EXIT_MAX); 2790 2790 … … 2885 2885 case SVM_EXIT_VMMCALL: 2886 2886 return hmR0SvmExitVmmCall(pVCpu, pCtx, pSvmTransient); 2887 2888 case SVM_EXIT_SHUTDOWN: 2889 return hmR0SvmExitShutdown(pVCpu, pCtx, pSvmTransient); 2887 2890 2888 2891 case SVM_EXIT_INVLPGA: … … 3608 3611 VBOXSTRICTRC rc2 = EMInterpretInstruction(pVCpu, CPUMCTX2CORE(pCtx), 0 /* pvFault */); 3609 3612 int rc = VBOXSTRICTRC_VAL(rc2); 3610 Assert(rc == VERR_EM_INTERPRETER || rc == VINF_PGM_CHANGE_MODE || rc == VINF_PGM_SYNC_CR3); 3613 AssertMsg(rc == VINF_SUCCESS || rc == VERR_EM_INTERPRETER || rc == VINF_PGM_CHANGE_MODE || rc == VINF_PGM_SYNC_CR3, 3614 ("hmR0SvmExitReadCRx: EMInterpretInstruction failed rc=%Rrc\n", rc)); 3611 3615 Assert((pSvmTransient->u64ExitCode - SVM_EXIT_READ_CR0) <= 15); 3612 3616 STAM_COUNTER_INC(&pVCpu->hm.s.StatExitCRxRead[pSvmTransient->u64ExitCode - SVM_EXIT_READ_CR0]);
Note:
See TracChangeset
for help on using the changeset viewer.