Changeset 64086 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Sep 28, 2016 3:42:09 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/APICAll.cpp
r63843 r64086 1231 1231 * @param pVCpu The cross context virtual CPU structure. 1232 1232 * @param uEoi The EOI value. 1233 * @param rcBusy The busy return code when the write cannot 1234 * be completed successfully in this context. 1233 1235 * @param fForceX2ApicBehaviour Pretend the APIC is in x2APIC mode during 1234 1236 * this write. 1235 1237 */ 1236 static VBOXSTRICTRC apicSetEoi(PVMCPU pVCpu, uint32_t uEoi, bool fForceX2ApicBehaviour)1238 static VBOXSTRICTRC apicSetEoi(PVMCPU pVCpu, uint32_t uEoi, int rcBusy, bool fForceX2ApicBehaviour) 1237 1239 { 1238 1240 VMCPU_ASSERT_EMT(pVCpu); … … 1266 1268 { /* likely */ } 1267 1269 else 1268 return fX2ApicMode ? VINF_CPUM_R3_MSR_WRITE : VINF_IOM_R3_MMIO_WRITE;1270 return rcBusy; 1269 1271 1270 1272 /* … … 1779 1781 case XAPIC_OFF_EOI: 1780 1782 { 1781 rcStrict = apicSetEoi(pVCpu, uValue, false /* fForceX2ApicBehaviour */);1783 rcStrict = apicSetEoi(pVCpu, uValue, VINF_IOM_R3_MMIO_WRITE, false /* fForceX2ApicBehaviour */); 1782 1784 break; 1783 1785 } … … 2069 2071 case MSR_IA32_X2APIC_EOI: 2070 2072 { 2071 rcStrict = apicSetEoi(pVCpu, u32Value, false /* fForceX2ApicBehaviour */);2073 rcStrict = apicSetEoi(pVCpu, u32Value, VINF_CPUM_R3_MSR_WRITE, false /* fForceX2ApicBehaviour */); 2072 2074 break; 2073 2075 } … … 3107 3109 Assert(pVCpu); 3108 3110 VMCPU_ASSERT_EMT_OR_NOT_RUNNING(pVCpu); 3109 return apicSetEoi(pVCpu, uEoi, true /* fForceX2ApicBehaviour */);3110 } 3111 3111 return apicSetEoi(pVCpu, uEoi, VINF_CPUM_R3_MSR_WRITE, true /* fForceX2ApicBehaviour */); 3112 } 3113
Note:
See TracChangeset
for help on using the changeset viewer.