VirtualBox

Changeset 72874 in vbox


Ignore:
Timestamp:
Jul 4, 2018 1:42:55 PM (7 years ago)
Author:
vboxsync
Message:

VMM/HMVMXR0: Call EMR0HistoryUpdatePC when importing guest-CPU state from the VMCS on VM-exits rather than on the export side on VM-entry.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp

    r72872 r72874  
    35973597        AssertRCReturn(rc, rc);
    35983598
    3599         /* Update the exit history entry with the correct CS.BASE + RIP or just RIP. */
    3600         if (ASMAtomicUoReadU64(&pVCpu->hm.s.fCtxChanged) & HM_CHANGED_GUEST_CS)
    3601             EMR0HistoryUpdatePC(pVCpu, pMixedCtx->cs.u64Base + pMixedCtx->rip, true);
    3602         else
    3603             EMR0HistoryUpdatePC(pVCpu, pMixedCtx->rip, false);
    3604 
    36053599        ASMAtomicUoAndU64(&pVCpu->hm.s.fCtxChanged, ~HM_CHANGED_GUEST_RIP);
    36063600        Log4Func(("RIP=%#RX64\n", pMixedCtx->rip));
     
    61686162        {
    61696163            pCtx->rip = u64Val;
     6164            EMR0HistoryUpdatePC(pVCpu, pCtx->rip, false);
    61706165            pCtx->fExtrn &= ~CPUMCTX_EXTRN_RIP;
    61716166        }
     
    63356330                if (fWhat & CPUMCTX_EXTRN_CS)
    63366331                {
    6337                     rc = HMVMX_IMPORT_SREG(CS, &pCtx->cs);
     6332                    rc  = HMVMX_IMPORT_SREG(CS, &pCtx->cs);
     6333                    rc |= hmR0VmxImportGuestRip(pVCpu);
    63386334                    VMXLOCAL_BREAK_RC(rc);
    63396335                    if (pVCpu->hm.s.vmx.RealMode.fRealOnV86Active)
    63406336                        pCtx->cs.Attr.u = pVCpu->hm.s.vmx.RealMode.AttrCS.u;
     6337                    EMR0HistoryUpdatePC(pVCpu, pCtx->cs.u64Base + pCtx->rip, true);
    63416338                }
    63426339                if (fWhat & CPUMCTX_EXTRN_SS)
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette