Changeset 78960 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Jun 4, 2019 10:35:45 AM (6 years ago)
- svn:sync-xref-src-repo-rev:
- 131083
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
r78952 r78960 14064 14064 switch (uAccessType) 14065 14065 { 14066 case VMX_EXIT_QUAL_CRX_ACCESS_WRITE: /* MOV to CRx */ 14066 /* 14067 * MOV to CRx. 14068 */ 14069 case VMX_EXIT_QUAL_CRX_ACCESS_WRITE: 14067 14070 { 14068 14071 rc = hmR0VmxImportGuestState(pVCpu, pVmcsInfo, IEM_CPUMCTX_EXTRN_MUST_MASK); … … 14118 14121 } 14119 14122 14120 case VMX_EXIT_QUAL_CRX_ACCESS_READ: /* MOV from CRx */ 14123 /* 14124 * MOV from CRx. 14125 */ 14126 case VMX_EXIT_QUAL_CRX_ACCESS_READ: 14121 14127 { 14122 14128 uint8_t const iGReg = VMX_EXIT_QUAL_CRX_GENREG(uExitQual); … … 14142 14148 } 14143 14149 14150 /* 14151 * CLTS (Clear Task-Switch Flag in CR0). 14152 */ 14144 14153 case VMX_EXIT_QUAL_CRX_ACCESS_CLTS: 14145 14154 { 14146 /*14147 * CLTS (Clear Task-Switch Flag in CR0).14148 */14149 14155 rcStrict = hmR0VmxExitClts(pVCpu, pVmcsInfo, pVmxTransient->cbInstr); 14150 14156 break; 14151 14157 } 14152 14158 14159 /* 14160 * LMSW (Load Machine-Status Word into CR0). 14161 * LMSW cannot clear CR0.PE, so no fRealOnV86Active kludge needed here. 14162 */ 14153 14163 case VMX_EXIT_QUAL_CRX_ACCESS_LMSW: 14154 14164 { 14155 /*14156 * LMSW (Load Machine-Status Word into CR0).14157 * LMSW cannot clear CR0.PE, so no fRealOnV86Active kludge needed here.14158 */14159 14165 RTGCPTR GCPtrEffDst; 14160 14166 uint8_t const cbInstr = pVmxTransient->cbInstr; … … 15795 15801 AssertRCReturn(rc, rc); 15796 15802 15797 Assert(VMX_EXIT_INT_INFO_IS_VALID(pVmxTransient->uExitIntInfo)); 15798 uint32_t const uExtIntType = VMX_EXIT_INT_INFO_TYPE(pVmxTransient->uExitIntInfo); 15803 uint64_t const uExitIntInfo = pVmxTransient->uExitIntInfo; 15804 Assert(VMX_EXIT_INT_INFO_IS_VALID(uExitIntInfo)); 15805 uint32_t const uExtIntType = VMX_EXIT_INT_INFO_TYPE(uExitIntInfo); 15799 15806 15800 15807 switch (uExtIntType) … … 15828 15835 15829 15836 /* 15830 * This should only happen when "acknowledge external interrupts on VM-exit" is set. 15831 * We don't set it when executing guests or nested-guests. 15837 * External interrupts: 15838 * This should only happen when "acknowledge external interrupts on VM-exit" control is set. 15839 * However, we don't set it when executing guests or nested-guests. For nested-guests it is 15840 * emulated while injecting interrupts into the guest. 15841 * 15842 * Software interrupts: 15843 * VM-exits cannot be caused by software interrupts. 15832 15844 */ 15833 15845 case VMX_EXIT_INT_INFO_TYPE_EXT_INT: 15834 RT_FALL_THRU();15846 case VMX_EXIT_INT_INFO_TYPE_SW_INT: 15835 15847 default: 15836 15848 {
Note:
See TracChangeset
for help on using the changeset viewer.