WHEA_MEMORY_ERROR_SECTION structure (ntddk.h)
The WHEA_MEMORY_ERROR_SECTION structure describes platform memory error data.
Syntax
typedef struct _WHEA_MEMORY_ERROR_SECTION {
WHEA_MEMORY_ERROR_SECTION_VALIDBITS ValidBits;
WHEA_ERROR_STATUS ErrorStatus;
ULONGLONG PhysicalAddress;
ULONGLONG PhysicalAddressMask;
USHORT Node;
USHORT Card;
USHORT Module;
USHORT Bank;
USHORT Device;
USHORT Row;
USHORT Column;
USHORT BitPosition;
ULONGLONG RequesterId;
ULONGLONG ResponderId;
ULONGLONG TargetId;
UCHAR ErrorType;
UCHAR Extended;
USHORT RankNumber;
USHORT CardHandle;
USHORT ModuleHandle;
} WHEA_MEMORY_ERROR_SECTION, *PWHEA_MEMORY_ERROR_SECTION;
Members
ValidBits
A WHEA_MEMORY_ERROR_SECTION_VALIDBITS union that specifies which members of this structure contain valid data.
ErrorStatus
A WHEA_ERROR_STATUS structure that contains memory error status data.
This member contains valid data only if the Validbits.ErrorStatus bit is set.
PhysicalAddress
The physical address where the memory error occurred.
This member contains valid data only if the Validbits.PhysicalAddress bit is set.
PhysicalAddressMask
A bit mask that specifies which of the bits in the PhysicalAddress member contain valid address data.
This member contains valid data only if the Validbits.PhysicalAddressMask bit is set.
Node
The identifier of the node that contains the memory where the memory error occurred in a system with multiple nodes.
This member contains valid data only if the Validbits.Node bit is set.
Card
The card number of the card that contains the memory where the memory error occurred.
This member contains valid data only if the Validbits.Card bit is set.
Module
The module number of the module that contains the memory where the memory error occurred.
This member contains valid data only if the Validbits.Module bit is set.
Bank
The bank number of the memory bank that contains the memory where the memory error occurred.
This member contains valid data only if the Validbits.Bank bit is set.
Device
The device number of the memory device that contains the memory where the memory error occurred.
This member contains valid data only if the Validbits.Device bit is set.
Row
The row number of the location where the memory error occurred.
This member contains valid data only if the Validbits.Row bit is set.
Column
The column number of the location where the memory error occurred.
This member contains valid data only if the Validbits.Column bit is set.
BitPosition
The bit position where the memory error occurred.
This member contains valid data only if the Validbits.BitPosition bit is set.
RequesterId
An identifier that uniquely identifies the requester associated with the error.
This member contains valid data only if the Validbits.RequesterId bit is set.
ResponderId
An identifier that uniquely identifies the responder associated with the error.
This member contains valid data only if the Validbits.ResponderId bit is set.
TargetId
The hardware address of the intended target of the transaction.
This member contains valid data only if the Validbits.TargetId bit is set.
ErrorType
The type of memory error that occurred. Possible values are:
Possible Values | Description |
---|---|
WHEA_MEMERRTYPE_UNKNOWN | An unknown error. |
WHEA_MEMERRTYPE_NOERROR | No error occurred. |
WHEA_MEMERRTYPE_SINGLEBITECC | A single bit ECC error. |
WHEA_MEMERRTYPE_MULTIBITECC | multibit ECC error. |
WHEA_MEMERRTYPE_SINGLESYMCHIPKILL | A single symbol ChipKill ECC error. |
WHEA_MEMERRTYPE_MULTISYMCHIPKILL | A multiple symbol ChipKill ECC error. |
WHEA_MEMERRTYPE_MASTERABORT | A master abort. |
WHEA_MEMERRTYPE_TARGETABORT | A target abort. |
WHEA_MEMERRTYPE_PARITYERROR | A parity error. |
WHEA_MEMERRTYPE_WATCHDOGTIMEOUT | A watchdog timeout. |
WHEA_MEMERRTYPE_INVALIDADDRESS | An invalid memory address. |
WHEA_MEMERRTYPE_MIRRORBROKEN | A broken memory mirror. |
WHEA_MEMERRTYPE_MEMORYSPARING | A memory sparing error. |
This member contains valid data only if the Validbits.ErrorType bit is set.
Extended
Contains valid data only if the ValidBits.ExtendedRow bits is set.
If ValidBits.Row is not set, the Row member contains row number bits (15:0) and Extended contains row number bits (17:16). Bit 0 is the 16th bit of the Row. Bit 1 is the 17th bit of the Row.
If ValidBits.ChipIdentification is set, Bits 7:5 contain Chip Identification.
This value is available starting Windows 10, version 1803.
RankNumber
The Rank number of the memory error location. This member contains valid data only if the ValidBits.RankNumber bit is set. This value is available starting Windows 10, version 1803.
CardHandle
Contains the SMBIOS handle for the Memory Array Structure that represents the Memory Card. This member contains valid data only if the ValidBits.CardHandle is set. This value is available starting Windows 10, version 1803.
ModuleHandle
Contains the SMBIOS handle for the Memory Device Structure that represents the Memory Module. This member contains valid data only if the ValidBits.ModuleHandle is set. This value is available starting Windows 10, version 1803.
Remarks
The WHEA_MEMORY_ERROR_SECTION structure describes the error data that is contained in a platform memory error section of an error record. An error record contains a platform memory error section only if the SectionType member of one of the WHEA_ERROR_RECORD_SECTION_DESCRIPTOR structures that describe the error record sections for that error record contains MEMORY_ERROR_SECTION_GUID.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in Windows Server 2008, Windows Vista SP1, and later versions of Windows. |
Header | ntddk.h (include Ntddk.h) |