VirtualBox

Ignore:
Timestamp:
May 14, 2019 5:00:36 AM (6 years ago)
Author:
vboxsync
Message:

VMM/HMVMXR0: Nested VMX: bugref:9180 cpuid, rdtsc, rdtscp VM-exit handling.

File:
1 edited

Legend:

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

    r78482 r78490  
    1255712557
    1255812558        case VMX_EXIT_CPUID:
     12559        {
     12560            int rc = hmR0VmxReadExitInstrLenVmcs(pVmxTransient);
     12561            AssertRCReturn(rc, rc);
     12562            rcStrict = IEMExecVmxVmexitInstr(pVCpu, VMX_EXIT_CPUID, pVmxTransient->cbInstr);
     12563            break;
     12564        }
     12565
    1255912566        case VMX_EXIT_RDTSC:
     12567        {
     12568            int rc = hmR0VmxReadExitInstrLenVmcs(pVmxTransient);
     12569            AssertRCReturn(rc, rc);
     12570            if (CPUMIsGuestVmxProcCtlsSet(pVCpu, &pVCpu->cpum.GstCtx, VMX_PROC_CTLS_RDTSC_EXIT))
     12571                rcStrict = IEMExecVmxVmexitInstr(pVCpu, VMX_EXIT_RDTSC, pVmxTransient->cbInstr);
     12572            else
     12573                rcStrict = hmR0VmxExitRdtsc(pVCpu, pVmxTransient);
     12574            break;
     12575        }
     12576
     12577
    1256012578        case VMX_EXIT_RDTSCP:
     12579        {
     12580            int rc = hmR0VmxReadExitInstrLenVmcs(pVmxTransient);
     12581            AssertRCReturn(rc, rc);
     12582            if (CPUMIsGuestVmxProcCtlsSet(pVCpu, &pVCpu->cpum.GstCtx, VMX_PROC_CTLS_RDTSC_EXIT))
     12583                rcStrict = IEMExecVmxVmexitInstr(pVCpu, VMX_EXIT_RDTSC, pVmxTransient->cbInstr);
     12584            else
     12585                rcStrict = hmR0VmxExitRdtsc(pVCpu, pVmxTransient);
     12586            break;
     12587        }
     12588
    1256112589        case VMX_EXIT_APIC_ACCESS:
    1256212590        case VMX_EXIT_XCPT_OR_NMI:
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