Changeset 97020 in vbox
- Timestamp:
- Oct 6, 2022 3:27:21 AM (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp
r97019 r97020 9935 9935 9936 9936 /* 9937 * WARNING: HACK AHEAD!9938 * The below is a the old behavior which composes an incomplete APIC-access VM-exit.9939 * This will result in the inner hypervisor emulating the access since it lacks info9940 * for a linear read/write accesses. Unfortunately, this is required till the9941 * virtual VMX APIC-access page mapping using PGM_WITH_NESTED_APIC_ACCESS_PAGE is9942 * fixed properly.9943 */9944 if (HmExitAux.Vmx.uReason == VMX_EXIT_EPT_MISCONFIG)9945 {9946 LogFlowFunc(("Raising APIC-access VM-exit as phys access from #PF handler at offset %#x\n", offAccess));9947 VMXVEXITINFO const ExitInfo = VMXVEXITINFO_INIT_WITH_QUALIFIER(VMX_EXIT_APIC_ACCESS,9948 RT_BF_MAKE(VMX_BF_EXIT_QUAL_APIC_ACCESS_OFFSET,9949 offAccess)9950 | RT_BF_MAKE(VMX_BF_EXIT_QUAL_APIC_ACCESS_TYPE,9951 VMXAPICACCESS_PHYSICAL_INSTR));9952 VMXVEXITEVENTINFO const ExitEventInfo = VMXVEXITEVENTINFO_INIT_ONLY_IDT(HmExitAux.Vmx.uIdtVectoringInfo,9953 HmExitAux.Vmx.uIdtVectoringErrCode);9954 VBOXSTRICTRC const rcStrict = iemVmxVmexitApicAccessWithInfo(pVCpu, &ExitInfo, &ExitEventInfo);9955 return iemExecStatusCodeFiddling(pVCpu, rcStrict);9956 }9957 9958 /*9959 9937 * Verify the VM-exit reason must be an EPT violation. 9960 9938 * Other accesses should go through the other handler (iemVmxApicAccessPageHandler).
Note:
See TracChangeset
for help on using the changeset viewer.