- Timestamp:
- Jul 11, 2018 2:30:57 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r73042 r73043 6128 6128 HMSVM_VALIDATE_EXIT_HANDLER_PARAMS(pVCpu, pSvmTransient); 6129 6129 6130 hmR0SvmAdvanceRipHwAssist(pVCpu, 2); 6131 int rc = VINF_SUCCESS; 6132 HMSVM_CHECK_SINGLE_STEP(pVCpu, rc); 6133 return rc; 6130 VBOXSTRICTRC rcStrict; 6131 bool const fSupportsNextRipSave = hmR0SvmSupportsNextRipSave(pVCpu); 6132 if (fSupportsNextRipSave) 6133 { 6134 HMSVM_CPUMCTX_IMPORT_STATE(pVCpu, IEM_CPUMCTX_EXTRN_EXEC_DECODED_NO_MEM_MASK); 6135 uint8_t const cbInstr = hmR0SvmGetInstrLength(pVCpu); 6136 rcStrict = IEMExecDecodedWbinvd(pVCpu, cbInstr); 6137 } 6138 else 6139 { 6140 HMSVM_CPUMCTX_IMPORT_STATE(pVCpu, IEM_CPUMCTX_EXTRN_MUST_MASK); 6141 rcStrict = IEMExecOne(pVCpu); 6142 } 6143 6144 if (rcStrict == VINF_IEM_RAISED_XCPT) 6145 { 6146 rcStrict = VINF_SUCCESS; 6147 ASMAtomicUoOrU64(&pVCpu->hm.s.fCtxChanged, HM_CHANGED_RAISED_XCPT_MASK); 6148 } 6149 HMSVM_CHECK_SINGLE_STEP(pVCpu, rcStrict); 6150 return VBOXSTRICTRC_TODO(rcStrict); 6134 6151 } 6135 6152
Note:
See TracChangeset
for help on using the changeset viewer.