VirtualBox

儲存庫 vbox 的更動 55257


忽略:
時間撮記:
2015-4-14 下午03:54:15 (10 年 以前)
作者:
vboxsync
訊息:

HM/VMX: Added new exit codes.

位置:
trunk
檔案:
修改 3 筆資料

圖例:

未更動
新增
刪除
  • trunk/include/VBox/vmm/hm_vmx.h

    r54863 r55257  
    982982/** 59 VMFUNC. Guest software attempted to execute VMFUNC. */
    983983#define VMX_EXIT_VMFUNC                                         59
    984 #if 1
    985 /** The maximum exit value (inclusive). */
    986 #define VMX_EXIT_MAX                                            (VMX_EXIT_VMFUNC)
    987 #else
    988984/** 60 ??? */
    989985#define VMX_EXIT_RESERVED_60                                    60
     
    1001997/** The maximum exit value (inclusive). */
    1002998#define VMX_EXIT_MAX                                            (VMX_EXIT_XRSTORS)
    1003 #endif
    1004999/** @} */
    10051000
  • trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp

    r55248 r55257  
    493493 /* 57  VMX_EXIT_RDRAND                  */  hmR0VmxExitRdrand,
    494494 /* 58  VMX_EXIT_INVPCID                 */  hmR0VmxExitInvpcid,
    495  /* 59  VMX_EXIT_VMFUNC                  */  hmR0VmxExitSetPendingXcptUD
     495 /* 59  VMX_EXIT_VMFUNC                  */  hmR0VmxExitSetPendingXcptUD,
     496 /* 60  VMX_EXIT_RESERVED_60             */  hmR0VmxExitErrUndefined,
     497 /* 61  VMX_EXIT_RDSEED                  */  hmR0VmxExitErrUndefined, /* only spurious exits, so undefined */
     498 /* 62  VMX_EXIT_RESERVED_62             */  hmR0VmxExitErrUndefined,
     499 /* 63  VMX_EXIT_XSAVES                  */  hmR0VmxExitSetPendingXcptUD,
     500 /* 64  VMX_EXIT_XRSTORS                 */  hmR0VmxExitSetPendingXcptUD,
    496501};
    497502#endif /* HMVMX_USE_FUNCTION_TABLE */
     
    91599164        case VMX_EXIT_INVVPID:
    91609165        case VMX_EXIT_VMFUNC:
     9166        case VMX_EXIT_XSAVES:
     9167        case VMX_EXIT_XRSTORS:
    91619168            rc = hmR0VmxExitSetPendingXcptUD(pVCpu, pMixedCtx, pVmxTransient);
    91629169            break;
     9170        case VMX_EXIT_RESERVED_60:
     9171        case VMX_EXIT_RDSEED: /* only spurious exits, so undefined */
     9172        case VMX_EXIT_RESERVED_62:
    91639173        default:
    91649174            rc = hmR0VmxExitErrUndefined(pVCpu, pMixedCtx, pVmxTransient);
     
    1058310593    HMVMX_VALIDATE_EXIT_HANDLER_PARAMS();
    1058410594
    10585     /* We expose XSETBV to the guest, fallback to the recompiler for emulation. */
     10595    /* We expose XSETBV to the guest, fallback to the interpreter for emulation. */
    1058610596    /** @todo check if XSETBV is supported by the recompiler. */
    1058710597    return VERR_EM_INTERPRETER;
     
    1059610606    HMVMX_VALIDATE_EXIT_HANDLER_PARAMS();
    1059710607
    10598     /* The guest should not invalidate the host CPU's TLBs, fallback to recompiler. */
     10608    /* The guest should not invalidate the host CPU's TLBs, fallback to interpreter. */
    1059910609    /** @todo implement EMInterpretInvpcid() */
    1060010610    return VERR_EM_INTERPRETER;
     
    1094310953 * @retval VINF_PGM_SYNC_CR3 CR3 sync is required, back to ring-3.
    1094410954 * @retval VERR_EM_INTERPRETER when something unexpected happened, fallback to
    10945  *         recompiler.
     10955 *         interpreter.
    1094610956 */
    1094710957HMVMX_EXIT_DECL hmR0VmxExitMovCRx(PVMCPU pVCpu, PCPUMCTX pMixedCtx, PVMXTRANSIENT pVmxTransient)
  • trunk/src/VBox/VMM/VMMR3/HM.cpp

    r54878 r55257  
    120120    EXIT_REASON(VMX_EXIT_RDRAND             , 57, "RDRAND instruction."),
    121121    EXIT_REASON(VMX_EXIT_INVPCID            , 58, "INVPCID instruction."),
    122     EXIT_REASON(VMX_EXIT_VMFUNC             , 59, "VMFUNC instruction.")
     122    EXIT_REASON(VMX_EXIT_VMFUNC             , 59, "VMFUNC instruction."),
     123    EXIT_REASON_NIL(),
     124    EXIT_REASON(VMX_EXIT_RDSEED             , 61, "RDSEED instruction."),
     125    EXIT_REASON_NIL(),
     126    EXIT_REASON(VMX_EXIT_XSAVES             , 61, "XSAVES instruction."),
     127    EXIT_REASON(VMX_EXIT_XRSTORS            , 62, "XRSTORS instruction.")
    123128};
    124129/** Exit reason descriptions for AMD-V, used to describe statistics. */
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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