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的 簽章 成員等於 WHEA_ERROR_PACKET_V1_SIGNATURE,程序代碼就會在舊版 Windows 上執行,而且錯誤封包會格式化為 WHEA_ERROR_PACKET_V1 結構。
如果WHEA_ERROR_PACKET的 簽章 成員等於 WHEA_ERROR_PACKET_V2_SIGNATURE,程序代碼就會在更新版本的 Windows 上執行,而且錯誤封包會格式化為 WHEA_ERROR_PACKET_V2 結構。
LLHEH 會在報告硬體錯誤時,將 WHEA_ERROR_PACKET_V1 結構傳遞給作系統。 此硬體錯誤封包包含來自錯誤來源錯誤狀態快取器的原始硬體錯誤數據。
WHEA_ERROR_PACKET_V1結構描述 錯誤記錄的硬體錯誤封包錯誤區段中所包含的錯誤數據。 只有當 SectionType 其中一個 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 結構的成員描述該錯誤記錄包含WHEA_PACKET_SECTION_GUID時,錯誤記錄才會包含硬體錯誤封包錯誤區段。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Server 2008 和 Windows Vista SP1 支援。 |
標頭 | ntddk.h (包括 Ntddk.h) |
另請參閱
Platform-Specific 硬體錯誤驅動程式 (PSHED) 外掛程式
WHEA_ERROR_RECORD_SECTION_DESCRIPTOR