VirtualBox

Changeset 72262 in vbox for trunk/include


Ignore:
Timestamp:
May 18, 2018 2:10:08 PM (7 years ago)
Author:
vboxsync
Message:

NEM/win: Intercept all (for now) CPUIDs. bugref:9044

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/nt/hyperv.h

    r72253 r72262  
    13551355
    13561356
     1357/**
     1358 * The payload format for HvMessageTypeX64CpuidIntercept,
     1359 *
     1360 * @note This message does not include HV_X64_INTERCEPT_MESSAGE_HEADER!
     1361 */
     1362typedef struct
     1363{
     1364    HV_X64_INTERCEPT_MESSAGE_HEADER     Header;                 /**< 0x00: The usual intercept header. */
     1365    uint64_t                            Rax;                    /**< 0x28: Input RAX. */
     1366    uint64_t                            Rcx;                    /**< 0x30: Input RCX. */
     1367    uint64_t                            Rdx;                    /**< 0x38: Input RDX. */
     1368    uint64_t                            Rbx;                    /**< 0x40: Input RBX. */
     1369    uint64_t                            DefaultResultRax;       /**< 0x48: Default result RAX. */
     1370    uint64_t                            DefaultResultRcx;       /**< 0x50: Default result RCX. */
     1371    uint64_t                            DefaultResultRdx;       /**< 0x58: Default result RDX. */
     1372    uint64_t                            DefaultResultRbx;       /**< 0x60: Default result RBX. */
     1373} HV_X64_CPUID_INTERCEPT_MESSAGE;
     1374AssertCompileSize(HV_X64_CPUID_INTERCEPT_MESSAGE, 0x68);
     1375/** Pointer to a HvMessageTypeX64CpuidIntercept payload. */
     1376typedef HV_X64_CPUID_INTERCEPT_MESSAGE *PHV_X64_CPUID_INTERCEPT_MESSAGE;
     1377/** Pointer to a const HvMessageTypeX64CpuidIntercept payload. */
     1378typedef HV_X64_CPUID_INTERCEPT_MESSAGE const *PCHV_X64_CPUID_INTERCEPT_MESSAGE;
     1379
     1380/** Full HvMessageTypeX64CpuidIntercept message. */
     1381typedef struct
     1382{
     1383    HV_MESSAGE_HEADER                   MsgHdr;
     1384    HV_X64_CPUID_INTERCEPT_MESSAGE      Payload;
     1385} HV_X64_CPUID_INTERCEPT_MESSAGE_FULL;
     1386
     1387
    13571388/** X64 exception information (HvMessageTypeX64ExceptionIntercept).
    13581389 * @sa WHV_VP_EXCEPTION_INFO */
     
    14771508        /** HvMessageTypeX64IoPortIntercept */
    14781509        HV_X64_IO_PORT_INTERCEPT_MESSAGE    X64IoPortIntercept;
     1510        /** HvMessageTypeX64CpuidIntercept */
     1511        HV_X64_CPUID_INTERCEPT_MESSAGE      X64CpuIdIntercept;
    14791512        /** HvMessageTypeX64ExceptionIntercept */
    14801513        HV_X64_EXCEPTION_INTERCEPT_MESSAGE  X64ExceptionIntercept;
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