Changeset 74422 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Sep 22, 2018 3:06:57 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp.h
r74421 r74422 4272 4272 * exception bitmap) do block subsequent NMIs. 4273 4273 * 4274 * - MTF need s to be preserved as it's for a single instruction boundary which4275 * follows the return from VMLAUNCH/VMRESUME instruction.4274 * - MTF need not be preserved as it's used only in VMX non-root mode and 4275 * is supplied on VM-entry through the VM-execution controls. 4276 4276 * 4277 4277 * The remaining FFs (e.g. timers) can stay in place so that we will be able to 4278 4278 * generate interrupts that should cause #VMEXITs for the nested-guest. 4279 4279 */ 4280 uint32_t const f NstGstDiscardMask = VMCPU_FF_MTF;4281 pVCpu->cpum.GstCtx.hwvirt.fLocalForcedActions = pVCpu->fLocalForcedActions & f NstGstDiscardMask;4282 VMCPU_FF_CLEAR(pVCpu, f NstGstDiscardMask);4280 uint32_t const fDiscardMask = VMCPU_FF_INHIBIT_INTERRUPTS | VMCPU_FF_MTF | VMCPU_FF_BLOCK_NMIS; 4281 pVCpu->cpum.GstCtx.hwvirt.fLocalForcedActions = pVCpu->fLocalForcedActions & fDiscardMask; 4282 VMCPU_FF_CLEAR(pVCpu, fDiscardMask); 4283 4283 } 4284 4284 … … 4566 4566 } 4567 4567 4568 /* We've now entered nested-guest execution. */ 4569 pVCpu->cpum.GstCtx.hwvirt.vmx.fInVmxNonRootMode = true; 4570 4568 4571 /* Event injection. */ 4569 4572 iemVmxVmentryInjectEvent(pVCpu, pszInstr); … … 5321 5324 5322 5325 /** @todo NSTVMX: rest of VM-exit. */ 5326 5327 /* We're no longer in nested-guest execution mode. */ 5328 pVCpu->cpum.GstCtx.hwvirt.vmx.fInVmxNonRootMode = false; 5329 5323 5330 return VINF_SUCCESS; 5324 5331 }
Note:
See TracChangeset
for help on using the changeset viewer.