x64x86arm64ia64 / ntdllntoskrnl

_KTRAP_FRAME

← 10.0.28000.3231 22 builds latest →
struct _KTRAP_FRAME {
unsigned __int64 P1Home;/* 0x0 8 */
unsigned __int64 P2Home;/* 0x8 8 */
unsigned __int64 P3Home;/* 0x10 8 */
unsigned __int64 P4Home;/* 0x18 8 */
unsigned __int64 P5;/* 0x20 8 */
union {
char PreviousMode;/* 0x28 1 */
unsigned char InterruptRetpolineState;/* 0x28 1 */
};/* 0x28 1 */
unsigned char PreviousIrql;/* 0x29 1 */
union {
unsigned char FaultIndicator;/* 0x2a 1 */
unsigned char NmiMsrIbrs;/* 0x2a 1 */
unsigned char EventType;/* 0x2a 1 */
};/* 0x2a 1 */
unsigned char ExceptionActive;/* 0x2b 1 */
unsigned long MxCsr;/* 0x2c 4 */
unsigned __int64 Rax;/* 0x30 8 */
unsigned __int64 Rcx;/* 0x38 8 */
/* ── cacheline 1 boundary (64 bytes) ── */
unsigned __int64 Rdx;/* 0x40 8 */
unsigned __int64 R8;/* 0x48 8 */
unsigned __int64 R9;/* 0x50 8 */
unsigned __int64 R10;/* 0x58 8 */
unsigned __int64 R11;/* 0x60 8 */
union {
unsigned __int64 GsBase;/* 0x68 8 */
unsigned __int64 GsSwap;/* 0x68 8 */
unsigned __int64 VectorMask;/* 0x68 8 */
};/* 0x68 8 */
/* ── cacheline 2 boundary (128 bytes) ── */
/* ── cacheline 3 boundary (192 bytes) ── */
union {
unsigned __int64 FaultAddress;/* 0xd0 8 */
unsigned __int64 ContextRecord;/* 0xd0 8 */
};/* 0xd0 8 */
union {
struct {
unsigned __int64 Dr0;/* 0xd8 8 */
unsigned __int64 Dr1;/* 0xe0 8 */
unsigned __int64 Dr2;/* 0xe8 8 */
unsigned __int64 Dr3;/* 0xf0 8 */
unsigned __int64 Dr6;/* 0xf8 8 */
unsigned __int64 Dr7;/* 0x100 8 */
};/* 0xd8 48 */
struct {
unsigned __int64 ShadowStackFrame;/* 0xd8 8 */
unsigned __int64 Spare[5];/* 0xe0 40 */
};/* 0xd8 48 */
};/* 0xd8 48 */
/* ── cacheline 4 boundary (256 bytes) ── */
unsigned __int64 DebugControl;/* 0x108 8 */
unsigned __int64 LastBranchToRip;/* 0x110 8 */
unsigned __int64 LastBranchFromRip;/* 0x118 8 */
unsigned __int64 LastExceptionToRip;/* 0x120 8 */
unsigned __int64 LastExceptionFromRip;/* 0x128 8 */
unsigned short SegDs;/* 0x130 2 */
unsigned short SegEs;/* 0x132 2 */
unsigned short SegFs;/* 0x134 2 */
unsigned short SegGs;/* 0x136 2 */
unsigned __int64 TrapFrame;/* 0x138 8 */
/* ── cacheline 5 boundary (320 bytes) ── */
union {
struct {
unsigned long NmiPreviousSpecCtrl;/* 0x140 4 */
unsigned long NmiPreviousSpecCtrlPad;/* 0x144 4 */
};/* 0x140 8 */
unsigned __int64 Rbx;/* 0x140 8 */
};/* 0x140 8 */
unsigned __int64 Rdi;/* 0x148 8 */
unsigned __int64 Rsi;/* 0x150 8 */
unsigned __int64 Rbp;/* 0x158 8 */
union {
unsigned __int64 ErrorCode;/* 0x160 8 */
unsigned __int64 ExceptionFrame;/* 0x160 8 */
};/* 0x160 8 */
unsigned __int64 Rip;/* 0x168 8 */
union {
struct {
unsigned short SegCs;/* 0x170 2 */
unsigned char Fill0;/* 0x172 1 */
unsigned char Logging;/* 0x173 1 */
unsigned short Fill1[2];/* 0x174 4 */
};/* 0x170 8 */
struct {
unsigned __int64 FredSegCs : 16;/* 0x170:0 8 */
unsigned __int64 InterruptedCsl : 2;/* 0x170:16 8 */
unsigned __int64 KernelModeWaitForEndbranch : 1;/* 0x170:18 8 */
unsigned __int64 FredCsRsvdZ1 : 45;/* 0x170:19 8 */
};/* 0x170 8 */
};/* 0x170 8 */
unsigned long EFlags;/* 0x178 4 */
unsigned long Fill2;/* 0x17c 4 */
/* ── cacheline 6 boundary (384 bytes) ── */
unsigned __int64 Rsp;/* 0x180 8 */
union {
struct {
unsigned short SegSs;/* 0x188 2 */
unsigned short Fill3;/* 0x18a 2 */
unsigned long Fill4;/* 0x18c 4 */
};/* 0x188 8 */
struct {
unsigned long FredSegSs : 16;/* 0x188:0 4 */
unsigned long StiBlocking : 1;/* 0x188:16 4 */
unsigned long DbOnTf : 1;/* 0x188:17 4 */
unsigned long NmiUnblocking : 1;/* 0x188:18 4 */
unsigned long SegSsRsvdZ1 : 13;/* 0x188:19 4 */
union {
unsigned long EventInformation;/* 0x18c 4 */
struct {
unsigned long Vector : 8;/* 0x18c:0 4 */
unsigned long SegSsRsvdZ2 : 8;/* 0x18c:8 4 */
unsigned long FredEventType : 4;/* 0x18c:16 4 */
unsigned long SegSsRsvdZ3 : 4;/* 0x18c:20 4 */
unsigned long EnclaveInterruption : 1;/* 0x18c:24 4 */
unsigned long LongModeInterruption : 1;/* 0x18c:25 4 */
unsigned long NestedException : 1;/* 0x18c:26 4 */
unsigned long SegSsRsvdZ4 : 1;/* 0x18c:27 4 */
unsigned long InstructionLength : 4;/* 0x18c:28 4 */
};/* 0x18c 4 */
};/* 0x18c 4 */
};/* 0x188 8 */
};/* 0x188 8 */
};
size 400 (0x190)87 members0 holespadding 07 cachelines
Used in (2)