Changeset 105168 in vbox
- Timestamp:
- Jul 6, 2024 12:01:23 AM (7 months ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/DBGFR3BugCheck.cpp
r98103 r105168 41 41 #include <iprt/assert.h> 42 42 #include <iprt/ctype.h> 43 #include <iprt/message.h> 43 44 44 45 … … 59 60 int dbgfR3BugCheckInit(PVM pVM) 60 61 { 62 PCFGMNODE const pCfgNode = CFGMR3GetChild(CFGMR3GetRoot(pVM), "DBGF/"); 63 64 /** @cfgm{/DBGF/PowerOffOnBsod, boolean, false} 65 * Enables powering off the VM automatically on a BSOD. 66 */ 67 pVM->dbgf.s.BugCheck.fCfgPowerOffOnBsod; 68 int rc = CFGMR3QueryBoolDef(pCfgNode, "PowerOffOnBsod", &pVM->dbgf.s.BugCheck.fCfgPowerOffOnBsod, false); 69 AssertLogRelRCReturn(rc, rc); 70 61 71 pVM->dbgf.s.BugCheck.idCpu = NIL_VMCPUID; 62 72 pVM->dbgf.s.BugCheck.enmEvent = DBGFEVENT_END; … … 863 873 * Take actions. 864 874 */ 865 /** @todo Take actions on BSOD, like notifying main or stopping the VM... 866 * For testing it makes little sense to continue after a BSOD. */ 875 if (pVM->dbgf.s.BugCheck.fCfgPowerOffOnBsod) 876 { 877 RTMsgError("Powering off - guest BSOD: %s\n", szDetails); 878 PUVM const pUVM = pVM->pUVM; 879 VMR3ReqCallNoWaitU(pUVM, VMCPUID_ANY_QUEUE, (PFNRT)VMR3PowerOff, 1, pUVM); 880 } 867 881 return rc; 868 882 } -
trunk/src/VBox/VMM/include/DBGFInternal.h
r102092 r105168 1162 1162 1163 1163 /** 1164 * Bug check data.1165 * @note Th iswill not be reset on reset.1164 * Bug check configuration and data. 1165 * @note The data will not be reset on reset. 1166 1166 */ 1167 1167 struct 1168 1168 { 1169 /** Whether to power off VM on BSOD. */ 1170 bool fCfgPowerOffOnBsod; 1171 /** Explicit padding. */ 1172 bool afReserved[3]; 1173 1169 1174 /** The ID of the CPU reporting it. */ 1170 1175 VMCPUID idCpu; … … 1174 1179 /** The total reset count at the time (VMGetResetCount). */ 1175 1180 uint32_t uResetNo; 1176 /** Explicit padding. */1177 uint32_t uPadding;1178 1181 /** When it was reported (TMVirtualGet). */ 1179 1182 uint64_t uTimestamp;
Note:
See TracChangeset
for help on using the changeset viewer.