[SDK] One step further towards ReactOS source code tree restructure: the sdk folder...
[reactos.git] / reactos / include / ddk / mce.h
diff --git a/reactos/include/ddk/mce.h b/reactos/include/ddk/mce.h
deleted file mode 100644 (file)
index 5178395..0000000
+++ /dev/null
@@ -1,1078 +0,0 @@
-#pragma once
-
-#if defined(_X86_) || defined(_IA64_) || defined(_AMD64_)
-
-typedef union _MCI_ADDR {
-  _ANONYMOUS_STRUCT struct {
-    ULONG Address;
-    ULONG Reserved;
-  } DUMMYSTRUCTNAME;
-  ULONGLONG QuadPart;
-} MCI_ADDR, *PMCI_ADDR;
-
-typedef enum {
-  HAL_MCE_RECORD,
-  HAL_MCA_RECORD
-} MCA_EXCEPTION_TYPE;
-
-#if defined(_AMD64_)
-
-#if (NTDDI_VERSION <= NTDDI_WINXP)
-
-typedef union _MCI_STATS {
-  struct {
-    USHORT McaCod;
-    USHORT ModelErrorCode;
-    ULONG OtherInfo:25;
-    ULONG Damage:1;
-    ULONG AddressValid:1;
-    ULONG MiscValid:1;
-    ULONG Enabled:1;
-    ULONG Uncorrected:1;
-    ULONG OverFlow:1;
-    ULONG Valid:1;
-  } MciStatus;
-  ULONG64 QuadPart;
-} MCI_STATS, *PMCI_STATS;
-
-#else
-
-typedef union _MCI_STATS {
-  struct {
-    USHORT McaErrorCode;
-    USHORT ModelErrorCode;
-    ULONG OtherInformation:25;
-    ULONG ContextCorrupt:1;
-    ULONG AddressValid:1;
-    ULONG MiscValid:1;
-    ULONG ErrorEnabled:1;
-    ULONG UncorrectedError:1;
-    ULONG StatusOverFlow:1;
-    ULONG Valid:1;
-  } MciStatus;
-  ULONG64 QuadPart;
-} MCI_STATS, *PMCI_STATS;
-
-#endif /* (NTDDI_VERSION <= NTDDI_WINXP) */
-
-#endif /* defined(_AMD64_) */
-
-#if defined(_X86_)
-typedef union _MCI_STATS {
-  struct {
-    USHORT McaCod;
-    USHORT MsCod;
-    ULONG OtherInfo:25;
-    ULONG Damage:1;
-    ULONG AddressValid:1;
-    ULONG MiscValid:1;
-    ULONG Enabled:1;
-    ULONG UnCorrected:1;
-    ULONG OverFlow:1;
-    ULONG Valid:1;
-  } MciStats;
-  ULONGLONG QuadPart;
-} MCI_STATS, *PMCI_STATS;
-#endif
-
-#define MCA_EXTREG_V2MAX               24
-
-#if defined(_X86_) || defined(_AMD64_)
-
-#if (NTDDI_VERSION >= NTDDI_WINXP)
-
-typedef struct _MCA_EXCEPTION {
-  ULONG VersionNumber;
-  MCA_EXCEPTION_TYPE ExceptionType;
-  LARGE_INTEGER TimeStamp;
-  ULONG ProcessorNumber;
-  ULONG Reserved1;
-  union {
-    struct {
-      UCHAR BankNumber;
-      UCHAR Reserved2[7];
-      MCI_STATS Status;
-      MCI_ADDR Address;
-      ULONGLONG Misc;
-    } Mca;
-    struct {
-      ULONGLONG Address;
-      ULONGLONG Type;
-    } Mce;
-  } u;
-  ULONG ExtCnt;
-  ULONG Reserved3;
-  ULONGLONG ExtReg[MCA_EXTREG_V2MAX];
-} MCA_EXCEPTION, *PMCA_EXCEPTION;
-
-#else
-
-typedef struct _MCA_EXCEPTION {
-  ULONG VersionNumber;
-  MCA_EXCEPTION_TYPE ExceptionType;
-  LARGE_INTEGER TimeStamp;
-  ULONG ProcessorNumber;
-  ULONG Reserved1;
-  union {
-    struct {
-      UCHAR BankNumber;
-      UCHAR Reserved2[7];
-      MCI_STATS Status;
-      MCI_ADDR Address;
-      ULONGLONG Misc;
-    } Mca;
-    struct {
-      ULONGLONG Address;
-      ULONGLONG Type;
-    } Mce;
-  } u;
-} MCA_EXCEPTION, *PMCA_EXCEPTION;
-
-#endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
-
-typedef MCA_EXCEPTION CMC_EXCEPTION, *PCMC_EXCEPTION;
-typedef MCA_EXCEPTION CPE_EXCEPTION, *PCPE_EXCEPTION;
-
-#if (NTDDI_VERSION >= NTDDI_WINXP)
-#define MCA_EXCEPTION_V1_SIZE FIELD_OFFSET(MCA_EXCEPTION, ExtCnt)
-#define MCA_EXCEPTION_V2_SIZE sizeof(struct _MCA_EXCEPTION)
-#endif
-
-#endif /* defined(_X86_) || defined(_AMD64_) */
-
-#if defined(_AMD64_) || defined(_IA64_)
-
-typedef UCHAR ERROR_SEVERITY, *PERROR_SEVERITY;
-
-typedef enum _ERROR_SEVERITY_VALUE {
-  ErrorRecoverable = 0,
-  ErrorFatal = 1,
-  ErrorCorrected = 2,
-  ErrorOthers = 3,
-} ERROR_SEVERITY_VALUE;
-
-#endif
-
-#if defined(_IA64_)
-
-typedef union _ERROR_REVISION {
-  USHORT Revision;
-  _ANONYMOUS_STRUCT struct {
-    UCHAR Minor;
-    UCHAR Major;
-  } DUMMYSTRUCTNAME;
-} ERROR_REVISION, *PERROR_REVISION;
-
-#if (NTDDI_VERSION > NTDDI_WINXP)
-#define ERROR_MAJOR_REVISION_SAL_03_00      0
-#define ERROR_MINOR_REVISION_SAL_03_00      2
-#define ERROR_REVISION_SAL_03_00 {ERROR_MINOR_REVISION_SAL_03_00,ERROR_MAJOR_REVISION_SAL_03_00}
-#define ERROR_FIXED_SECTION_REVISION {2,0}
-#else
-#define ERROR_REVISION_SAL_03_00 {2,0}
-#endif /* (NTDDI_VERSION > NTDDI_WINXP) */
-
-typedef union _ERROR_TIMESTAMP {
-  ULONGLONG TimeStamp;
-  _ANONYMOUS_STRUCT struct {
-    UCHAR Seconds;
-    UCHAR Minutes;
-    UCHAR Hours;
-    UCHAR Reserved;
-    UCHAR Day;
-    UCHAR Month;
-    UCHAR Year;
-    UCHAR Century;
-  } DUMMYSTRUCTNAME;
-} ERROR_TIMESTAMP, *PERROR_TIMESTAMP;
-
-typedef struct _ERROR_GUID {
-  ULONG Data1;
-  USHORT Data2;
-  USHORT Data3;
-  UCHAR Data4[8];
-} ERROR_GUID, *PERROR_GUID;
-
-typedef ERROR_GUID            _ERROR_DEVICE_GUID;
-typedef _ERROR_DEVICE_GUID    ERROR_DEVICE_GUID, *PERROR_DEVICE_GUID;
-
-typedef ERROR_GUID            _ERROR_PLATFORM_GUID;
-typedef _ERROR_PLATFORM_GUID  ERROR_PLATFORM_GUID, *PERROR_PLATFORM_GUID;
-
-typedef union _ERROR_RECORD_VALID {
-  UCHAR Valid;
-  _ANONYMOUS_STRUCT struct {
-    UCHAR OemPlatformID:1;
-    UCHAR Reserved:7;
-  } DUMMYSTRUCTNAME;
-} ERROR_RECORD_VALID, *PERROR_RECORD_VALID;
-
-typedef struct _ERROR_RECORD_HEADER {
-  ULONGLONG Id;
-  ERROR_REVISION Revision;
-  ERROR_SEVERITY ErrorSeverity;
-  ERROR_RECORD_VALID Valid;
-  ULONG Length;
-  ERROR_TIMESTAMP TimeStamp;
-  UCHAR OemPlatformId[16];
-} ERROR_RECORD_HEADER, *PERROR_RECORD_HEADER;
-
-typedef union _ERROR_RECOVERY_INFO {
-  UCHAR RecoveryInfo;
-  _ANONYMOUS_STRUCT struct {
-    UCHAR Corrected:1;
-    UCHAR NotContained:1;
-    UCHAR Reset:1;
-    UCHAR Reserved:4;
-    UCHAR Valid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_RECOVERY_INFO, *PERROR_RECOVERY_INFO;
-
-typedef struct _ERROR_SECTION_HEADER {
-  ERROR_DEVICE_GUID Guid;
-  ERROR_REVISION Revision;
-  ERROR_RECOVERY_INFO RecoveryInfo;
-  UCHAR Reserved;
-  ULONG Length;
-} ERROR_SECTION_HEADER, *PERROR_SECTION_HEADER;
-
-#if !defined(__midl)
-__inline
-USHORT
-NTAPI
-GetFwMceLogProcessorNumber(
-  PERROR_RECORD_HEADER Log)
-{
-  PERROR_SECTION_HEADER section = (PERROR_SECTION_HEADER)((ULONG64)Log + sizeof(*Log));
-  USHORT lid = (USHORT)((UCHAR)(section->Reserved));
-#ifdef NONAMELESSUNION
-  lid |= (USHORT)((UCHAR)(Log->TimeStamp.s.Reserved) << 8);
-#else
-  lid |= (USHORT)((UCHAR)(Log->TimeStamp.Reserved) << 8);
-#endif
-  return( lid );
-}
-#endif /* !__midl */
-
-#define ERROR_PROCESSOR_GUID {0xe429faf1, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_MODINFO_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG CheckInfo:1;
-    ULONGLONG RequestorIdentifier:1;
-    ULONGLONG ResponderIdentifier:1;
-    ULONGLONG TargetIdentifier:1;
-    ULONGLONG PreciseIP:1;
-    ULONGLONG Reserved:59;
-  } DUMMYSTRUCTNAME;
-} ERROR_MODINFO_VALID, *PERROR_MODINFO_VALID;
-
-typedef enum _ERROR_CHECK_IS {
-  isIA64 = 0,
-  isIA32 = 1,
-} ERROR_CHECK_IS;
-
-typedef enum _ERROR_CACHE_CHECK_OPERATION {
-  CacheUnknownOp = 0,
-  CacheLoad = 1,
-  CacheStore = 2,
-  CacheInstructionFetch = 3,
-  CacheDataPrefetch = 4,
-  CacheSnoop = 5,
-  CacheCastOut = 6,
-  CacheMoveIn = 7,
-} ERROR_CACHE_CHECK_OPERATION;
-
-typedef enum _ERROR_CACHE_CHECK_MESI {
-  CacheInvalid = 0,
-  CacheHeldShared = 1,
-  CacheHeldExclusive = 2,
-  CacheModified = 3,
-} ERROR_CACHE_CHECK_MESI;
-
-#if (NTDDI_VERSION >= NTDDI_VISTA)
-
-typedef union _ERROR_CACHE_CHECK {
-  ULONGLONG CacheCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG Operation:4;
-    ULONGLONG Level:2;
-    ULONGLONG Reserved1:2;
-    ULONGLONG DataLine:1;
-    ULONGLONG TagLine:1;
-    ULONGLONG DataCache:1;
-    ULONGLONG InstructionCache:1;
-    ULONGLONG MESI:3;
-    ULONGLONG MESIValid:1;
-    ULONGLONG Way:5;
-    ULONGLONG WayIndexValid:1;
-    ULONGLONG Reserved2:1;
-    ULONGLONG DP:1;
-    ULONGLONG Reserved3:8;
-    ULONGLONG Index:20;
-    ULONGLONG Reserved4:2;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG TargetAddressValid:1;
-    ULONGLONG RequestIdValid:1;
-    ULONGLONG ResponderIdValid:1;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_CACHE_CHECK, *PERROR_CACHE_CHECK;
-
-# else
-
-typedef union _ERROR_CACHE_CHECK {
-  ULONGLONG CacheCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG Operation:4;
-    ULONGLONG Level:2;
-    ULONGLONG Reserved1:2;
-    ULONGLONG DataLine:1;
-    ULONGLONG TagLine:1;
-    ULONGLONG DataCache:1;
-    ULONGLONG InstructionCache:1;
-    ULONGLONG MESI:3;
-    ULONGLONG MESIValid:1;
-    ULONGLONG Way:5;
-    ULONGLONG WayIndexValid:1;
-    ULONGLONG Reserved2:10;
-    ULONGLONG Index:20;
-    ULONGLONG Reserved3:2;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG TargetAddressValid:1;
-    ULONGLONG RequestIdValid:1;
-    ULONGLONG ResponderIdValid:1;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_CACHE_CHECK, *PERROR_CACHE_CHECK;
-
-#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
-
-typedef enum _ERROR_TLB_CHECK_OPERATION {
-  TlbUnknownOp = 0,
-  TlbAccessWithLoad = 1,
-  TlbAccessWithStore = 2,
-  TlbAccessWithInstructionFetch = 3,
-  TlbAccessWithDataPrefetch = 4,
-  TlbShootDown = 5,
-  TlbProbe = 6,
-  TlbVhptFill = 7,
-  TlbPurge = 8,
-} ERROR_TLB_CHECK_OPERATION;
-
-typedef union _ERROR_TLB_CHECK {
-  ULONGLONG TlbCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG TRSlot:8;
-    ULONGLONG TRSlotValid:1;
-    ULONGLONG Reserved1:1;
-    ULONGLONG Level:2;
-    ULONGLONG Reserved2:4;
-    ULONGLONG DataTransReg:1;
-    ULONGLONG InstructionTransReg:1;
-    ULONGLONG DataTransCache:1;
-    ULONGLONG InstructionTransCache:1;
-    ULONGLONG Operation:4;
-    ULONGLONG Reserved3:30;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG TargetAddressValid:1;
-    ULONGLONG RequestIdValid:1;
-    ULONGLONG ResponderIdValid:1;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_TLB_CHECK, *PERROR_TLB_CHECK;
-
-typedef enum _ERROR_BUS_CHECK_OPERATION {
-  BusUnknownOp = 0,
-  BusPartialRead = 1,
-  BusPartialWrite = 2,
-  BusFullLineRead = 3,
-  BusFullLineWrite = 4,
-  BusWriteBack = 5,
-  BusSnoopProbe = 6,
-  BusIncomingPtcG = 7,
-  BusWriteCoalescing = 8,
-} ERROR_BUS_CHECK_OPERATION;
-
-#if (NTDDI_VERSION >= NTDDI_VISTA)
-
-typedef union _ERROR_BUS_CHECK {
-  ULONGLONG BusCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG Size:5;
-    ULONGLONG Internal:1;
-    ULONGLONG External:1;
-    ULONGLONG CacheTransfer:1;
-    ULONGLONG Type:8;
-    ULONGLONG Severity:5;
-    ULONGLONG Hierarchy:2;
-    ULONGLONG DP:1;
-    ULONGLONG Status:8;
-    ULONGLONG Reserved1:22;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG TargetAddressValid:1;
-    ULONGLONG RequestIdValid:1;
-    ULONGLONG ResponderIdValid:1;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_BUS_CHECK, *PERROR_BUS_CHECK;
-
-#else
-
-typedef union _ERROR_BUS_CHECK {
-  ULONGLONG BusCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG Size:5;
-    ULONGLONG Internal:1;
-    ULONGLONG External:1;
-    ULONGLONG CacheTransfer:1;
-    ULONGLONG Type:8;
-    ULONGLONG Severity:5;
-    ULONGLONG Hierarchy:2;
-    ULONGLONG Reserved1:1;
-    ULONGLONG Status:8;
-    ULONGLONG Reserved2:22;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG TargetAddressValid:1;
-    ULONGLONG RequestIdValid:1;
-    ULONGLONG ResponderIdValid:1;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_BUS_CHECK, *PERROR_BUS_CHECK;
-
-#endif
-
-typedef enum _ERROR_REGFILE_CHECK_IDENTIFIER {
-  RegFileUnknownId = 0,
-  GeneralRegisterBank1 = 1,
-  GeneralRegisterBank0 = 2,
-  FloatingPointRegister = 3,
-  BranchRegister = 4,
-  PredicateRegister = 5,
-  ApplicationRegister = 6,
-  ControlRegister = 7,
-  RegionRegister = 8,
-  ProtectionKeyRegister = 9,
-  DataBreakPointRegister = 10,
-  InstructionBreakPointRegister = 11,
-  PerformanceMonitorControlRegister = 12,
-  PerformanceMonitorDataRegister = 13,
-} ERROR_REGFILE_CHECK_IDENTIFIER;
-
-typedef enum _ERROR_REGFILE_CHECK_OPERATION {
-  RegFileUnknownOp = 0,
-  RegFileRead = 1,
-  RegFileWrite = 2,
-} ERROR_REGFILE_CHECK_OPERATION;
-
-typedef union _ERROR_REGFILE_CHECK {
-  ULONGLONG RegFileCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG Identifier:4;
-    ULONGLONG Operation:4;
-    ULONGLONG RegisterNumber:7;
-    ULONGLONG RegisterNumberValid:1;
-    ULONGLONG Reserved1:38;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG Reserved2:3;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_REGFILE_CHECK, *PERROR_REGFILE_CHECK;
-
-#if (NTDDK_VERSION <= WINXP)
-typedef enum _ERROR_MS_CHECK_OPERATION {
-  MsUnknownOp = 0,
-  MsReadOrLoad = 1,
-  MsWriteOrStore = 2
-} ERROR_MS_CHECK_OPERATION;
-#else
-typedef enum _ERROR_MS_CHECK_OPERATION {
-  MsUnknownOp = 0,
-  MsReadOrLoad = 1,
-  MsWriteOrStore = 2,
-  MsOverTemperature = 3,
-  MsNormalTemperature = 4
-} ERROR_MS_CHECK_OPERATION;
-#endif
-
-typedef union _ERROR_MS_CHECK {
-  ULONGLONG MsCheck;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG StructureIdentifier:5;
-    ULONGLONG Level:3;
-    ULONGLONG ArrayId:4;
-    ULONGLONG Operation:4;
-    ULONGLONG Way:6;
-    ULONGLONG WayValid:1;
-    ULONGLONG IndexValid:1;
-    ULONGLONG Reserved1:8;
-    ULONGLONG Index:8;
-    ULONGLONG Reserved2:14;
-    ULONGLONG InstructionSet:1;
-    ULONGLONG InstructionSetValid:1;
-    ULONGLONG PrivilegeLevel:2;
-    ULONGLONG PrivilegeLevelValid:1;
-    ULONGLONG MachineCheckCorrected:1;
-    ULONGLONG TargetAddressValid:1;
-    ULONGLONG RequestIdValid:1;
-    ULONGLONG ResponderIdValid:1;
-    ULONGLONG PreciseIPValid:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_MS_CHECK, *PERROR_MS_CHECK;
-
-typedef union _ERROR_CHECK_INFO {
-  ULONGLONG CheckInfo;
-  ERROR_CACHE_CHECK CacheCheck;
-  ERROR_TLB_CHECK TlbCheck;
-  ERROR_BUS_CHECK BusCheck;
-  ERROR_REGFILE_CHECK RegFileCheck;
-  ERROR_MS_CHECK MsCheck;
-} ERROR_CHECK_INFO, *PERROR_CHECK_INFO;
-
-typedef struct _ERROR_MODINFO {
-  ERROR_MODINFO_VALID Valid;
-  ERROR_CHECK_INFO CheckInfo;
-  ULONGLONG RequestorId;
-  ULONGLONG ResponderId;
-  ULONGLONG TargetId;
-  ULONGLONG PreciseIP;
-} ERROR_MODINFO, *PERROR_MODINFO;
-
-typedef union _ERROR_PROCESSOR_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorMap:1;
-    ULONGLONG StateParameter:1;
-    ULONGLONG CRLid:1;
-    ULONGLONG StaticStruct:1;
-    ULONGLONG CacheCheckNum:4;
-    ULONGLONG TlbCheckNum:4;
-    ULONGLONG BusCheckNum:4;
-    ULONGLONG RegFileCheckNum:4;
-    ULONGLONG MsCheckNum:4;
-    ULONGLONG CpuIdInfo:1;
-    ULONGLONG Reserved:39;
-  } DUMMYSTRUCTNAME;
-} ERROR_PROCESSOR_VALID, *PERROR_PROCESSOR_VALID;
-
-typedef union _ERROR_PROCESSOR_ERROR_MAP {
-  ULONGLONG ErrorMap;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG   Cid:4;
-    ULONGLONG   Tid:4;
-    ULONGLONG   Eic:4;
-    ULONGLONG   Edc:4;
-    ULONGLONG   Eit:4;
-    ULONGLONG   Edt:4;
-    ULONGLONG   Ebh:4;
-    ULONGLONG   Erf:4;
-    ULONGLONG   Ems:16;
-    ULONGLONG   Reserved:16;
-  } DUMMYSTRUCTNAME;
-} ERROR_PROCESSOR_ERROR_MAP, *PERROR_PROCESSOR_ERROR_MAP;
-
-typedef ERROR_PROCESSOR_ERROR_MAP    _ERROR_PROCESSOR_LEVEL_INDEX;
-typedef _ERROR_PROCESSOR_LEVEL_INDEX ERROR_PROCESSOR_LEVEL_INDEX, *PERROR_PROCESSOR_LEVEL_INDEX;
-
-typedef union _ERROR_PROCESSOR_STATE_PARAMETER {
-  ULONGLONG   StateParameter;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG reserved0:2;
-    ULONGLONG rz:1;
-    ULONGLONG ra:1;
-    ULONGLONG me:1;
-    ULONGLONG mn:1;
-    ULONGLONG sy:1;
-    ULONGLONG co:1;
-    ULONGLONG ci:1;
-    ULONGLONG us:1;
-    ULONGLONG hd:1;
-    ULONGLONG tl:1;
-    ULONGLONG mi:1;
-    ULONGLONG pi:1;
-    ULONGLONG pm:1;
-    ULONGLONG dy:1;
-    ULONGLONG in:1;
-    ULONGLONG rs:1;
-    ULONGLONG cm:1;
-    ULONGLONG ex:1;
-    ULONGLONG cr:1;
-    ULONGLONG pc:1;
-    ULONGLONG dr:1;
-    ULONGLONG tr:1;
-    ULONGLONG rr:1;
-    ULONGLONG ar:1;
-    ULONGLONG br:1;
-    ULONGLONG pr:1;
-    ULONGLONG fp:1;
-    ULONGLONG b1:1;
-    ULONGLONG b0:1;
-    ULONGLONG gr:1;
-    ULONGLONG dsize:16;
-    ULONGLONG reserved1:11;
-    ULONGLONG cc:1;
-    ULONGLONG tc:1;
-    ULONGLONG bc:1;
-    ULONGLONG rc:1;
-    ULONGLONG uc:1;
-  } DUMMYSTRUCTNAME;
-} ERROR_PROCESSOR_STATE_PARAMETER, *PERROR_PROCESSOR_STATE_PARAMETER;
-
-typedef union _PROCESSOR_LOCAL_ID {
-  ULONGLONG LocalId;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG reserved:16;
-    ULONGLONG eid:8;
-    ULONGLONG id:8;
-    ULONGLONG ignored:32;
-  } DUMMYSTRUCTNAME;
-} PROCESSOR_LOCAL_ID, *PPROCESSOR_LOCAL_ID;
-
-typedef struct _ERROR_PROCESSOR_MS {
-  ULONGLONG MsError[1];
-} ERROR_PROCESSOR_MS, *PERROR_PROCESSOR_MS;
-
-typedef struct _ERROR_PROCESSOR_CPUID_INFO {
-  ULONGLONG CpuId0;
-  ULONGLONG CpuId1;
-  ULONGLONG CpuId2;
-  ULONGLONG CpuId3;
-  ULONGLONG CpuId4;
-  ULONGLONG Reserved;
-} ERROR_PROCESSOR_CPUID_INFO, *PERROR_PROCESSOR_CPUID_INFO;
-
-typedef union _ERROR_PROCESSOR_STATIC_INFO_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG MinState:1;
-    ULONGLONG BR:1;
-    ULONGLONG CR:1;
-    ULONGLONG AR:1;
-    ULONGLONG RR:1;
-    ULONGLONG FR:1;
-    ULONGLONG Reserved:58;
-  } DUMMYSTRUCTNAME;
-} ERROR_PROCESSOR_STATIC_INFO_VALID, *PERROR_PROCESSOR_STATIC_INFO_VALID;
-
-typedef struct _ERROR_PROCESSOR_STATIC_INFO {
-  ERROR_PROCESSOR_STATIC_INFO_VALID Valid;
-  UCHAR MinState[1024];
-  ULONGLONG BR[8];
-  ULONGLONG CR[128];
-  ULONGLONG AR[128];
-  ULONGLONG RR[8];
-  ULONGLONG FR[2 * 128];
-} ERROR_PROCESSOR_STATIC_INFO, *PERROR_PROCESSOR_STATIC_INFO;
-
-typedef struct _ERROR_PROCESSOR {
-  ERROR_SECTION_HEADER Header;
-  ERROR_PROCESSOR_VALID Valid;
-  ERROR_PROCESSOR_ERROR_MAP ErrorMap;
-  ERROR_PROCESSOR_STATE_PARAMETER StateParameter;
-  PROCESSOR_LOCAL_ID CRLid;
-} ERROR_PROCESSOR, *PERROR_PROCESSOR;
-
-#define ERROR_PROCESSOR_STATE_PARAMETER_CACHE_CHECK_SHIFT         59
-#define ERROR_PROCESSOR_STATE_PARAMETER_CACHE_CHECK_MASK          0x1
-#define ERROR_PROCESSOR_STATE_PARAMETER_TLB_CHECK_SHIFT           60
-#define ERROR_PROCESSOR_STATE_PARAMETER_TLB_CHECK_MASK            0x1
-#define ERROR_PROCESSOR_STATE_PARAMETER_BUS_CHECK_SHIFT           61
-#define ERROR_PROCESSOR_STATE_PARAMETER_BUS_CHECK_MASK            0x1
-#define ERROR_PROCESSOR_STATE_PARAMETER_REG_CHECK_SHIFT           62
-#define ERROR_PROCESSOR_STATE_PARAMETER_REG_CHECK_MASK            0x1
-#define ERROR_PROCESSOR_STATE_PARAMETER_MICROARCH_CHECK_SHIFT     63
-#define ERROR_PROCESSOR_STATE_PARAMETER_MICROARCH_CHECK_MASK      0x1
-
-#define ERROR_PROCESSOR_STATE_PARAMETER_UNKNOWN_CHECK_SHIFT       ERROR_PROCESSOR_STATE_PARAMETER_MICROARCH_CHECK_SHIFT
-#define ERROR_PROCESSOR_STATE_PARAMETER_UNKNOWN_CHECK_MASK        ERROR_PROCESSOR_STATE_PARAMETER_MICROARCH_CHECK_MASK
-
-typedef enum _ERR_TYPES {
-  ERR_INTERNAL = 1,
-  ERR_BUS = 16,
-  ERR_MEM = 4,
-  ERR_TLB = 5,
-  ERR_CACHE = 6,
-  ERR_FUNCTION = 7,
-  ERR_SELFTEST = 8,
-  ERR_FLOW = 9,
-  ERR_MAP = 17,
-  ERR_IMPROPER = 18,
-  ERR_UNIMPL = 19,
-  ERR_LOL = 20,
-  ERR_RESPONSE = 21,
-  ERR_PARITY = 22,
-  ERR_PROTOCOL = 23,
-  ERR_ERROR = 24,
-  ERR_TIMEOUT = 25,
-  ERR_POISONED = 26,
-} _ERR_TYPE;
-
-typedef union _ERROR_STATUS {
-  ULONGLONG Status;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG Reserved0:8;
-    ULONGLONG Type:8;
-    ULONGLONG Address:1;
-    ULONGLONG Control:1;
-    ULONGLONG Data:1;
-    ULONGLONG Responder:1;
-    ULONGLONG Requestor:1;
-    ULONGLONG FirstError:1;
-    ULONGLONG Overflow:1;
-    ULONGLONG Reserved1:41;
-  } DUMMYSTRUCTNAME;
-} ERROR_STATUS, *PERROR_STATUS;
-
-typedef struct _ERROR_OEM_DATA {
-  USHORT Length;
-} ERROR_OEM_DATA, *PERROR_OEM_DATA;
-
-typedef union _ERROR_BUS_SPECIFIC_DATA {
-  ULONGLONG BusSpecificData;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG LockAsserted:1;
-    ULONGLONG DeferLogged:1;
-    ULONGLONG IOQEmpty:1;
-    ULONGLONG DeferredTransaction:1;
-    ULONGLONG RetriedTransaction:1;
-    ULONGLONG MemoryClaimedTransaction:1;
-    ULONGLONG IOClaimedTransaction:1;
-    ULONGLONG ResponseParitySignal:1;
-    ULONGLONG DeferSignal:1;
-    ULONGLONG HitMSignal:1;
-    ULONGLONG HitSignal:1;
-    ULONGLONG RequestBusFirstCycle:6;
-    ULONGLONG RequestBusSecondCycle:6;
-    ULONGLONG AddressParityBusFirstCycle:2;
-    ULONGLONG AddressParityBusSecondCycle:2;
-    ULONGLONG ResponseBus:3;
-    ULONGLONG RequestParitySignalFirstCycle:1;
-    ULONGLONG RequestParitySignalSecondCycle:1;
-    ULONGLONG Reserved:32;
-  } DUMMYSTRUCTNAME;
-} ERROR_BUS_SPECIFIC_DATA, *PERROR_BUS_SPECIFIC_DATA;
-
-#define ERROR_MEMORY_GUID {0xe429faf2, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_MEMORY_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorStatus:1;
-    ULONGLONG PhysicalAddress:1;
-    ULONGLONG AddressMask:1;
-    ULONGLONG Node:1;
-    ULONGLONG Card:1;
-    ULONGLONG Module:1;
-    ULONGLONG Bank:1;
-    ULONGLONG Device:1;
-    ULONGLONG Row:1;
-    ULONGLONG Column:1;
-    ULONGLONG BitPosition:1;
-    ULONGLONG RequestorId:1;
-    ULONGLONG ResponderId:1;
-    ULONGLONG TargetId:1;
-    ULONGLONG BusSpecificData:1;
-    ULONGLONG OemId:1;
-    ULONGLONG OemData:1;
-    ULONGLONG Reserved:47;
-  } DUMMYSTRUCTNAME;
-} ERROR_MEMORY_VALID, *PERROR_MEMORY_VALID;
-
-typedef struct _ERROR_MEMORY {
-  ERROR_SECTION_HEADER Header;
-  ERROR_MEMORY_VALID Valid;
-  ERROR_STATUS ErrorStatus;
-  ULONGLONG PhysicalAddress;
-  ULONGLONG PhysicalAddressMask;
-  USHORT Node;
-  USHORT Card;
-  USHORT Module;
-  USHORT Bank;
-  USHORT Device;
-  USHORT Row;
-  USHORT Column;
-  USHORT BitPosition;
-  ULONGLONG RequestorId;
-  ULONGLONG ResponderId;
-  ULONGLONG TargetId;
-  ULONGLONG BusSpecificData;
-  UCHAR OemId[16];
-  ERROR_OEM_DATA OemData;
-} ERROR_MEMORY, *PERROR_MEMORY;
-
-#define ERROR_PCI_BUS_GUID {0xe429faf4, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_PCI_BUS_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorStatus:1;
-    ULONGLONG ErrorType:1;
-    ULONGLONG Id:1;
-    ULONGLONG Address:1;
-    ULONGLONG Data:1;
-    ULONGLONG CmdType:1;
-    ULONGLONG RequestorId:1;
-    ULONGLONG ResponderId:1;
-    ULONGLONG TargetId:1;
-    ULONGLONG OemId:1;
-    ULONGLONG OemData:1;
-    ULONGLONG Reserved:53;
-  } DUMMYSTRUCTNAME;
-} ERROR_PCI_BUS_VALID, *PERROR_PCI_BUS_VALID;
-
-typedef struct _ERROR_PCI_BUS_TYPE {
-  UCHAR Type;
-  UCHAR Reserved;
-} ERROR_PCI_BUS_TYPE, *PERROR_PCI_BUS_TYPE;
-
-#define PciBusUnknownError       ((UCHAR)0)
-#define PciBusDataParityError    ((UCHAR)1)
-#define PciBusSystemError        ((UCHAR)2)
-#define PciBusMasterAbort        ((UCHAR)3)
-#define PciBusTimeOut            ((UCHAR)4)
-#define PciMasterDataParityError ((UCHAR)5)
-#define PciAddressParityError    ((UCHAR)6)
-#define PciCommandParityError    ((UCHAR)7)
-
-typedef struct _ERROR_PCI_BUS_ID {
-  UCHAR BusNumber;
-  UCHAR SegmentNumber;
-} ERROR_PCI_BUS_ID, *PERROR_PCI_BUS_ID;
-
-typedef struct _ERROR_PCI_BUS {
-  ERROR_SECTION_HEADER Header;
-  ERROR_PCI_BUS_VALID Valid;
-  ERROR_STATUS ErrorStatus;
-  ERROR_PCI_BUS_TYPE Type;
-  ERROR_PCI_BUS_ID Id;
-  UCHAR Reserved[4];
-  ULONGLONG Address;
-  ULONGLONG Data;
-  ULONGLONG CmdType;
-  ULONGLONG RequestorId;
-  ULONGLONG ResponderId;
-  ULONGLONG TargetId;
-  UCHAR OemId[16];
-  ERROR_OEM_DATA OemData;
-} ERROR_PCI_BUS, *PERROR_PCI_BUS;
-
-#define ERROR_PCI_COMPONENT_GUID {0xe429faf6, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_PCI_COMPONENT_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorStatus:1;
-    ULONGLONG Info:1;
-    ULONGLONG MemoryMappedRegistersPairs:1;
-    ULONGLONG ProgrammedIORegistersPairs:1;
-    ULONGLONG RegistersDataPairs:1;
-    ULONGLONG OemData:1;
-    ULONGLONG Reserved:58;
-  } DUMMYSTRUCTNAME;
-} ERROR_PCI_COMPONENT_VALID, *PERROR_PCI_COMPONENT_VALID;
-
-typedef struct _ERROR_PCI_COMPONENT_INFO {
-  USHORT VendorId;
-  USHORT DeviceId;
-  UCHAR ClassCodeInterface;
-  UCHAR ClassCodeSubClass;
-  UCHAR ClassCodeBaseClass;
-  UCHAR FunctionNumber;
-  UCHAR DeviceNumber;
-  UCHAR BusNumber;
-  UCHAR SegmentNumber;
-  UCHAR Reserved0;
-  ULONG Reserved1;
-} ERROR_PCI_COMPONENT_INFO, *PERROR_PCI_COMPONENT_INFO;
-
-typedef struct _ERROR_PCI_COMPONENT {
-  ERROR_SECTION_HEADER Header;
-  ERROR_PCI_COMPONENT_VALID Valid;
-  ERROR_STATUS ErrorStatus;
-  ERROR_PCI_COMPONENT_INFO Info;
-  ULONG MemoryMappedRegistersPairs;
-  ULONG ProgrammedIORegistersPairs;
-} ERROR_PCI_COMPONENT, *PERROR_PCI_COMPONENT;
-
-#define ERROR_SYSTEM_EVENT_LOG_GUID {0xe429faf3, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_SYSTEM_EVENT_LOG_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG RecordId:1;
-    ULONGLONG RecordType:1;
-    ULONGLONG GeneratorId:1;
-    ULONGLONG EVMRev:1;
-    ULONGLONG SensorType:1;
-    ULONGLONG SensorNum:1;
-    ULONGLONG EventDirType:1;
-    ULONGLONG EventData1:1;
-    ULONGLONG EventData2:1;
-    ULONGLONG EventData3:1;
-    ULONGLONG Reserved:54;
-  } DUMMYSTRUCTNAME;
-} ERROR_SYSTEM_EVENT_LOG_VALID, *PSYSTEM_EVENT_LOG_VALID;
-
-typedef struct _ERROR_SYSTEM_EVENT_LOG {
-  ERROR_SECTION_HEADER Header;
-  ERROR_SYSTEM_EVENT_LOG_VALID Valid;
-  USHORT RecordId;
-  UCHAR RecordType;
-  ULONG TimeStamp;
-  USHORT GeneratorId;
-  UCHAR EVMRevision;
-  UCHAR SensorType;
-  UCHAR SensorNumber;
-  UCHAR EventDir;
-  UCHAR Data1;
-  UCHAR Data2;
-  UCHAR Data3;
-} ERROR_SYSTEM_EVENT_LOG, *PERROR_SYSTEM_EVENT_LOG;
-
-#define ERROR_SMBIOS_GUID {0xe429faf5, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_SMBIOS_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG EventType:1;
-    ULONGLONG Length:1;
-    ULONGLONG TimeStamp:1;
-    ULONGLONG OemData:1;
-    ULONGLONG Reserved:60;
-  } DUMMYSTRUCTNAME;
-} ERROR_SMBIOS_VALID, *PERROR_SMBIOS_VALID;
-
-typedef UCHAR ERROR_SMBIOS_EVENT_TYPE, *PERROR_SMBIOS_EVENT_TYPE;
-
-typedef struct _ERROR_SMBIOS {
-  ERROR_SECTION_HEADER Header;
-  ERROR_SMBIOS_VALID Valid;
-  ERROR_SMBIOS_EVENT_TYPE EventType;
-  UCHAR Length;
-  ERROR_TIMESTAMP TimeStamp;
-  ERROR_OEM_DATA OemData;
-} ERROR_SMBIOS, *PERROR_SMBIOS;
-
-#define ERROR_PLATFORM_SPECIFIC_GUID {0xe429faf7, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_PLATFORM_SPECIFIC_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorStatus:1;
-    ULONGLONG RequestorId:1;
-    ULONGLONG ResponderId:1;
-    ULONGLONG TargetId:1;
-    ULONGLONG BusSpecificData:1;
-    ULONGLONG OemId:1;
-    ULONGLONG OemData:1;
-    ULONGLONG OemDevicePath:1;
-    ULONGLONG Reserved:56;
-  } DUMMYSTRUCTNAME;
-} ERROR_PLATFORM_SPECIFIC_VALID, *PERROR_PLATFORM_SPECIFIC_VALID;
-
-typedef struct _ERROR_PLATFORM_SPECIFIC {
-  ERROR_SECTION_HEADER Header;
-  ERROR_PLATFORM_SPECIFIC_VALID Valid;
-  ERROR_STATUS ErrorStatus;
-  ULONGLONG RequestorId;
-  ULONGLONG ResponderId;
-  ULONGLONG TargetId;
-  ERROR_BUS_SPECIFIC_DATA BusSpecificData;
-  UCHAR OemId[16];
-  ERROR_OEM_DATA OemData;
-} ERROR_PLATFORM_SPECIFIC, *PERROR_PLATFORM_SPECIFIC;
-
-#define ERROR_PLATFORM_BUS_GUID {0xe429faf9, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_PLATFORM_BUS_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorStatus:1;
-    ULONGLONG RequestorId:1;
-    ULONGLONG ResponderId:1;
-    ULONGLONG TargetId:1;
-    ULONGLONG BusSpecificData:1;
-    ULONGLONG OemId:1;
-    ULONGLONG OemData:1;
-    ULONGLONG OemDevicePath:1;
-    ULONGLONG Reserved:56;
-  } DUMMYSTRUCTNAME;
-} ERROR_PLATFORM_BUS_VALID, *PERROR_PLATFORM_BUS_VALID;
-
-typedef struct _ERROR_PLATFORM_BUS {
-  ERROR_SECTION_HEADER Header;
-  ERROR_PLATFORM_BUS_VALID Valid;
-  ERROR_STATUS ErrorStatus;
-  ULONGLONG RequestorId;
-  ULONGLONG ResponderId;
-  ULONGLONG TargetId;
-  ERROR_BUS_SPECIFIC_DATA BusSpecificData;
-  UCHAR OemId[16];
-  ERROR_OEM_DATA OemData;
-} ERROR_PLATFORM_BUS, *PERROR_PLATFORM_BUS;
-
-#define ERROR_PLATFORM_HOST_CONTROLLER_GUID {0xe429faf8, 0x3cb7, 0x11d4, {0xbc, 0xa7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
-
-typedef union _ERROR_PLATFORM_HOST_CONTROLLER_VALID {
-  ULONGLONG Valid;
-  _ANONYMOUS_STRUCT struct {
-    ULONGLONG ErrorStatus:1;
-    ULONGLONG RequestorId:1;
-    ULONGLONG ResponderId:1;
-    ULONGLONG TargetId:1;
-    ULONGLONG BusSpecificData:1;
-    ULONGLONG OemId:1;
-    ULONGLONG OemData:1;
-    ULONGLONG OemDevicePath:1;
-    ULONGLONG Reserved:56;
-  } DUMMYSTRUCTNAME;
-} ERROR_PLATFORM_HOST_CONTROLLER_VALID, *PERROR_PLATFORM_HOST_CONTROLLER_VALID;
-
-typedef struct _ERROR_PLATFORM_HOST_CONTROLLER {
-  ERROR_SECTION_HEADER Header;
-  ERROR_PCI_COMPONENT_VALID Valid;
-  ERROR_STATUS ErrorStatus;
-  ULONGLONG RequestorId;
-  ULONGLONG ResponderId;
-  ULONGLONG TargetId;
-  ERROR_BUS_SPECIFIC_DATA BusSpecificData;
-  UCHAR OemId[16];
-  ERROR_OEM_DATA OemData;
-} ERROR_PLATFORM_HOST_CONTROLLER, *PERROR_PLATFORM_HOST_CONTROLLER;
-
-typedef ERROR_RECORD_HEADER ERROR_LOGRECORD, *PERROR_LOGRECORD;
-typedef ERROR_RECORD_HEADER MCA_EXCEPTION, *PMCA_EXCEPTION;
-typedef ERROR_RECORD_HEADER CMC_EXCEPTION, *PCMC_EXCEPTION;
-typedef ERROR_RECORD_HEADER CPE_EXCEPTION, *PCPE_EXCEPTION;
-#if (NTDDI_VERSION > NTDDI_WINXP)
-typedef ERROR_RECORD_HEADER INIT_EXCEPTION, *PINIT_EXCEPTION;
-#endif
-
-#endif /* defined(_IA64_) */
-
-#endif /* defined(_X86_) || defined(_IA64_) || defined(_AMD64_) */