WHEA_ERROR_PACKET_V1 結構 (ntddk.h)
WHEA_ERROR_PACKET_V1 結構描述由低階硬體錯誤處理程式傳遞至作業系統的硬體錯誤數據, (LLHEH) 。
Windows Server 2008 和 Windows Vista SP1 支援 WHEA_ERROR_PACKET_V1 結構。
針對 Windows 7 和更新版本的 Windows,請使用 WHEA_ERROR_PACKET_V2 結構。
語法
typedef struct _WHEA_ERROR_PACKET_V1 {
ULONG Signature;
WHEA_ERROR_PACKET_FLAGS Flags;
ULONG Size;
ULONG RawDataLength;
ULONGLONG Reserved1;
ULONGLONG Context;
WHEA_ERROR_TYPE ErrorType;
WHEA_ERROR_SEVERITY ErrorSeverity;
ULONG ErrorSourceId;
WHEA_ERROR_SOURCE_TYPE ErrorSourceType;
ULONG Reserved2;
ULONG Version;
ULONGLONG Cpu;
union {
WHEA_PROCESSOR_GENERIC_ERROR_SECTION ProcessorError;
WHEA_MEMORY_ERROR_SECTION MemoryError;
WHEA_NMI_ERROR_SECTION NmiError;
WHEA_PCIEXPRESS_ERROR_SECTION PciExpressError;
WHEA_PCIXBUS_ERROR_SECTION PciXBusError;
WHEA_PCIXDEVICE_ERROR_SECTION PciXDeviceError;
WHEA_PMEM_ERROR_SECTION PmemError;
} u;
WHEA_RAW_DATA_FORMAT RawDataFormat;
ULONG RawDataOffset;
UCHAR RawData[1];
} WHEA_ERROR_PACKET_V1, *PWHEA_ERROR_PACKET_V1, WHEA_ERROR_PACKET, *PWHEA_ERROR_PACKET;
成員
Signature
硬體錯誤封包的簽章。 此成員包含值WHEA_ERROR_PACKET_V1_SIGNATURE。
Flags
描述錯誤條件 的WHEA_ERROR_PACKET_FLAGS 等位。
Size
硬體錯誤封包的大小,以位元組為單位,包括原始數據。
RawDataLength
RawData 成員中包含的數據長度,以位元組為單位。
Reserved1
保留供系統使用。
Context
保留供系統使用。
ErrorType
WHEA_ERROR_TYPE型別值,指出回報硬體錯誤的硬體元件類型。
ErrorSeverity
WHEA_ERROR_SEVERITY型別值,指出錯誤狀況的嚴重性。
ErrorSourceId
回報硬體錯誤之錯誤來源的識別碼。
ErrorSourceType
WHEA_ERROR_SOURCE_TYPE型別值,指出回報硬體錯誤的錯誤來源類型。
Reserved2
保留供系統使用。
Version
WHEA_ERROR_PACKET_V1 結構的版本。 這個成員包含值WHEA_ERROR_PKT_V1VERSION。
Cpu
保留供系統使用。
u
由下列成員組成的等位:
u.ProcessorError
描述處理器錯誤數據的 WHEA_PROCESSOR_GENERIC_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypeProcessor 時,才會使用此成員。
u.MemoryError
描述記憶體錯誤數據的 WHEA_MEMORY_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypeMemory 時,才會使用此成員。
u.NmiError
描述 NMI) 錯誤資料 (不可遮罩中斷的 WHEA_NMI_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypeNMI 時,才會使用此成員。
u.PciExpressError
描述PCI Express (PCIe) 錯誤數據的 WHEA_PCIEXPRESS_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypePCIExpress 時,才會使用此成員。
u.PciXBusError
描述PCI或PCI-X總線錯誤數據的 WHEA_PCIXBUS_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypePCIXBus 時,才會使用此成員。
u.PciXDeviceError
描述PCI或PCI-X裝置錯誤資料的 WHEA_PCIXDEVICE_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypePCIXDevice 時,才會使用此成員。
u.PmemError
RawDataFormat
WHEA_RAW_DATA_FORMAT型別值,指出RawData數據緩衝區中包含的硬體錯誤資訊格式。
RawDataOffset
從RawData數據緩衝區開頭的位移,PSHED 外掛程式可以將補充平臺特定錯誤資訊新增至硬體錯誤封包。 可新增至硬體錯誤封包的增補信息數量受限於 Size 成員中指定的封包大小總計。
RawData[1]
可變大小的數據緩衝區,其中包含來自錯誤來源狀態緩存器的原始硬體錯誤資訊。 硬體錯誤數據的格式是由 RawDataFormat 成員所指定。
備註
WHEA_ERROR_PACKET_V1 結構可用來報告 Windows Server 2008 和 Windows Vista SP1 中的硬體錯誤。
如果您的 平臺特定硬體錯誤驅動程式 (PSHED) 外掛程式 在任何 WHEA 相容的 Windows 版本上執行,您可以遵循下列步驟來檢查WHEA_ERROR_PACKET版本:
如果WHEA_ERROR_PACKET的 Signature 成員等於WHEA_ERROR_PACKET_V1_SIGNATURE,程式代碼就會在舊版 Windows 上執行,而錯誤封包的格式會格式化為 WHEA_ERROR_PACKET_V1 結構。
如果WHEA_ERROR_PACKET的 Signature 成員等於WHEA_ERROR_PACKET_V2_SIGNATURE,程式代碼就會在較新版本的 Windows 上執行,而錯誤封包的格式會格式化為 WHEA_ERROR_PACKET_V2 結構。
LLHEH 會在回報硬體錯誤時,將 WHEA_ERROR_PACKET_V1 結構傳遞給操作系統。 此硬體錯誤封包包含來自錯誤來源錯誤狀態快取器的原始硬體錯誤數據。
WHEA_ERROR_PACKET_V1 結構描述 錯誤記錄的硬體錯誤封包錯誤區段中所包含的錯誤數據。 只有在描述該錯誤記錄之錯誤記錄區段的其中一個WHEA_ERROR_RECORD_SECTION_DESCRIPTOR結構的 SectionType 成員包含WHEA_PACKET_SECTION_GUID時,錯誤記錄才會包含硬體錯誤封包錯誤區段。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Server 2008 和 Windows Vista SP1 支援。 |
標頭 | ntddk.h (包含 Ntddk.h) |
另請參閱
WHEA_ERROR_RECORD_SECTION_DESCRIPTOR