儲存庫 vbox 的更動 46089
- 時間撮記:
- 2013-5-15 上午09:56:41 (12 年 以前)
- 檔案:
-
- 修改 1 筆資料
圖例:
- 未更動
- 新增
- 刪除
-
trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
r46079 r46089 3849 3849 3850 3850 #ifdef VBOX_STRICT 3851 Log(("uExitReason %# x (VmxTransient %#x)\n", pVCpu->hm.s.vmx.lasterror.u32ExitReason,3852 3853 Log(("Exit Qualification %# x\n", pVmxTransient->uExitQualification));3854 Log(("InstrError %# x\n", pVCpu->hm.s.vmx.lasterror.u32InstrError));3851 Log(("uExitReason %#RX32 (VmxTransient %#RX16)\n", pVCpu->hm.s.vmx.lasterror.u32ExitReason, 3852 pVmxTransient->uExitReason)); 3853 Log(("Exit Qualification %#RX64\n", pVmxTransient->uExitQualification)); 3854 Log(("InstrError %#RX32\n", pVCpu->hm.s.vmx.lasterror.u32InstrError)); 3855 3855 if (pVCpu->hm.s.vmx.lasterror.u32InstrError <= HMVMX_INSTR_ERROR_MAX) 3856 3856 Log(("InstrError Desc. \"%s\"\n", g_apszVmxInstrErrors[pVCpu->hm.s.vmx.lasterror.u32InstrError])); … … 4815 4815 if (!(pVCpu->hm.s.vmx.fUpdatedGuestState & HMVMX_UPDATED_GUEST_RIP)) 4816 4816 { 4817 uint64_t u Val = 0;4818 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_RIP, &u Val);4817 uint64_t u64Val = 0; 4818 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_RIP, &u64Val); 4819 4819 AssertRCReturn(rc, rc); 4820 4820 4821 pMixedCtx->rip = u Val;4821 pMixedCtx->rip = u64Val; 4822 4822 pVCpu->hm.s.vmx.fUpdatedGuestState |= HMVMX_UPDATED_GUEST_RIP; 4823 4823 } … … 4842 4842 if (!(pVCpu->hm.s.vmx.fUpdatedGuestState & HMVMX_UPDATED_GUEST_RSP)) 4843 4843 { 4844 uint64_t u Val = 0;4845 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_RSP, &u Val);4844 uint64_t u64Val = 0; 4845 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_RSP, &u64Val); 4846 4846 AssertRCReturn(rc, rc); 4847 4847 4848 pMixedCtx->rsp = u Val;4848 pMixedCtx->rsp = u64Val; 4849 4849 pVCpu->hm.s.vmx.fUpdatedGuestState |= HMVMX_UPDATED_GUEST_RSP; 4850 4850 } … … 4977 4977 } 4978 4978 4979 uint64_t u GCVal = 0;4979 uint64_t u64Val = 0; 4980 4980 if (!(pVCpu->hm.s.vmx.fUpdatedGuestState & HMVMX_UPDATED_GUEST_SYSENTER_EIP_MSR)) 4981 4981 { 4982 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_SYSENTER_EIP, &u GCVal); AssertRCReturn(rc, rc);4983 pMixedCtx->SysEnter.eip = u GCVal;4982 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_SYSENTER_EIP, &u64Val); AssertRCReturn(rc, rc); 4983 pMixedCtx->SysEnter.eip = u64Val; 4984 4984 pVCpu->hm.s.vmx.fUpdatedGuestState |= HMVMX_UPDATED_GUEST_SYSENTER_EIP_MSR; 4985 4985 } 4986 4986 if (!(pVCpu->hm.s.vmx.fUpdatedGuestState & HMVMX_UPDATED_GUEST_SYSENTER_ESP_MSR)) 4987 4987 { 4988 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_SYSENTER_ESP, &u GCVal); AssertRCReturn(rc, rc);4989 pMixedCtx->SysEnter.esp = u GCVal;4988 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_SYSENTER_ESP, &u64Val); AssertRCReturn(rc, rc); 4989 pMixedCtx->SysEnter.esp = u64Val; 4990 4990 pVCpu->hm.s.vmx.fUpdatedGuestState |= HMVMX_UPDATED_GUEST_SYSENTER_ESP_MSR; 4991 4991 } … … 5011 5011 if (!(pVCpu->hm.s.vmx.fUpdatedGuestState & HMVMX_UPDATED_GUEST_FS_BASE_MSR)) 5012 5012 { 5013 uint64_t u Val = 0;5014 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_FS_BASE, &u Val); AssertRCReturn(rc, rc);5015 pMixedCtx->fs.u64Base = u Val;5013 uint64_t u64Val = 0; 5014 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_FS_BASE, &u64Val); AssertRCReturn(rc, rc); 5015 pMixedCtx->fs.u64Base = u64Val; 5016 5016 pVCpu->hm.s.vmx.fUpdatedGuestState |= HMVMX_UPDATED_GUEST_FS_BASE_MSR; 5017 5017 } … … 5037 5037 if (!(pVCpu->hm.s.vmx.fUpdatedGuestState & HMVMX_UPDATED_GUEST_GS_BASE_MSR)) 5038 5038 { 5039 uint64_t u Val = 0;5040 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_GS_BASE, &u Val); AssertRCReturn(rc, rc);5041 pMixedCtx->gs.u64Base = u Val;5039 uint64_t u64Val = 0; 5040 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_GS_BASE, &u64Val); AssertRCReturn(rc, rc); 5041 pMixedCtx->gs.u64Base = u64Val; 5042 5042 pVCpu->hm.s.vmx.fUpdatedGuestState |= HMVMX_UPDATED_GUEST_GS_BASE_MSR; 5043 5043 } … … 5125 5125 && CPUMIsGuestPagingEnabledEx(pMixedCtx))) 5126 5126 { 5127 uint64_t u Val = 0;5128 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_CR3, &u Val);5129 if (pMixedCtx->cr3 != u Val)5127 uint64_t u64Val = 0; 5128 rc = VMXReadVmcsGstN(VMX_VMCS_GUEST_CR3, &u64Val); 5129 if (pMixedCtx->cr3 != u64Val) 5130 5130 { 5131 CPUMSetGuestCR3(pVCpu, u Val);5131 CPUMSetGuestCR3(pVCpu, u64Val); 5132 5132 if (VMMRZCallRing3IsEnabled(pVCpu)) 5133 5133 { 5134 PGMUpdateCR3(pVCpu, u Val);5134 PGMUpdateCR3(pVCpu, u64Val); 5135 5135 Assert(!VMCPU_FF_IS_PENDING(pVCpu, VMCPU_FF_HM_UPDATE_CR3)); 5136 5136 }
注意:
瀏覽 TracChangeset
來幫助您使用更動檢視器