// ntddk.h
typedef struct _WHEA_GENERIC_ERROR_DESCRIPTOR_V2 {
USHORT Type;
UCHAR Reserved;
UCHAR Enabled;
ULONG ErrStatusBlockLength;
ULONG RelatedErrorSourceId;
UCHAR ErrStatusAddressSpaceID;
UCHAR ErrStatusAddressBitWidth;
UCHAR ErrStatusAddressBitOffset;
UCHAR ErrStatusAddressAccessSize;
WHEA_PHYSICAL_ADDRESS ErrStatusAddress;
WHEA_NOTIFICATION_DESCRIPTOR Notify;
UCHAR ReadAckAddressSpaceID;
UCHAR ReadAckAddressBitWidth;
UCHAR ReadAckAddressBitOffset;
UCHAR ReadAckAddressAccessSize;
WHEA_PHYSICAL_ADDRESS ReadAckAddress;
ULONGLONG ReadAckPreserveMask;
ULONGLONG ReadAckWriteMask;
} WHEA_GENERIC_ERROR_DESCRIPTOR_V2, *PWHEA_GENERIC_ERROR_DESCRIPTOR_V2;
View the official Windows Driver Kit DDI referenceNo description available.
The WHEA_GENERIC_ERROR_DESCRIPTOR_V2 structure describes a generic error source.
TypeThe type of error source descriptor. This member is always set to WHEA_ERROR_SOURCE_DESCRIPTOR_TYPE_GENERIC_V2.
ReservedReserved for system use.
EnabledA Boolean value that indicates if the error source is enabled.
ErrStatusBlockLengthThe size, in bytes, of the block of error status registers that contain the error data for the error source.
RelatedErrorSourceIdThe identifier of the related error source. If the generic error source does not relate back to another error source, this member is not used.
ErrStatusAddressSpaceIDThe address space of the address that is specified in the ErrStatusAddress member.
ErrStatusAddressBitWidthThe size, in bits, of the register at the address that is specified in the ErrStatusAddress member.
ErrStatusAddressBitOffsetThe offset, in bits, of the register at the address that is specified in the ErrStatusAddress member.
ErrStatusAddressAccessSizeThe access size for reading the register at the address that is specified in the ErrStatusAddress member.
ErrStatusAddressThe 64-bit address of a register that contains the physical address of a block of memory that contains the error status data for the error source. This block of memory must reside in firmware reserved memory so that it is not reclaimed by the operating system's memory manager. The error status data contained in this block of memory is described by a WHEA_GENERIC_ERROR structure.
NotifyA WHEA_NOTIFICATION_DESCRIPTOR structure that describes the notification mechanism that is used by the error source.
ReadAckAddressSpaceIDThe address space of the address that is specified in the ReadAckAddress member.
ReadAckAddressBitWidthThe size, in bits, of the register at the address that is specified in the ReadAckAddress member.
ReadAckAddressBitOffsetThe offset, in bits, of the register at the address that is specified in the ReadAckAddress member.
ReadAckAddressAccessSizeThe access size for reading the register at the address that is specified in the ReadAckAddress member.
ReadAckAddressThe 64-bit address of a register that is used to notify the RAS controller that Windows has processed the Error Status Block.
ReadAckPreserveMaskContains a mask of bits to preserve when writing the Read Ack register.
ReadAckWriteMaskContains a mask of bits to set when writing the Read Ack register.
This structure corresponds to the Generic Hardware Error Source version 2 (GHESv2) structure that is defined in Advanced Configuration and Power Interface (ACPI) Specification version 6.2.