- Timestamp:
- Aug 21, 2012 7:58:41 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/HWACCM.cpp
r42807 r42893 2670 2670 for (VMCPUID i = 0; i < pVM->cCpus; i++) 2671 2671 { 2672 switch (iStatusCode)2672 switch (iStatusCode) 2673 2673 { 2674 case VERR_VMX_INVALID_VMCS_FIELD: 2675 break; 2676 2677 case VERR_VMX_INVALID_VMCS_PTR: 2678 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Current pointer %RGp vs %RGp\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.u64VMCSPhys, pVM->aCpus[i].hwaccm.s.vmx.HCPhysVMCS)); 2679 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Current VMCS version %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulVMCSRevision)); 2680 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Entered Cpu %d\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.idEnteredCpu)); 2681 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Current Cpu %d\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.idCurrentCpu)); 2682 break; 2683 2684 case VERR_VMX_UNABLE_TO_START_VM: 2685 LogRel(("VERR_VMX_UNABLE_TO_START_VM: CPU%d instruction error %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulInstrError)); 2686 LogRel(("VERR_VMX_UNABLE_TO_START_VM: CPU%d exit reason %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulExitReason)); 2687 #if 0 /* @todo dump the current control fields to the release log */ 2688 if (pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulInstrError == VMX_ERROR_VMENTRY_INVALID_CONTROL_FIELDS) 2689 { 2690 2691 } 2674 case VERR_VMX_INVALID_VMCS_FIELD: 2675 break; 2676 2677 case VERR_VMX_INVALID_VMCS_PTR: 2678 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Current pointer %RGp vs %RGp\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.u64VMCSPhys, pVM->aCpus[i].hwaccm.s.vmx.HCPhysVMCS)); 2679 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Current VMCS version %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulVMCSRevision)); 2680 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Entered Cpu %d\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.idEnteredCpu)); 2681 LogRel(("VERR_VMX_INVALID_VMCS_PTR: CPU%d Current Cpu %d\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.idCurrentCpu)); 2682 break; 2683 2684 case VERR_VMX_UNABLE_TO_START_VM: 2685 LogRel(("VERR_VMX_UNABLE_TO_START_VM: CPU%d instruction error %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulInstrError)); 2686 LogRel(("VERR_VMX_UNABLE_TO_START_VM: CPU%d exit reason %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulExitReason)); 2687 if (pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulInstrError == VMX_ERROR_VMENTRY_INVALID_CONTROL_FIELDS) 2688 { 2689 LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d MSRBitmapPhys %RHp\n", i, pVM->aCpus[i].hwaccm.s.vmx.pMSRBitmapPhys)); 2690 #ifdef VBOX_WITH_AUTO_MSR_LOAD_RESTORE 2691 LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d GuestMSRPhys %RHp\n", i, pVM->aCpus[i].hwaccm.s.vmx.pGuestMSRPhys)); 2692 LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d HostMsrPhys %RHp\n", i, pVM->aCpus[i].hwaccm.s.vmx.pHostMSRPhys)); 2693 LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d HostMsrPhys %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.cCachedMSRs)); 2692 2694 #endif 2693 break; 2694 2695 case VERR_VMX_UNABLE_TO_RESUME_VM: 2696 LogRel(("VERR_VMX_UNABLE_TO_RESUME_VM: CPU%d instruction error %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulInstrError)); 2697 LogRel(("VERR_VMX_UNABLE_TO_RESUME_VM: CPU%d exit reason %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulExitReason)); 2698 break; 2699 2700 case VERR_VMX_INVALID_VMXON_PTR: 2701 break; 2695 } 2696 /** @todo Log VM-entry event injection control fields 2697 * VMX_VMCS_CTRL_ENTRY_IRQ_INFO, VMX_VMCS_CTRL_ENTRY_EXCEPTION_ERRCODE 2698 * and VMX_VMCS_CTRL_ENTRY_INSTR_LENGTH from the VMCS. */ 2699 break; 2700 2701 case VERR_VMX_UNABLE_TO_RESUME_VM: 2702 LogRel(("VERR_VMX_UNABLE_TO_RESUME_VM: CPU%d instruction error %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulInstrError)); 2703 LogRel(("VERR_VMX_UNABLE_TO_RESUME_VM: CPU%d exit reason %x\n", i, pVM->aCpus[i].hwaccm.s.vmx.lasterror.ulExitReason)); 2704 break; 2705 2706 case VERR_VMX_INVALID_VMXON_PTR: 2707 break; 2702 2708 } 2709 } 2710 2711 if (iStatusCode == VERR_VMX_UNABLE_TO_START_VM) 2712 { 2713 LogRel(("VERR_VMX_UNABLE_TO_START_VM: VM-entry allowed %x\n", pVM->hwaccm.s.vmx.msr.vmx_entry.n.allowed1)); 2714 LogRel(("VERR_VMX_UNABLE_TO_START_VM: VM-entry disallowed %x\n", pVM->hwaccm.s.vmx.msr.vmx_entry.n.disallowed0)); 2703 2715 } 2704 2716 }
Note:
See TracChangeset
for help on using the changeset viewer.