Changeset 61534 in vbox for trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
- Timestamp:
- Jun 7, 2016 12:00:19 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r61428 r61534 5156 5156 HMSVM_VALIDATE_EXIT_HANDLER_PARAMS(); 5157 5157 5158 HMSVM_CHECK_EXIT_DUE_TO_EVENT_DELIVERY(); 5159 5158 5160 #ifndef HMSVM_ALWAYS_TRAP_TASK_SWITCH 5159 5161 Assert(!pVCpu->CTX_SUFF(pVM)->hm.s.fNestedPaging); 5160 5162 #endif 5161 5163 5162 /* Check if this task-switch occurred while deliver yan event through the guest IDT. */5164 /* Check if this task-switch occurred while delivering an event through the guest IDT. */ 5163 5165 PSVMVMCB pVmcb = (PSVMVMCB)pVCpu->hm.s.svm.pvVmcb; 5164 5166 if ( !(pVmcb->ctrl.u64ExitInfo2 & (SVM_EXIT2_TASK_SWITCH_IRET | SVM_EXIT2_TASK_SWITCH_JMP)) 5165 && pVCpu->hm.s.Event.fPending) /** @todo fPending cannot be 'true', see hmR0SvmInjectPendingEvent(). See @bugref{7362}.*/5167 && pVCpu->hm.s.Event.fPending) /** Can happen with exceptions/NMI. See @bugref{8411}.*/ 5166 5168 { 5167 5169 /* 5168 * AMD-V does not provide us with the original exception but we have it in u64IntInfo since we5169 * injected the event during VM-entry.5170 * AMD-V provides us with the exception which caused the TS; we collect 5171 * the information in the call to hmR0SvmCheckExitDueToEventDelivery. 5170 5172 */ 5171 5173 Log4(("hmR0SvmExitTaskSwitch: TS occurred during event delivery.\n"));
Note:
See TracChangeset
for help on using the changeset viewer.