summaryrefslogtreecommitdiff
path: root/src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp
diff options
context:
space:
mode:
authorvboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f>2018-07-04 15:11:47 +0000
committervboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f>2018-07-04 15:11:47 +0000
commitdfa1159deb540ebfe6e457741a28b9e5a884948f (patch)
treeaebbc2bde502c82178672bae42cc5744f6138ea2 /src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp
parent395c122d04ab94db5a1c453193eb4d78755375cc (diff)
downloadVirtualBox-svn-dfa1159deb540ebfe6e457741a28b9e5a884948f.tar.gz
VMMGuruMeditation: Try get externalized guest state.
git-svn-id: https://www.virtualbox.org/svn/vbox/trunk@72880 cfe28804-0f27-0410-a406-dd0f0b0b656f
Diffstat (limited to 'src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp')
-rw-r--r--src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp b/src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp
index 800ca6f0cd8..a84e9fb363b 100644
--- a/src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp
+++ b/src/VBox/VMM/VMMR3/VMMGuruMeditation.cpp
@@ -310,6 +310,7 @@ VMMR3DECL(void) VMMR3FatalDump(PVM pVM, PVMCPU pVCpu, int rcErr)
* Continue according to context.
*/
bool fDoneHyper = false;
+ bool fDoneImport = false;
switch (rcErr)
{
/*
@@ -703,6 +704,9 @@ VMMR3DECL(void) VMMR3FatalDump(PVM pVM, PVMCPU pVCpu, int rcErr)
case VERR_PATM_IPE_TRAP_IN_PATCH_CODE:
case VERR_EM_GUEST_CPU_HANG:
{
+ CPUMImportGuestStateOnDemand(pVCpu, CPUMCTX_EXTRN_ABSOLUTELY_ALL);
+ fDoneImport = true;
+
DBGFR3Info(pVM->pUVM, "cpumguest", NULL, pHlp);
DBGFR3Info(pVM->pUVM, "cpumguestinstr", NULL, pHlp);
DBGFR3Info(pVM->pUVM, "cpumguesthwvirt", NULL, pHlp);
@@ -721,6 +725,8 @@ VMMR3DECL(void) VMMR3FatalDump(PVM pVM, PVMCPU pVCpu, int rcErr)
/*
* Generic info dumper loop.
*/
+ if (!fDoneImport)
+ CPUMImportGuestStateOnDemand(pVCpu, CPUMCTX_EXTRN_ABSOLUTELY_ALL);
static struct
{
const char *pszInfo;