Expand Minimize

HV_X64_INTERCEPT_MESSAGE_HEADER structure

The HV_X64_INTERCEPT_MESSAGE_HEADER structure describes a common payload header for all x64 memory access messages and processor intercept messages.

Syntax


typedef struct _HV_X64_INTERCEPT_MESSAGE_HEADER {
  HV_VP_INDEX               VpIndex;
  UINT8                     InstructionLength;
  HV_INTERCEPT_ACCESS_TYPE  InterceptAccessType;
  HV_X64_VP_EXECUTION_STATE ExecutionState;
  HV_X64_SEGMENT_REGISTER   CsSegment;
  UINT64                    Rip;
  UINT64                    Rflags;
} HV_X64_INTERCEPT_MESSAGE_HEADER, *PHV_X64_INTERCEPT_MESSAGE_HEADER;

Members

VpIndex

An HV_VP_INDEX value that specifies the index of the virtual processor that generated the intercept.

InstructionLength

The size in bytes of the instruction that generated the intercept. If the instruction size is unknown, the hypervisor reports a size of zero, and the recipient of the message must fetch and decode the instruction to determine its size. The hypervisor guarantees that it will fill in the correct instruction size for CPUID, I/O port, and MSR intercepts.

InterceptAccessType

A bitwise OR combination of HV_INTERCEPT_ACCESS_TYPE_MASK values that specify the access type (read, write, or execute) of the event that triggered the intercept.

ExecutionState

An HV_X64_VP_EXECUTION_STATE union that provides miscellaneous information about the virtual processor's execution state at the time the intercept was triggered.

CsSegment

An HV_X64_SEGMENT_REGISTER structure that provides information about the code segment at the time the intercept was triggered.

Rip

A 64-bit value that provides the instruction pointer at the time the intercept was triggered.

Rflags

A 64-bit value that provides the flags register at the time the intercept was triggered.

Remarks

All x64 memory access messages and processor intercept messages contain a common payload header. This header contains information about the state of the virtual processor at the time of the intercept. The recipient of the message can use the message to more easily complete the intercepted instruction in software.

Requirements

Header

HvImApi.h (include Hvgdk.h)

See also

HV_X64_SEGMENT_REGISTER
HV_X64_VP_EXECUTION_STATE

 

 

Send comments about this topic to Microsoft

Build date: 11/16/2013

Show:
© 2014 Microsoft. All rights reserved.