- Timestamp:
- Oct 2, 2018 6:26:37 AM (6 years ago)
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllCImpl.cpp.h
r74566 r74568 5948 5948 IEM_CTX_ASSERT(pVCpu, CPUMCTX_EXTRN_CR0 | CPUMCTX_EXTRN_CR3 | CPUMCTX_EXTRN_CR4 | CPUMCTX_EXTRN_EFER); 5949 5949 5950 #ifdef VBOX_WITH_NESTED_HWVIRT_VMX 5951 if (IEM_VMX_IS_PROCCTLS_SET(pVCpu, VMX_PROC_CTLS_INVLPG_EXIT)) 5952 { 5953 Log(("invlpg: Guest intercept (%RGp) -> VM-exit\n", GCPtrPage)); 5954 iemVmxVmexitInstrInvlpg(pVCpu, GCPtrPage, cbInstr); 5955 } 5956 #endif 5957 5950 5958 if (IEM_SVM_IS_CTRL_INTERCEPT_SET(pVCpu, SVM_CTRL_INTERCEPT_INVLPG)) 5951 5959 { -
trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp.h
r74567 r74568 31 31 * VMX_EXIT_GETSEC 32 32 * VMX_EXIT_INVD 33 * VMX_EXIT_INVLPG34 33 * VMX_EXIT_RDPMC 35 34 * VMX_EXIT_RSM … … 2743 2742 2744 2743 /** 2744 * VMX VM-exit handler for VM-exits due to INVLPG. 2745 * 2746 * @param pVCpu The cross context virtual CPU structure. 2747 * @param GCPtrPage The guest-linear address of the page being invalidated. 2748 * @param cbInstr The instruction length (in bytes). 2749 */ 2750 IEM_STATIC VBOXSTRICTRC iemVmxVmexitInstrInvlpg(PVMCPU pVCpu, RTGCPTR GCPtrPage, uint8_t cbInstr) 2751 { 2752 VMXVEXITINFO ExitInfo; 2753 RT_ZERO(ExitInfo); 2754 ExitInfo.uReason = VMX_EXIT_INVLPG; 2755 ExitInfo.cbInstr = cbInstr; 2756 ExitInfo.u64Qual = GCPtrPage; 2757 Assert(IEM_GET_GUEST_CPU_FEATURES(pVCpu)->fLongMode || !RT_HI_U32(ExitInfo.u64Qual)); 2758 2759 return iemVmxVmexitInstrWithInfo(pVCpu, &ExitInfo); 2760 } 2761 2762 2763 /** 2745 2764 * Checks guest control registers, debug registers and MSRs as part of VM-entry. 2746 2765 *
Note:
See TracChangeset
for help on using the changeset viewer.