VirtualBox

Changeset 78489 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
May 14, 2019 4:46:15 AM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
130527
Message:

VMM/IEM: Nested VMX: bugref:9180 Fix RDTSCP VM-exit. We have to first check if RDTSCP is enabled in VMX non-root mode and then check the intercept before applying TSC offsetting (if supported).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImpl.cpp.h

    r77610 r78489  
    66136613        return iemRaiseUndefinedOpcode(pVCpu);
    66146614
     6615    if (    IEM_VMX_IS_NON_ROOT_MODE(pVCpu)
     6616        && !IEM_VMX_IS_PROCCTLS2_SET(pVCpu, VMX_PROC_CTLS2_RDTSCP))
     6617    {
     6618        Log(("rdtscp: Not enabled for VMX non-root mode -> #UD\n"));
     6619        return iemRaiseUndefinedOpcode(pVCpu);
     6620    }
     6621
    66156622    if (pVCpu->iem.s.uCpl != 0)
    66166623    {
     
    66246631
    66256632    if (   IEM_VMX_IS_NON_ROOT_MODE(pVCpu)
    6626         && IEM_VMX_IS_PROCCTLS2_SET(pVCpu, VMX_PROC_CTLS2_RDTSCP))
     6633        && IEM_VMX_IS_PROCCTLS_SET(pVCpu, VMX_PROC_CTLS_RDTSC_EXIT))
    66276634    {
    66286635        Log(("rdtscp: Guest intercept -> VM-exit\n"));
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