VirtualBox

Changeset 9718 in vbox


Ignore:
Timestamp:
Jun 16, 2008 12:35:09 PM (16 years ago)
Author:
vboxsync
Message:

Single instruction emulation for rd/wrmsr

Location:
trunk/src/VBox/VMM/VMMR0
Files:
2 edited

Legend:

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

    r9708 r9718  
    17131713
    17141714    /* Emulate in ring 3. */
     1715    case SVM_EXIT_MSR:
     1716        /* Note: If we decide to emulate them here, then we must sync the MSRs that could have been changed (sysenter, fs/gs base)!!! */
     1717        rc = VERR_EM_INTERPRETER;
     1718        break;
     1719
    17151720    case SVM_EXIT_MONITOR:
    17161721    case SVM_EXIT_RDPMC:
     
    17181723    case SVM_EXIT_MWAIT_UNCOND:
    17191724    case SVM_EXIT_MWAIT_ARMED:
    1720     case SVM_EXIT_MSR:
    17211725    case SVM_EXIT_TASK_SWITCH:          /* can change CR3; emulate */
    17221726        rc = VINF_EM_RAW_EXCEPTION_PRIVILEGED;
  • trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp

    r9708 r9718  
    15191519                TRPMSetFaultAddress(pVM, exitQualification);
    15201520
     1521if (exitQualification == 0x805ce018)
     1522{
     1523        rc = VINF_EM_RAW_EMULATE_INSTR;
     1524    break;
     1525}
    15211526                /* Forward it to our trap handler first, in case our shadow pages are out of sync. */
    15221527                rc = PGMTrap0eHandler(pVM, errCode, CPUMCTX2CORE(pCtx), (RTGCPTR)exitQualification);
     
    19911996    case VMX_EXIT_WRMSR:                /* 32 WRMSR. Guest software attempted to execute WRMSR. */
    19921997        /* Note: If we decide to emulate them here, then we must sync the MSRs that could have been changed (sysenter, fs/gs base)!!! */
     1998        rc = VERR_EM_INTERPRETER;
     1999        break;
     2000
    19932001    case VMX_EXIT_RDPMC:                /* 15 Guest software attempted to execute RDPMC. */
    19942002    case VMX_EXIT_MWAIT:                /* 36 Guest software executed MWAIT. */
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