VirtualBox

Changeset 81242 in vbox


Ignore:
Timestamp:
Oct 14, 2019 8:46:35 AM (5 years ago)
Author:
vboxsync
Message:

VMM: Log RDPRU feature bit, VMCB intercept bit and VMEXIT code.

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/hm_svm.h

    r78869 r81242  
    286286/** XSETBV instruction. */
    287287# define SVM_EXIT_XSETBV                 0x8d
     288/** RDPRU instruction. */
     289# define SVM_EXIT_RDPRU                  0x8e
    288290/** Nested paging: host-level page fault occurred (EXITINFO1 contains fault errorcode; EXITINFO2 contains the guest physical address causing the fault). */
    289291# define SVM_EXIT_NPF                    0x400
     
    432434/** Intercept XSETBV instruction. */
    433435#define SVM_CTRL_INTERCEPT_XSETBV             RT_BIT_64(32 + 13)
     436/** Intercept RDPRU instruction. */
     437#define SVM_CTRL_INTERCEPT_RDPRU              RT_BIT_64(32 + 14)
    434438/* Bit 14 - Reserved, SBZ. */
    435439/** Intercept EFER writes after guest instruction finishes. */
  • trunk/include/iprt/x86.h

    r81240 r81242  
    784784/** Bit 2 - XSaveErPtr - Always XSAVE* and XRSTR* error pointers. */
    785785#define X86_CPUID_AMD_EFEID_EBX_XSAVE_ER_PTR RT_BIT_32(2)
     786/** Bit 4 - RDPRU - Supports the RDPRU instruction. */
     787#define X86_CPUID_AMD_EFEID_EBX_RDPRU        RT_BIT_32(4)
    786788/* AMD pipeline length: 9 feature bits ;-) */
    787789/** Bit 12 - IBPB - Supports the IBPB command in IA32_PRED_CMD. */
  • trunk/src/VBox/VMM/VMMAll/HMAll.cpp

    r80630 r81242  
    272272    EXIT_REASON(SVM_EXIT_MWAIT_ARMED  ,  140, "MWAIT instruction when armed."),
    273273    EXIT_REASON(SVM_EXIT_XSETBV       ,  141, "XSETBV instruction."),
     274    EXIT_REASON(SVM_EXIT_RDPRU        ,  142, "RDPRU instruction."),
    274275};
    275276/** Array index of the last valid AMD-V exit reason. */
    276 #define MAX_EXITREASON_AMDV              141
     277#define MAX_EXITREASON_AMDV              142
    277278
    278279/** Special exit reasons not covered in the array above. */
  • trunk/src/VBox/VMM/VMMR3/CPUMR3CpuId.cpp

    r81241 r81242  
    63476347    DBGFREGSUBFIELD_RO("IRPerf\0"       "Instructions retired count support",            1, 1, 0),
    63486348    DBGFREGSUBFIELD_RO("XSaveErPtr\0"   "Save/restore error pointers (FXSAVE/RSTOR*)",   2, 1, 0),
     6349    DBGFREGSUBFIELD_RO("RDPRU\0"        "RDPRU instruction",                             4, 1, 0),
    63496350    DBGFREGSUBFIELD_RO("IBPB\0"         "Supports the IBPB command in IA32_PRED_CMD",   12, 1, 0),
    63506351    DBGFREGSUBFIELD_TERMINATOR()
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