VirtualBox

Changeset 72620 in vbox


Ignore:
Timestamp:
Jun 20, 2018 9:53:34 AM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123120
Message:

HMVMXR0.cpp: Retry new RDTSC and RDTSCP code with HM_CHANGED_XXXX flags set (duh). bugref:6973

File:
1 edited

Legend:

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

    r72619 r72620  
    1191711917{
    1191811918    HMVMX_VALIDATE_EXIT_HANDLER_PARAMS();
    11919 #if 0 /** @todo Needs testing. @bugref{6973} */
     11919#if 1 /** @todo Needs testing. @bugref{6973} */
    1192011920    int rc = hmR0VmxSaveGuestCR4(pVCpu, pMixedCtx);      /* Needed for CPL < 0 only, really. */
    1192111921    rc    |= hmR0VmxSaveGuestRegsForIemExec(pVCpu, pMixedCtx, false /*fMemory*/, false /*fNeedRsp*/);
     
    1192911929            pVmxTransient->fUpdateTscOffsettingAndPreemptTimer = true;
    1193011930    }
    11931     else if (rcStrict == VINF_EM_RESCHEDULE)
     11931    else if (rcStrict == VINF_IEM_RAISED_XCPT)
    1193211932        rcStrict = VINF_SUCCESS;
     11933    HMCPU_CF_SET(pVCpu, rcStrict != VINF_IEM_RAISED_XCPT ? HM_CHANGED_GUEST_RIP | HM_CHANGED_GUEST_RFLAGS : HM_CHANGED_ALL_GUEST);
    1193311934    STAM_COUNTER_INC(&pVCpu->hm.s.StatExitRdtsc);
    1193411935    return rcStrict;
     
    1196111962{
    1196211963    HMVMX_VALIDATE_EXIT_HANDLER_PARAMS();
    11963 #if 0 /** @todo Needs testing. @bugref{6973} */
     11964#if 1 /** @todo Needs testing. @bugref{6973} */
    1196411965    int rc = hmR0VmxSaveGuestCR4(pVCpu, pMixedCtx);      /* Needed for CPL < 0 only, really. */
    1196511966    rc    |= hmR0VmxSaveGuestRegsForIemExec(pVCpu, pMixedCtx, false /*fMemory*/, false /*fNeedRsp*/);
     
    1197411975            pVmxTransient->fUpdateTscOffsettingAndPreemptTimer = true;
    1197511976    }
    11976     else if (rcStrict == VINF_EM_RESCHEDULE)
     11977    else if (rcStrict == VINF_IEM_RAISED_XCPT)
    1197711978        rcStrict = VINF_SUCCESS;
     11979    HMCPU_CF_SET(pVCpu, rcStrict != VINF_IEM_RAISED_XCPT ? HM_CHANGED_GUEST_RIP | HM_CHANGED_GUEST_RFLAGS : HM_CHANGED_ALL_GUEST);
    1197811980    STAM_COUNTER_INC(&pVCpu->hm.s.StatExitRdtscp);
    1197911981    return rcStrict;
Note: See TracChangeset for help on using the changeset viewer.

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