Editja

Virtual Processor Exception Exit

Context data for an exit caused by an exception generated by the virtual processor.

Note

This exit reason and its context structure apply to x64 partitions only.

Syntax

//
// Context data for an exit caused by an exception generated by the virtual processor
// (WHvRunVpExitReasonException)
//
typedef union WHV_VP_EXCEPTION_INFO
{
    struct
    {
        UINT32 ErrorCodeValid : 1;
        UINT32 SoftwareException : 1;
        UINT32 Reserved : 30;
    };

    UINT32 AsUINT32;
} WHV_VP_EXCEPTION_INFO;

typedef struct WHV_VP_EXCEPTION_CONTEXT
{
    UINT8 InstructionByteCount;
    UINT8 Reserved[3];
    UINT8 InstructionBytes[16];

    // Exception info
    WHV_VP_EXCEPTION_INFO ExceptionInfo;
    UINT8 ExceptionType; // WHV_EXCEPTION_TYPE
    UINT8 Reserved2[3];
    UINT32 ErrorCode;
    UINT64 ExceptionParameter;
} WHV_VP_EXCEPTION_CONTEXT;

Remarks

Information about an exception generated by the virtual processor is provided in the WHV_VP_EXCEPTION_CONTEXT structure. 

Exits for exceptions are only generated if they are enabled by setting the WHV_EXTENDED_VM_EXITS.ExceptionExit property for the partition.

See also