Changeset 70266 in vbox for trunk/src/VBox
- Timestamp:
- Dec 21, 2017 11:43:15 AM (7 years ago)
- svn:sync-xref-src-repo-rev:
- 119861
- Location:
- trunk/src/VBox/VMM/VMMR3
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/CPUM.cpp
r69900 r70266 2261 2261 pHlp->pfnPrintf(pHlp, " GCPhysVmcb = %#RGp\n", pCtx->hwvirt.svm.GCPhysVmcb); 2262 2262 pHlp->pfnPrintf(pHlp, " VmcbCtrl:\n"); 2263 HMR3InfoSvmVmcbCtrl(pHlp, &pCtx->hwvirt.svm.pVmcbR3->ctrl, " " /* pszPrefix */);2264 /** @todo HMR3InfoSvmVmcbStateSave. */2263 HMR3InfoSvmVmcbCtrl(pHlp, &pCtx->hwvirt.svm.pVmcbR3->ctrl, " " /* pszPrefix */); 2264 HMR3InfoSvmVmcbStateSave(pHlp, &pCtx->hwvirt.svm.pVmcbR3->guest, " " /* pszPrefix */); 2265 2265 pHlp->pfnPrintf(pHlp, " HostState:\n"); 2266 2266 pHlp->pfnPrintf(pHlp, " uEferMsr = %#RX64\n", pCtx->hwvirt.svm.HostState.uEferMsr); -
trunk/src/VBox/VMM/VMMR3/HM.cpp
r70264 r70266 3611 3611 3612 3612 /** 3613 * Displays SVM VMCB control s.3613 * Displays SVM VMCB control area. 3614 3614 * 3615 3615 * @param pHlp The info helper functions. … … 3684 3684 } 3685 3685 3686 3687 /** 3688 * Helper for dumping the SVM VMCB selector registers. 3689 * 3690 * @param pHlp The info helper functions. 3691 * @param pSel Pointer to the SVM selector register. 3692 * @param pszName Name of the selector. 3693 * @param pszPrefix Caller specified string prefix. 3694 */ 3695 DECLINLINE(void) hmR3InfoSvmVmcbStateSaveSelReg(PCDBGFINFOHLP pHlp, PCSVMSELREG pSel, const char *pszName, const char *pszPrefix) 3696 { 3697 pHlp->pfnPrintf(pHlp, "%s%s\n", pszPrefix, pszName); 3698 pHlp->pfnPrintf(pHlp, "%s u16Sel = %#RX16\n", pszPrefix, pSel->u16Sel); 3699 pHlp->pfnPrintf(pHlp, "%s u16Attr = %#RX16\n", pszPrefix, pSel->u16Attr); 3700 pHlp->pfnPrintf(pHlp, "%s u32Limit = %#RX32\n", pszPrefix, pSel->u32Limit); 3701 pHlp->pfnPrintf(pHlp, "%s u64Base = %#RX64\n", pszPrefix, pSel->u64Base); 3702 } 3703 3704 3705 /** 3706 * Helper for dumping the SVM VMCB GDTR/IDTR registers. 3707 * 3708 * @param pHlp The info helper functions. 3709 * @param pSel Pointer to the descriptor table register. 3710 * @param pszName Name of the descriptor table register. 3711 * @param pszPrefix Caller specified string prefix. 3712 */ 3713 DECLINLINE(void) hmR3InfoSvmVmcbStateXdtr(PCDBGFINFOHLP pHlp, PCSVMXDTR pXdtr, const char *pszName, const char *pszPrefix) 3714 { 3715 pHlp->pfnPrintf(pHlp, "%s%s\n", pszPrefix, pszName); 3716 pHlp->pfnPrintf(pHlp, "%s u32Limit = %#RX32\n", pszPrefix, pXdtr->u32Limit); 3717 pHlp->pfnPrintf(pHlp, "%s u64Base = %#RX64\n", pszPrefix, pXdtr->u64Base); 3718 } 3719 3720 3721 /** 3722 * Displays SVM VMCB state-save area. 3723 * 3724 * @param pHlp The info helper functions. 3725 * @param pVmcbStateSave Pointer to a SVM VMCB controls area. 3726 * @param pszPrefix Caller specified string prefix. 3727 */ 3728 VMMR3_INT_DECL(void) HMR3InfoSvmVmcbStateSave(PCDBGFINFOHLP pHlp, PCSVMVMCBSTATESAVE pVmcbStateSave, const char *pszPrefix) 3729 { 3730 AssertReturnVoid(pHlp); 3731 AssertReturnVoid(pVmcbStateSave); 3732 3733 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->ES, "ES", pszPrefix); 3734 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->CS, "CS", pszPrefix); 3735 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->SS, "SS", pszPrefix); 3736 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->DS, "DS", pszPrefix); 3737 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->FS, "FS", pszPrefix); 3738 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->GS, "GS", pszPrefix); 3739 hmR3InfoSvmVmcbStateXdtr(pHlp, &pVmcbStateSave->GDTR, "GDTR", pszPrefix); 3740 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->LDTR, "LDTR", pszPrefix); 3741 hmR3InfoSvmVmcbStateXdtr(pHlp, &pVmcbStateSave->IDTR, "IDTR", pszPrefix); 3742 hmR3InfoSvmVmcbStateSaveSelReg(pHlp, &pVmcbStateSave->TR, "TR", pszPrefix); 3743 pHlp->pfnPrintf(pHlp, "%su8CPL = %u\n", pszPrefix, pVmcbStateSave->u8CPL); 3744 pHlp->pfnPrintf(pHlp, "%su64EFER = %#RX64\n", pszPrefix, pVmcbStateSave->u64EFER); 3745 pHlp->pfnPrintf(pHlp, "%su64CR4 = %#RX64\n", pszPrefix, pVmcbStateSave->u64CR4); 3746 pHlp->pfnPrintf(pHlp, "%su64CR3 = %#RX64\n", pszPrefix, pVmcbStateSave->u64CR3); 3747 pHlp->pfnPrintf(pHlp, "%su64CR0 = %#RX64\n", pszPrefix, pVmcbStateSave->u64CR0); 3748 pHlp->pfnPrintf(pHlp, "%su64DR7 = %#RX64\n", pszPrefix, pVmcbStateSave->u64DR7); 3749 pHlp->pfnPrintf(pHlp, "%su64DR6 = %#RX64\n", pszPrefix, pVmcbStateSave->u64DR6); 3750 pHlp->pfnPrintf(pHlp, "%su64RFlags = %#RX64\n", pszPrefix, pVmcbStateSave->u64RFlags); 3751 pHlp->pfnPrintf(pHlp, "%su64RIP = %#RX64\n", pszPrefix, pVmcbStateSave->u64RIP); 3752 pHlp->pfnPrintf(pHlp, "%su64RSP = %#RX64\n", pszPrefix, pVmcbStateSave->u64RSP); 3753 pHlp->pfnPrintf(pHlp, "%su64RAX = %#RX64\n", pszPrefix, pVmcbStateSave->u64RAX); 3754 pHlp->pfnPrintf(pHlp, "%su64STAR = %#RX64\n", pszPrefix, pVmcbStateSave->u64STAR); 3755 pHlp->pfnPrintf(pHlp, "%su64LSTAR = %#RX64\n", pszPrefix, pVmcbStateSave->u64LSTAR); 3756 pHlp->pfnPrintf(pHlp, "%su64CSTAR = %#RX64\n", pszPrefix, pVmcbStateSave->u64CSTAR); 3757 pHlp->pfnPrintf(pHlp, "%su64SFMASK = %#RX64\n", pszPrefix, pVmcbStateSave->u64SFMASK); 3758 pHlp->pfnPrintf(pHlp, "%su64KernelGSBase = %#RX64\n", pszPrefix, pVmcbStateSave->u64KernelGSBase); 3759 pHlp->pfnPrintf(pHlp, "%su64SysEnterCS = %#RX64\n", pszPrefix, pVmcbStateSave->u64SysEnterCS); 3760 pHlp->pfnPrintf(pHlp, "%su64SysEnterEIP = %#RX64\n", pszPrefix, pVmcbStateSave->u64SysEnterEIP); 3761 pHlp->pfnPrintf(pHlp, "%su64SysEnterESP = %#RX64\n", pszPrefix, pVmcbStateSave->u64SysEnterESP); 3762 pHlp->pfnPrintf(pHlp, "%su64CR2 = %#RX64\n", pszPrefix, pVmcbStateSave->u64CR2); 3763 pHlp->pfnPrintf(pHlp, "%su64GPAT = %#RX64\n", pszPrefix, pVmcbStateSave->u64GPAT); 3764 pHlp->pfnPrintf(pHlp, "%su64DBGCTL = %#RX64\n", pszPrefix, pVmcbStateSave->u64DBGCTL); 3765 pHlp->pfnPrintf(pHlp, "%su64BR_FROM = %#RX64\n", pszPrefix, pVmcbStateSave->u64BR_FROM); 3766 pHlp->pfnPrintf(pHlp, "%su64BR_TO = %#RX64\n", pszPrefix, pVmcbStateSave->u64BR_TO); 3767 pHlp->pfnPrintf(pHlp, "%su64LASTEXCPFROM = %#RX64\n", pszPrefix, pVmcbStateSave->u64LASTEXCPFROM); 3768 pHlp->pfnPrintf(pHlp, "%su64LASTEXCPTO = %#RX64\n", pszPrefix, pVmcbStateSave->u64LASTEXCPTO); 3769 } 3770
Note:
See TracChangeset
for help on using the changeset viewer.