WHEA_ERROR_STATUS union (ntddk.h)

WHEA_ERROR_STATUS联合描述从特定于实现的错误寄存器中包含的数据抽象出的通用错误代码。

语法

typedef union _WHEA_ERROR_STATUS {
  ULONGLONG ErrorStatus;
  struct {
    ULONGLONG Reserved1 : 8;
    ULONGLONG ErrorType : 8;
    ULONGLONG Address : 1;
    ULONGLONG Control : 1;
    ULONGLONG Data : 1;
    ULONGLONG Responder : 1;
    ULONGLONG Requester : 1;
    ULONGLONG FirstError : 1;
    ULONGLONG Overflow : 1;
    ULONGLONG Reserved2 : 41;
  } DUMMYSTRUCTNAME;
} WHEA_ERROR_STATUS, *PWHEA_ERROR_STATUS;

成员

ErrorStatus

WHEA_ERROR_STATUS联合内容的 ULONGLONG 表示形式。

DUMMYSTRUCTNAME

定义 DUMMYSTRUCTNAME 结构。

DUMMYSTRUCTNAME.Reserved1

预留给系统使用。

DUMMYSTRUCTNAME.ErrorType

发生的硬件错误类型。

可能的值为:

说明
ERRTYP_BUS 总线错误。
ERRTYP_CACHE 缓存错误。
ERRTYP_FLOW 组件内部队列的溢出或下溢。
ERRTYP_FUNCTION 一个或多个功能单元中的错误。
ERRTYP_IMPROPER 访问错误。
ERRTYP_INTERNAL 组件内部的错误。
ERRTYP_LOSSOFLOCKSTEP 丢失锁定步骤。
ERRTYP_MAP 在 IO-TLB 或 IO-PDIR 上找不到虚拟地址。
ERRTYP_MEM 内存错误。
ERRTYP_PARITY 总线奇偶校验错误。
ERRTYP_PATHERRORA总线路径错误。
ERRTYP_POISONED 已向已损坏的数据发出读取操作。
ERRTYP_PROTOCOL 总线协议错误。
ERRTYP_RESPONSE 收到与请求无关的响应。
ERRTYP_SELFTEST 组件自测试失败。
ERRTYP_TIMEOUT 总线超时错误。
ERRTYP_TLB 翻译旁观缓冲区错误。
ERRTYP_UNIMPL 对未映射到任何组件的内存地址的访问。

DUMMYSTRUCTNAME.Address

一个位,指示是否在地址信号上或在事务的地址部分检测到错误。

DUMMYSTRUCTNAME.Control

一个位,指示是否在控制信号上或在事务的控制部分检测到错误。

DUMMYSTRUCTNAME.Data

一个位,指示是否在数据信号上或在事务的数据部分期间检测到错误。

DUMMYSTRUCTNAME.Responder

一个位,指示事务的响应方检测到错误。

DUMMYSTRUCTNAME.Requester

一个位,指示事务的请求者检测到错误。

DUMMYSTRUCTNAME.FirstError

一个位,指示如果为一个节类型记录多个错误,则错误是发生的第一个错误。 此位的设置是可选的。

DUMMYSTRUCTNAME.Overflow

一个位,指示由于日志记录资源溢出而发生了其他错误,但未记录。

DUMMYSTRUCTNAME.Reserved2

预留给系统使用。

注解

WHEA_ERROR_STATUS联合提供将特定于实现的错误寄存器中的信息抽象化为通用错误代码的功能,以便操作系统无需深入了解基础平台即可处理错误。 此联合派生自 Intel Itanium 处理器系列系统抽象层规范的错误状态部分。

WHEA_ERROR_STATUS联合包含在WHEA_MEMORY_ERROR_SECTIONWHEA_PCIXBUS_ERROR_SECTIONWHEA_PCIXDEVICE_ERROR_SECTION结构中。

要求

要求
最低受支持的客户端 在 Windows Server 2008、Windows Vista SP1 和更高版本的 Windows 中受支持。
标头 ntddk.h (包括 Ntddk.h)

另请参阅

WHEA_MEMORY_ERROR_SECTION

WHEA_PCIXBUS_ERROR_SECTION

WHEA_PCIXDEVICE_ERROR_SECTION