ReactOS 0.4.16-dev-424-ge4748fe
ketypes.h
Go to the documentation of this file.
1/*++ NDK Version: 0098
2
3Copyright (c) Alex Ionescu. All rights reserved.
4
5Header Name:
6
7 ketypes.h (AMD64)
8
9Abstract:
10
11 amd64 Type definitions for the Kernel services.
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16 Timo Kreuzer (timo.kreuzer@reactos.org) - Updated - 14-Aug-2008
17
18--*/
19
20#ifndef _AMD64_KETYPES_H
21#define _AMD64_KETYPES_H
22
23//
24// Dependencies
25//
26
27//
28// Kernel Feature Bits
29// See https://www.geoffchappell.com/studies/windows/km/ntoskrnl/structs/kprcb/featurebits.htm?tx=61&ts=0,1400
30//
31#define KF_SMEP 0x00000001 // Win 6.2
32#define KF_RDTSC 0x00000002 // From ks386.inc, ksamd64.inc
33#define KF_CR4 0x00000004 // From ks386.inc, ksamd64.inc
34#define KF_CMOV 0x00000008
35#define KF_GLOBAL_PAGE 0x00000010 // From ks386.inc, ksamd64.inc
36#define KF_LARGE_PAGE 0x00000020 // From ks386.inc, ksamd64.inc
37#define KF_MTRR 0x00000040
38#define KF_CMPXCHG8B 0x00000080 // From ks386.inc, ksamd64.inc
39#define KF_MMX 0x00000100
40#define KF_DTS 0x00000200 // Win 5.2-6.2
41#define KF_PAT 0x00000400
42#define KF_FXSR 0x00000800
43#define KF_FAST_SYSCALL 0x00001000 // From ks386.inc, ksamd64.inc
44#define KF_XMMI 0x00002000 // SSE
45#define KF_3DNOW 0x00004000
46#define KF_AMDK6MTRR 0x00008000 // Win 5.0-6.1
47#define KF_XSAVEOPT 0x00008000 // From KF_XSAVEOPT_BIT
48#define KF_XMMI64 0x00010000 // SSE2
49#define KF_BRANCH 0x00020000 // From ksamd64.inc, Win 6.1-6.2
50#define KF_00040000 0x00040000 // Unclear
51#define KF_SSE3 0x00080000 // Win 6.0+
52#define KF_CMPXCHG16B 0x00100000 // Win 6.0-6.2
53#define KF_AUTHENTICAMD 0x00200000 // Win 6.1+
54#define KF_ACNT2 0x00400000 // Win 6.1+
55#define KF_XSTATE 0x00800000 // From ksamd64.inc, Win 6.1+
56#define KF_GENUINE_INTEL 0x01000000 // Win 6.1+
57#define KF_02000000 0x02000000 // Unclear
58#define KF_SLAT 0x04000000 // Win 6.2+, Intel: EPT supported
59#define KF_VIRT_FIRMWARE_ENABLED 0x08000000 // Win 6.2+
60#define KF_RDWRFSGSBASE 0x10000000 // From ksamd64.inc KF_RDWRFSGSBASE_BIT (0x1C)
61#define KF_NX_BIT 0x20000000
62#define KF_NX_DISABLED 0x40000000
63#define KF_NX_ENABLED 0x80000000
64#define KF_RDRAND 0x0000000100000000ULL // Win 10.0+
65#define KF_SMAP 0x0000000200000000ULL // From ksamd64.inc
66#define KF_RDTSCP 0x0000000400000000ULL // Win 10.0+
67#define KF_HUGEPAGE 0x0000002000000000ULL // Win 10.0 1607+
68#define KF_XSAVES 0x0000004000000000ULL // From ksamd64.inc KF_XSAVES_BIT (0x26)
69#define KF_FPU_LEAKAGE 0x0000020000000000ULL // From ksamd64.inc KF_FPU_LEAKAGE_BIT (0x29)
70#define KF_CAT 0x0000100000000000ULL // From ksamd64.inc KF_CAT_BIT (0x02C)
71#define KF_CET_SS 0x0000400000000000ULL // From ksamd64.inc
72#define KF_SSSE3 0x0000800000000000ULL
73#define KF_SSE4_1 0x0001000000000000ULL
74#define KF_SSE4_2 0x0002000000000000ULL
75
76#define KF_XSAVEOPT_BIT 15 // From ksamd64.inc (0x0F -> 0x8000)
77#define KF_XSTATE_BIT 23 // From ksamd64.inc (0x17 -> 0x800000)
78#define KF_RDWRFSGSBASE_BIT 28 // From ksamd64.inc (0x1C -> 0x10000000)
79#define KF_XSAVES_BIT 38 // From ksamd64.inc (0x26 -> 0x4000000000)
80#define KF_FPU_LEAKAGE_BIT 41 // From ksamd64.inc (0x29 -> 0x20000000000)
81#define KF_CAT_BIT 44 // From ksamd64.inc (0x2C -> 0x100000000000)
82
83//
84// Double fault stack size
85//
86#define DOUBLE_FAULT_STACK_SIZE 0x2000
87
88//
89// CPU Vendors
90//
91typedef enum
92{
98
99//
100// Machine Types
101//
102#define MACHINE_TYPE_ISA 0x0000
103#define MACHINE_TYPE_EISA 0x0001
104#define MACHINE_TYPE_MCA 0x0002
105
106//
107// X86 80386 Segment Types
108//
109#define I386_TASK_GATE 0x5
110#define I386_TSS 0x9
111#define I386_ACTIVE_TSS 0xB
112#define I386_CALL_GATE 0xC
113#define I386_INTERRUPT_GATE 0xE
114#define I386_TRAP_GATE 0xF
115
116//
117// Selector Names
118//
119#define RPL_MASK 0x0003
120#define MODE_MASK 0x0001
121#define KGDT64_NULL 0x0000
122#define KGDT64_R0_CODE 0x0010
123#define KGDT64_R0_DATA 0x0018
124#define KGDT64_R3_CMCODE 0x0020
125#define KGDT64_R3_DATA 0x0028
126#define KGDT64_R3_CODE 0x0030
127#define KGDT64_SYS_TSS 0x0040
128#define KGDT64_R3_CMTEB 0x0050
129#define KGDT64_R0_LDT 0x0060
130
131//
132// CR0
133//
134#define CR0_PE 0x00000001
135#define CR0_MP 0x00000002
136#define CR0_EM 0x00000004
137#define CR0_TS 0x00000008
138#define CR0_ET 0x00000010
139#define CR0_NE 0x00000020
140#define CR0_WP 0x00010000
141#define CR0_AM 0x00040000
142#define CR0_NW 0x20000000
143#define CR0_CD 0x40000000
144#define CR0_PG 0x80000000
145
146//
147// CR4
148//
149#define CR4_VME 0x1
150#define CR4_PVI 0x2
151#define CR4_TSD 0x4
152#define CR4_DE 0x8
153#define CR4_PSE 0x10
154#define CR4_PAE 0x20
155#define CR4_MCE 0x40
156#define CR4_PGE 0x80
157#define CR4_FXSR 0x200
158#define CR4_XMMEXCPT 0x400
159#define CR4_CHANNELS 0x800
160#define CR4_XSAVE 0x40000
161
162//
163// DR7
164//
165#define DR7_LEGAL 0xFFFF0355
166#define DR7_ACTIVE 0x00000355
167#define DR7_TRACE_BRANCH 0x00000200
168#define DR7_LAST_BRANCH 0x00000100
169
170//
171// Debug flags
172//
173#define DEBUG_ACTIVE_DR7 0x0001
174#define DEBUG_ACTIVE_INSTRUMENTED 0x0002
175#define DEBUG_ACTIVE_DBG_INSTRUMENTED 0x0003
176#define DEBUG_ACTIVE_MINIMAL_THREAD 0x0004
177#define DEBUG_ACTIVE_PRIMARY_THREAD 0x0080
178#define DEBUG_ACTIVE_PRIMARY_THREAD_BIT 0x0007
179#define DEBUG_ACTIVE_PRIMARY_THREAD_LOCK_BIT 0x001F
180#define DEBUG_ACTIVE_SCHEDULED_THREAD 0x0040
181#define DEBUG_ACTIVE_SCHEDULED_THREAD_BIT 0x0006
182#define DEBUG_ACTIVE_SCHEDULED_THREAD_LOCK_BIT 0x001E
183#define DEBUG_ACTIVE_SCHEDULED_THREAD_LOCK 0x40000000
184
185//
186// EFlags
187//
188#define EFLAGS_CF 0x01L
189#define EFLAGS_ZF 0x40L
190#define EFLAGS_TF 0x100L
191#define EFLAGS_INTERRUPT_MASK 0x200L
192#define EFLAGS_DF 0x400L
193#define EFLAGS_IOPL 0x3000L
194#define EFLAGS_NESTED_TASK 0x4000L
195//#define EFLAGS_NF 0x4000
196#define EFLAGS_RF 0x10000
197#define EFLAGS_V86_MASK 0x20000
198#define EFLAGS_ALIGN_CHECK 0x40000
199#define EFLAGS_VIF 0x80000
200#define EFLAGS_VIP 0x100000
201#define EFLAGS_ID 0x200000
202#define EFLAGS_USER_SANITIZE 0x3F4DD7
203#define EFLAG_SIGN 0x8000
204#define EFLAG_ZERO 0x4000
205#define EFLAGS_TF_MASK 0x0100
206#define EFLAGS_TF_SHIFT 0x0008
207#define EFLAGS_ID_MASK 0x200000
208#define EFLAGS_IF_MASK 0x0200
209#define EFLAGS_IF_SHIFT 0x0009
210
211//
212// MXCSR Floating Control/Status Bit Masks
213//
214#define XSW_INVALID_OPERATION 0x0001
215#define XSW_DENORMAL 0x0002
216#define XSW_ZERO_DIVIDE 0x0004
217#define XSW_OVERFLOW 0x0008
218#define XSW_UNDERFLOW 0x0010
219#define XSW_PRECISION 0x0020
220#define XCW_INVALID_OPERATION 0x0080
221#define XCW_DENORMAL 0x0100
222#define XCW_ZERO_DIVIDE 0x0200
223#define XCW_OVERFLOW 0x0400
224#define XCW_UNDERFLOW 0x0800
225#define XCW_PRECISION 0x1000
226#define XCW_ROUND_CONTROL 0x6000
227#define XCW_FLUSH_ZERO 0x8000
228#define XSW_ERROR_MASK 0x003F
229#define XSW_ERROR_SHIFT 7
230
231//
232// Legacy floating status word bit masks.
233//
234#define FSW_INVALID_OPERATION 0x0001
235#define FSW_DENORMAL 0x0002
236#define FSW_ZERO_DIVIDE 0x0004
237#define FSW_OVERFLOW 0x0008
238#define FSW_UNDERFLOW 0x0010
239#define FSW_PRECISION 0x0020
240#define FSW_STACK_FAULT 0x0040
241#define FSW_ERROR_SUMMARY 0x0080
242#define FSW_CONDITION_CODE_0 0x0100
243#define FSW_CONDITION_CODE_1 0x0200
244#define FSW_CONDITION_CODE_2 0x0400
245#define FSW_CONDITION_CODE_3 0x4000
246#define FSW_ERROR_MASK 0x003F
247
248//
249// Machine Specific Registers
250//
251#define MSR_EFER 0xC0000080
252#define MSR_STAR 0xC0000081
253#define MSR_LSTAR 0xC0000082
254#define MSR_CSTAR 0xC0000083
255#define MSR_SYSCALL_MASK 0xC0000084
256#define MSR_FS_BASE 0xC0000100
257#define MSR_GS_BASE 0xC0000101
258#define MSR_GS_SWAP 0xC0000102
259#define MSR_MCG_STATUS 0x017A
260#define MSR_AMD_ACCESS 0x9C5A203A
261#define MSR_IA32_MISC_ENABLE 0x000001A0
262#define MSR_LAST_BRANCH_FROM 0x01DB
263#define MSR_LAST_BRANCH_TO 0x01DC
264#define MSR_LAST_EXCEPTION_FROM 0x01DD
265#define MSR_LAST_EXCEPTION_TO 0x01DE
266
267//
268// Caching values for the PAT MSR
269//
270#define PAT_UC 0ULL
271#define PAT_WC 1ULL
272#define PAT_WT 4ULL
273#define PAT_WP 5ULL
274#define PAT_WB 6ULL
275#define PAT_UCM 7ULL
276
277//
278// Flags in MSR_EFER
279//
280#define MSR_SCE 0x0001
281#define MSR_LME 0x0100
282#define MSR_LMA 0x0400
283#define MSR_NXE 0x0800
284#define MSR_PAT 0x0277
285#define MSR_DEBUG_CTL 0x01D9
286
287//
288// Flags in MSR_IA32_MISC_ENABLE
289//
290#define MSR_XD_ENABLE_MASK 0xFFFFFFFB
291
292//
293// Flags in MSR_DEBUG_CTL
294//
295#define MSR_DEBUG_CTL_LBR 0x0001
296#define MSR_DEBUG_CTL_BTF 0x0002
297
298//
299// IPI Types
300//
301#define IPI_APC 1
302#define IPI_DPC 2
303#define IPI_FREEZE 4
304#define IPI_PACKET_READY 8
305#define IPI_SYNCH_REQUEST 16
306
307//
308// Flags for KPRCB::IpiFrozen
309//
310// Values shown with !ipi extension in WinDbg:
311// 0 = [Running], 1 = [Unknown], 2 = [Frozen], 3 = [Thaw], 4 = [Freeze Owner]
312// 5 = [Target Freeze], 6-15 = [Unknown]
313// 0x20 = [Active] (flag)
314//
315#define IPI_FROZEN_STATE_RUNNING 0
316#define IPI_FROZEN_STATE_FROZEN 2
317#define IPI_FROZEN_STATE_THAW 3
318#define IPI_FROZEN_STATE_OWNER 4
319#define IPI_FROZEN_STATE_TARGET_FREEZE 5
320#define IPI_FROZEN_FLAG_ACTIVE 0x20
321
322//
323// PRCB Flags
324//
325#define PRCB_MINOR_VERSION 1
326#define PRCB_MAJOR_VERSION 1
327#define PRCB_BUILD_DEBUG 1
328#define PRCB_BUILD_UNIPROCESSOR 2
329
330//
331// Exception active flags
332//
333#define KEXCEPTION_ACTIVE_INTERRUPT_FRAME 0x0000
334#define KEXCEPTION_ACTIVE_EXCEPTION_FRAME 0x0001
335#define KEXCEPTION_ACTIVE_SERVICE_FRAME 0x0002
336
337//
338// HAL Variables
339//
340#define PRIMARY_VECTOR_BASE 0x30
341#define MAXIMUM_IDTVECTOR 0xFF
342#define INITIAL_STALL_COUNT 100
343#define MM_HAL_VA_START 0xFFFFFFFFFFC00000ULL /* This is Vista+ */
344#define MM_HAL_VA_END 0xFFFFFFFFFFFFFFFFULL
345#define APIC_BASE 0xFFFFFFFFFFFE0000ULL
346
347//
348// IOPM Definitions
349//
350#define IO_ACCESS_MAP_NONE 0
351#define IOPM_OFFSET FIELD_OFFSET(KTSS, IoMaps[0].IoMap)
352#define KiComputeIopmOffset(MapNumber) \
353 (MapNumber == IO_ACCESS_MAP_NONE) ? \
354 (USHORT)(sizeof(KTSS)) : \
355 (USHORT)(FIELD_OFFSET(KTSS, IoMaps[MapNumber-1].IoMap))
356
357//
358// Static Kernel-Mode Address start (use MM_KSEG0_BASE for actual)
359//
360#define KSEG0_BASE 0xfffff80000000000ULL
361
362#define NMI_STACK_SIZE 0x2000
363#define ISR_STACK_SIZE 0x6000
364
365/* Number of bytes reserved for syscall parameters */
366#define MAX_SYSCALL_PARAM_SIZE (16 * 8)
367
368//
369// Synchronization-level IRQL
370//
371#ifndef CONFIG_SMP
372#define SYNCH_LEVEL DISPATCH_LEVEL
373#else
374#define SYNCH_LEVEL (IPI_LEVEL - 2)
375#endif
376
377//
378// Number of pool lookaside lists per pool in the PRCB
379//
380#define NUMBER_POOL_LOOKASIDE_LISTS 32
381
382//
383// Structure for CPUID
384//
385typedef union _CPU_INFO
386{
388 struct
389 {
394 };
396
397//
398// Trap Frame Definition
399//
400typedef struct _KTRAP_FRAME
401{
419 union
420 {
423 };
430 union
431 {
435 };
442 union
443 {
444 struct
445 {
451 };
452 struct
453 {
456 };
457 };
467 union
468 {
472 };
485
486//
487// Dummy LDT_ENTRY
488//
489#ifndef _LDT_ENTRY_DEFINED
490#define _LDT_ENTRY_DEFINED
492#endif
493
494//
495// GDT Entry Definition
496//
497typedef union _KGDTENTRY64
498{
499 struct
500 {
503 union
504 {
505 struct
506 {
512 struct
513 {
525 };
528 };
531#define KGDTENTRY KGDTENTRY64
532#define PKGDTENTRY PKGDTENTRY64
533
534//
535// IDT Entry Access Definition
536//
537typedef struct _KIDT_ACCESS
538{
539 union
540 {
541 struct
542 {
548 };
550 };
552
553//
554// IDT Entry Definition
555//
556typedef union _KIDTENTRY64
557{
558 struct
559 {
570 };
573#define KIDTENTRY KIDTENTRY64
574#define PKIDTENTRY PKIDTENTRY64
575
576typedef struct _KDESCRIPTOR
577{
582
583#ifndef NTOS_MODE_USER
584
585//
586// Special Registers Structure (outside of CONTEXT)
587//
589{
618
619//
620// Processor State Data
621//
622typedef struct _KPROCESSOR_STATE
623{
627
628#if (NTDDI_VERSION < NTDDI_LONGHORN)
629#define GENERAL_LOOKASIDE_POOL PP_LOOKASIDE_LIST
630#endif
631
632typedef struct _KREQUEST_PACKET
633{
637
638typedef struct _REQUEST_MAILBOX
639{
644
645//
646// Processor Region Control Block
647//
648typedef struct _KPRCB
649{
651#if (NTDDI_VERSION >= NTDDI_LONGHORN)
653#else
656#endif
662#if (NTDDI_VERSION >= NTDDI_LONGHORN)
666#else
667 UINT64 UserRsp;
668#endif
675#if (NTDDI_VERSION >= NTDDI_LONGHORN)
676 union
677 {
679 struct
680 {
683 };
684 };
685#else
687#endif
694#if (NTDDI_VERSION >= NTDDI_LONGHORN)
697#else
700#endif
702#if (NTDDI_VERSION >= NTDDI_LONGHORN)
704#else
706 UCHAR PrcbPad0x[3];
707#endif
709#if (NTDDI_VERSION >= NTDDI_LONGHORN)
713#else
714 UINT64 PrcbPad00[4];
715#endif
725#if (NTDDI_VERSION < NTDDI_LONGHORN)
727#endif
731#if (NTDDI_VERSION < NTDDI_LONGHORN)
734#endif
739#if (NTDDI_VERSION >= NTDDI_LONGHORN)
749#else
752#endif
759#if (NTDDI_VERSION < NTDDI_LONGHORN)
761 UCHAR PrcbPad2[12];
762#endif
771#if (NTDDI_VERSION >= NTDDI_LONGHORN)
773#else
774 PVOID SavedRsp;
775#endif
793#if (NTDDI_VERSION >= NTDDI_LONGHORN)
795#else
796 LONG PrcbPad40;
798#endif
800#if (NTDDI_VERSION >= NTDDI_LONGHORN)
802#endif
804#if (NTDDI_VERSION >= NTDDI_LONGHORN)
812#else
813 UINT64 PrcbPad7[4];
814#endif
816#if (NTDDI_VERSION >= NTDDI_LONGHORN)
818#endif
821#if (NTDDI_VERSION >= NTDDI_LONGHORN)
823#endif
834#if (NTDDI_VERSION >= NTDDI_LONGHORN)
841#else
842 UCHAR PrcbPad8[13];
843#endif
847#if (NTDDI_VERSION >= NTDDI_LONGHORN)
854#endif
856#if (NTDDI_VERSION >= NTDDI_LONGHORN)
912#else
913 ULONG PrcbPad90[1];
919 UCHAR PrcbPad9[12];
929 ULONG KeFirstLevelTbFills;
930 ULONG KeFloatingEmulationCount;
932 ULONG KeSecondLevelTbFills;
934 UCHAR PrcbPad10[2];
940#endif
941#ifdef __REACTOS__
942 ULONG FeatureBitsHigh;
943#endif
945
946//
947// Processor Control Region
948//
949typedef struct _KIPCR
950{
951 union
952 {
954 struct
955 {
959 struct _KPCR *Self;
963 };
964 };
984 ULONG Fill2[2]; // 0x178
985 KPRCB Prcb; // 0x180
986
987 // hack:
989
991
992//
993// TSS Definition
994//
995typedef struct _KiIoAccessMap
996{
1000
1001
1002#pragma pack(push,4)
1003typedef struct _KTSS64
1004{
1005 /* 000 */ ULONG Reserved0;
1006 /* 004 */ UINT64 Rsp0;
1007 /* 00c */ UINT64 Rsp1;
1008 /* 014 */ UINT64 Rsp2;
1009 /* 01c */ UINT64 Ist[8];
1014#pragma pack(pop)
1015#define KTSS KTSS64
1016#define PKTSS PKTSS64
1017
1018//
1019// KEXCEPTION_FRAME
1020//
1021typedef struct _KEXCEPTION_FRAME
1022{
1028#if (NTDDI_VERSION >= NTDDI_WIN8)
1030#else
1031 ULONG64 InitialStack;
1032#endif
1044#if (NTDDI_VERSION < NTDDI_WIN8)
1045 ULONG64 CallbackStack;
1046#endif
1049#if (NTDDI_VERSION >= NTDDI_WIN8)
1051#endif
1063
1064typedef struct _MACHINE_FRAME
1065{
1075
1076//
1077// Defines the Callback Stack Layout for User Mode Callbacks
1078//
1080
1081//
1082// User side callout frame
1083//
1084typedef struct _UCALLOUT_FRAME
1085{
1094} UCALLOUT_FRAME, *PUCALLOUT_FRAME; // size = 0x0058
1095
1096//
1097// User side APC dispatcher frame
1098//
1099typedef struct _UAPC_FRAME
1100{
1104
1105//
1106// Stack frame layout for KiUserExceptionDispatcher
1107// The name is totally made up
1108//
1110{
1116
1118{
1127 struct _UNWIND_HISTORY_TABLE *HistoryTable;
1131
1132typedef struct _KSTART_FRAME
1133{
1141
1142typedef struct _KSWITCH_FRAME
1143{
1154
1155#define PROCESSOR_START_FLAG_FORCE_ENABLE_NX 0x0001
1157{
1159 ULONG Flags; // 0x0008
1160 ULONG Gdt32; // 0x000C
1161 ULONG Idt32; // 0x0012
1162 PVOID Gdt; // 0x0018
1163 // ???
1165 UCHAR PmTarget[6]; // 0x0060
1169 ULONG64 MsrPat; // 0x0080
1170 ULONG64 MsrEFER; // 0x0088
1173
1174//
1175// Inline function to get current KPRCB
1176//
1178struct _KPRCB *
1180{
1181 return (struct _KPRCB *)__readgsqword(FIELD_OFFSET(KIPCR, CurrentPrcb));
1182}
1183
1184#endif
1185#endif
unsigned long long UINT64
unsigned int UINT32
signed long long INT64
EXCEPTION_ROUTINE * PEXCEPTION_ROUTINE
Definition: compat.h:709
UCHAR KIRQL
Definition: env_spec_w32.h:591
unsigned __int64 ULONG64
Definition: imports.h:198
struct _KSPECIAL_REGISTERS * PKSPECIAL_REGISTERS
struct _KIDT_ACCESS KIDT_ACCESS
struct _KTSS64 * PKTSS64
struct _KTRAP_FRAME KTRAP_FRAME
struct _KREQUEST_PACKET * PKREQUEST_PACKET
struct _KDESCRIPTOR * PKDESCRIPTOR
struct _KPROCESSOR_STATE * PKPROCESSOR_STATE
union _KGDTENTRY64 * PKGDTENTRY64
struct _KREQUEST_PACKET KREQUEST_PACKET
struct _KUSER_EXCEPTION_STACK * PKUSER_EXCEPTION_STACK
struct _KSTART_FRAME KSTART_FRAME
struct _REQUEST_MAILBOX * PREQUEST_MAILBOX
struct _KPROCESSOR_START_BLOCK * PKPROCESSOR_START_BLOCK
struct _KSWITCH_FRAME KSWITCH_FRAME
struct _DISPATCHER_CONTEXT * PDISPATCHER_CONTEXT
struct _KIPCR KIPCR
struct _REQUEST_MAILBOX REQUEST_MAILBOX
KEXCEPTION_FRAME KCALLOUT_FRAME
Definition: ketypes.h:1079
struct _KUSER_EXCEPTION_STACK KUSER_EXCEPTION_STACK
struct _KPRCB * PKPRCB
struct _KEXCEPTION_FRAME * PKEXCEPTION_FRAME
FORCEINLINE struct _KPRCB * KeGetCurrentPrcb(VOID)
Definition: ketypes.h:1179
struct _UAPC_FRAME UAPC_FRAME
struct _DISPATCHER_CONTEXT DISPATCHER_CONTEXT
struct _KiIoAccessMap KIIO_ACCESS_MAP
struct _KDESCRIPTOR KDESCRIPTOR
struct _MACHINE_FRAME MACHINE_FRAME
struct _KSWITCH_FRAME * PKSWITCH_FRAME
struct _UCALLOUT_FRAME * PUCALLOUT_FRAME
struct _KIPCR * PKIPCR
KEXCEPTION_FRAME * PKCALLOUT_FRAME
Definition: ketypes.h:1079
union _KIDTENTRY64 * PKIDTENTRY64
CPU_VENDORS
Definition: ketypes.h:92
@ CPU_VIA
Definition: ketypes.h:96
@ CPU_INTEL
Definition: ketypes.h:95
@ CPU_UNKNOWN
Definition: ketypes.h:93
@ CPU_AMD
Definition: ketypes.h:94
union _KGDTENTRY64 KGDTENTRY64
union _KIDTENTRY64 KIDTENTRY64
struct _UAPC_FRAME * PUAPC_FRAME
union _CPU_INFO CPU_INFO
ULONG LDT_ENTRY
Definition: ketypes.h:491
struct _MACHINE_FRAME * PMACHINE_FRAME
struct _KSTART_FRAME * PKSTART_FRAME
struct _KPRCB KPRCB
struct _KEXCEPTION_FRAME KEXCEPTION_FRAME
struct _KTRAP_FRAME * PKTRAP_FRAME
struct _KPROCESSOR_START_BLOCK KPROCESSOR_START_BLOCK
struct _KSPECIAL_REGISTERS KSPECIAL_REGISTERS
union _CPU_INFO * PCPU_INFO
struct _KIDT_ACCESS * PKIDT_ACCESS
struct _KPROCESSOR_STATE KPROCESSOR_STATE
struct _UCALLOUT_FRAME UCALLOUT_FRAME
struct _KTSS64 KTSS64
#define NUMBER_POOL_LOOKASIDE_LISTS
Definition: ketypes.h:273
ULONG KeDcacheFlushCount
Definition: cpu.c:20
ULONG KeIcacheFlushCount
Definition: cpu.c:19
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
Definition: fatfs.h:173
PCONTEXT ContextRecord
Definition: ketypes.h:1124
struct _RUNTIME_FUNCTION * FunctionEntry
Definition: ketypes.h:1121
struct _UNWIND_HISTORY_TABLE * HistoryTable
Definition: ketypes.h:1127
PEXCEPTION_ROUTINE LanguageHandler
Definition: ketypes.h:1125
ULONG64 EstablisherFrame
Definition: ketypes.h:1122
PVOID Base
Definition: ketypes.h:580
USHORT Pad[3]
Definition: ketypes.h:578
USHORT Limit
Definition: ketypes.h:579
Definition: ketypes.h:699
ULONG64 Return
Definition: ketypes.h:1061
ULONG64 OutputBuffer
Definition: ketypes.h:1047
ULONG64 P3Home
Definition: ketypes.h:1025
ULONG64 P1Home
Definition: ketypes.h:1023
ULONG64 P4Home
Definition: ketypes.h:1026
ULONG64 Spare2
Definition: ketypes.h:1050
ULONG64 P2Home
Definition: ketypes.h:1024
ULONG64 OutputLength
Definition: ketypes.h:1048
ULONG64 TrapFrame
Definition: ketypes.h:1043
ULONG64 Spare1
Definition: ketypes.h:1029
UCHAR SystemSegmentFlag
Definition: ketypes.h:545
UCHAR Dpl
Definition: ketypes.h:546
UCHAR Reserved
Definition: ketypes.h:543
USHORT Value
Definition: ketypes.h:549
UCHAR SegmentType
Definition: ketypes.h:544
UCHAR Present
Definition: ketypes.h:547
ULONG ContextSwitches
Definition: ketypes.h:988
KPRCB Prcb
Definition: ketypes.h:985
USHORT MinorVersion
Definition: ketypes.h:973
ULONG SecondLevelCacheSize
Definition: ketypes.h:977
USHORT MajorVersion
Definition: ketypes.h:972
UCHAR SecondLevelCacheAssociativity
Definition: ketypes.h:968
KIRQL Irql
Definition: ketypes.h:967
UCHAR Fill0
Definition: ketypes.h:970
struct _KPRCB * CurrentPrcb
Definition: ketypes.h:960
union _KGDTENTRY64 * GdtBase
Definition: ketypes.h:956
ULONG Unused0[3]
Definition: ketypes.h:971
ULONG Fill1
Definition: ketypes.h:980
ULONG Fill2[2]
Definition: ketypes.h:984
ULONG HalReserved[16]
Definition: ketypes.h:978
PKSPIN_LOCK_QUEUE LockArray
Definition: ketypes.h:961
struct _KTSS64 * TssBase
Definition: ketypes.h:957
PVOID Unused1[3]
Definition: ketypes.h:975
UCHAR ObsoleteNumber
Definition: ketypes.h:969
NT_TIB NtTib
Definition: ketypes.h:953
PVOID Unused3
Definition: ketypes.h:982
ULONG Unused2
Definition: ketypes.h:979
ULONG KernelReserved[15]
Definition: ketypes.h:976
union _KIDTENTRY64 * IdtBase
Definition: ketypes.h:965
ULONG PcrAlign1[24]
Definition: ketypes.h:983
struct _KPCR * Self
Definition: ketypes.h:959
ULONG StallScaleFactor
Definition: ketypes.h:974
ULONG64 UserRsp
Definition: ketypes.h:958
PVOID KdVersionBlock
Definition: ketypes.h:981
PVOID Used_Self
Definition: ketypes.h:962
ULONG64 Unused[2]
Definition: ketypes.h:966
Definition: ke.h:294
ULONG CcMdlReadNoWait
Definition: ketypes.h:866
UCHAR CoresPerPhysicalProcessor
Definition: ketypes.h:695
UCHAR BuildType
Definition: ketypes.h:692
UINT64 TimerHand
Definition: ketypes.h:783
UINT64 TimerRequest
Definition: ketypes.h:784
ULONG DpcTimeLimit
Definition: ketypes.h:837
ULONG CcCopyReadNoWaitMiss
Definition: ketypes.h:747
ULONG CcLostDelayedWrites
Definition: ketypes.h:873
PVOID HyperPte
Definition: ketypes.h:900
UINT64 HalReserved[8]
Definition: ketypes.h:689
UCHAR PrcbPad10[3]
Definition: ketypes.h:891
KSPIN_LOCK_QUEUE LockQueue[LockQueueMaximumLock]
Definition: ketypes.h:716
UCHAR IdleHalt
Definition: ketypes.h:658
PROCESSOR_POWER_STATE PowerState
Definition: ketypes.h:888
UCHAR PrcbPad3[116]
Definition: ketypes.h:765
CHAR CpuType
Definition: ketypes.h:673
ULONG IpiFrozen
Definition: ketypes.h:764
ULONG InterruptTime
Definition: ketypes.h:829
UCHAR PrcbPad9[3]
Definition: ketypes.h:753
LONG DpcWatchdogPeriod
Definition: ketypes.h:809
struct _KTHREAD * IdleThread
Definition: ketypes.h:661
ULONG Stride
Definition: ketypes.h:711
ULONG UserTime
Definition: ketypes.h:827
ULONG CcReadAheadIos
Definition: ketypes.h:883
ULONG CacheCount
Definition: ketypes.h:897
PVOID SparePtr0
Definition: ketypes.h:772
ULONG CcMapDataWaitMiss
Definition: ketypes.h:878
UINT64 PrcbLock
Definition: ketypes.h:670
GENERAL_LOOKASIDE_POOL PPPagedLookasideList[NUMBER_POOL_LOOKASIDE_LISTS]
Definition: ketypes.h:719
USHORT MinorVersion
Definition: ketypes.h:690
struct _KPRCB * MultiThreadSetMaster
Definition: ketypes.h:846
LONG MmPageReadCount
Definition: ketypes.h:729
UCHAR NestingLevel
Definition: ketypes.h:663
UCHAR PrcbPad8[3]
Definition: ketypes.h:780
PVOID RateControl
Definition: ketypes.h:908
LONG ClockKeepAlive
Definition: ketypes.h:805
LONG MmDemandZeroCount
Definition: ketypes.h:728
UCHAR InterruptRequest
Definition: ketypes.h:657
ULONG QueueIndex
Definition: ketypes.h:820
UINT64 WaitLock
Definition: ketypes.h:817
PVOID WheaInfo
Definition: ketypes.h:901
LONG MmCacheReadCount
Definition: ketypes.h:885
LONG Sleeping
Definition: ketypes.h:855
ULONG InterruptCount
Definition: ketypes.h:825
ULONG ApicMask
Definition: ketypes.h:701
LIST_ENTRY WaitListHead
Definition: ketypes.h:815
ULONG CcMdlReadWait
Definition: ketypes.h:867
LONG MaximumDpcQueueDepth
Definition: ketypes.h:776
ULONG KeContextSwitches
Definition: ketypes.h:741
ULONG CcPinReadNoWaitMiss
Definition: ketypes.h:879
ULONG CcPinReadWait
Definition: ketypes.h:865
PVOID AcpiReserved
Definition: ketypes.h:708
UCHAR PrcbPad2[52]
Definition: ketypes.h:667
ULONG DpcLastCount
Definition: ketypes.h:787
UINT64 PrcbPad81[2]
Definition: ketypes.h:840
UCHAR SkipTick
Definition: ketypes.h:831
PVOID EtwSupport
Definition: ketypes.h:902
ULONG PeriodicCount
Definition: ketypes.h:838
UINT64 RspBase
Definition: ketypes.h:669
ULONG MxCsr
Definition: ketypes.h:650
UCHAR CpuModel
Definition: ketypes.h:682
USHORT Number
Definition: ketypes.h:652
ULONG DebugDpcTime
Definition: ketypes.h:572
ULONG CcMapDataNoWait
Definition: ketypes.h:861
ULONG CachedCommit
Definition: ketypes.h:898
ULONG CcMdlReadWaitMiss
Definition: ketypes.h:882
LONG TickOffset
Definition: ketypes.h:785
ULONG CachedResidentAvailable
Definition: ketypes.h:899
USHORT MajorVersion
Definition: ketypes.h:691
ULONG PageColor
Definition: ketypes.h:850
LONG MmCacheIoCount
Definition: ketypes.h:886
ULONG CcPinReadNoWait
Definition: ketypes.h:864
UINT64 CycleTime
Definition: ketypes.h:857
KDPC DpcWatchdogDpc
Definition: ketypes.h:894
UCHAR ClockPollCycle
Definition: ketypes.h:807
USHORT CpuStep
Definition: ketypes.h:678
ULONG PrcbPad91[3]
Definition: ketypes.h:887
CHAR CpuID
Definition: ketypes.h:674
KDPC_DATA DpcData[2]
Definition: ketypes.h:769
ULONG CcCopyReadWait
Definition: ketypes.h:746
LONG MmPageFaultCount
Definition: ketypes.h:722
ULONG CcPinMappedDataCount
Definition: ketypes.h:863
ULONG CcMdlReadNoWaitMiss
Definition: ketypes.h:881
UINT64 * StatisticsPage
Definition: ketypes.h:907
PVOID VirtualApicAssist
Definition: ketypes.h:906
UCHAR CpuVendor
Definition: ketypes.h:693
LONG MmCopyOnWriteCount
Definition: ketypes.h:723
UCHAR QuantumEnd
Definition: ketypes.h:789
UCHAR VendorString[13]
Definition: ketypes.h:890
UCHAR Group
Definition: ketypes.h:664
ULONG DpcTime
Definition: ketypes.h:828
PVOID PrcbPad51
Definition: ketypes.h:801
UCHAR LogicalProcessorsPerPhysicalProcessor
Definition: ketypes.h:759
UCHAR ClockCheckSlot
Definition: ketypes.h:806
ULONG InitialApicId
Definition: ketypes.h:710
ULONG CcFastMdlReadWait
Definition: ketypes.h:859
GENERAL_LOOKASIDE_POOL PPNPagedLookasideList[NUMBER_POOL_LOOKASIDE_LISTS]
Definition: ketypes.h:718
ULONG PeriodicBias
Definition: ketypes.h:839
UCHAR PrcbPad00[6]
Definition: ketypes.h:665
ULONG MinimumDpcRate
Definition: ketypes.h:778
PP_LOOKASIDE_LIST PPLookasideList[16]
Definition: ketypes.h:717
ULONG CcMapDataNoWaitMiss
Definition: ketypes.h:877
ULONG CcFastReadWait
Definition: ketypes.h:743
LONG MmTransitionCount
Definition: ketypes.h:724
LONG LookasideIrpFloat
Definition: ketypes.h:748
ULONG CcMapDataWait
Definition: ketypes.h:862
LONG MmMappedWriteIoCount
Definition: ketypes.h:738
ULONG CcPinReadWaitMiss
Definition: ketypes.h:880
ULONG KeExceptionDispatchCount
Definition: ketypes.h:794
ULONG DpcTimeCount
Definition: ketypes.h:836
LONG DpcWatchdogCount
Definition: ketypes.h:810
ULONG AdjustDpcThreshold
Definition: ketypes.h:830
ULONG CcFastMdlReadNoWait
Definition: ketypes.h:858
UCHAR ThreadDpcEnable
Definition: ketypes.h:788
UINT64 PrcbPad70[2]
Definition: ketypes.h:811
struct _KTHREAD * CurrentThread
Definition: ketypes.h:659
LARGE_INTEGER IoReadTransferCount
Definition: ketypes.h:756
ULONG FeatureBits
Definition: ketypes.h:892
struct _KTHREAD * NextThread
Definition: ketypes.h:660
REQUEST_MAILBOX RequestMailbox[64]
Definition: ketypes.h:766
ULONG CcDataPages
Definition: ketypes.h:872
LONG MmMappedPagesWriteCount
Definition: ketypes.h:737
LONG DpcSetEventRequest
Definition: ketypes.h:792
UCHAR PrcbPad80[5]
Definition: ketypes.h:835
ULONG CcFastReadNoWait
Definition: ketypes.h:742
LONG MmCacheTransitionCount
Definition: ketypes.h:884
LONG MmSpinLockOrdering
Definition: ketypes.h:849
LONG MmPageReadIoCount
Definition: ketypes.h:730
ULONG CcFastReadResourceMiss
Definition: ketypes.h:874
LARGE_INTEGER IoOtherTransferCount
Definition: ketypes.h:758
UINT64 PacketBarrier
Definition: ketypes.h:720
ULONG KeSystemCalls
Definition: ketypes.h:740
LONG IoReadOperationCount
Definition: ketypes.h:753
UCHAR PollSlot
Definition: ketypes.h:833
UINT64 CoreProcessorSet
Definition: ketypes.h:911
SLIST_HEADER HypercallPageList
Definition: ketypes.h:904
UINT64 PackageProcessorSet
Definition: ketypes.h:910
ULONG SecondaryColorMask
Definition: ketypes.h:853
UINT64 CacheProcessorMask[5]
Definition: ketypes.h:909
UCHAR PrcbPad6[2]
Definition: ketypes.h:808
UINT64 PrcbPad71[12]
Definition: ketypes.h:822
LONG IoWriteOperationCount
Definition: ketypes.h:754
UINT64 SetMember
Definition: ketypes.h:671
LONG IoOtherOperationCount
Definition: ketypes.h:755
UINT64 StartCycles
Definition: ketypes.h:848
PVOID HypercallPageVirtual
Definition: ketypes.h:905
KEVENT DpcEvent
Definition: ketypes.h:799
struct _KNODE * ParentNode
Definition: ketypes.h:844
ULONG CFlushSize
Definition: ketypes.h:703
UCHAR IdleSchedule
Definition: ketypes.h:791
ULONG KernelTime
Definition: ketypes.h:826
LONG MasterOffset
Definition: ketypes.h:786
UCHAR DpcInterruptRequested
Definition: ketypes.h:779
ULONG CcCopyReadWaitMiss
Definition: ketypes.h:875
UCHAR PrcbPad4[120]
Definition: ketypes.h:768
PVOID DpcThread
Definition: ketypes.h:689
ULONG CcLazyWritePages
Definition: ketypes.h:870
LONG MmDirtyWriteIoCount
Definition: ketypes.h:736
ULONG ReadySummary
Definition: ketypes.h:819
UCHAR DpcThreadActive
Definition: ketypes.h:782
UCHAR DpcThreadRequested
Definition: ketypes.h:780
ULONG DpcRequestRate
Definition: ketypes.h:777
UCHAR LogicalProcessorsPerCore
Definition: ketypes.h:696
UINT64 SenderSummary
Definition: ketypes.h:767
ULONG CcLazyWriteIos
Definition: ketypes.h:869
KDPC CallDpc
Definition: ketypes.h:803
ULONG NodeShiftedColor
Definition: ketypes.h:852
LARGE_INTEGER UpdateSignature
Definition: ketypes.h:893
UINT64 MultiThreadProcessorSet
Definition: ketypes.h:845
KPROCESSOR_STATE ProcessorState
Definition: ketypes.h:672
ULONG NodeColor
Definition: ketypes.h:851
LONG MmDirtyPagesWriteCount
Definition: ketypes.h:735
LIST_ENTRY DispatcherReadyListHead[32]
Definition: ketypes.h:824
UCHAR CpuStepping
Definition: ketypes.h:681
ULONG CcFastMdlReadNotPossible
Definition: ketypes.h:860
UINT64 PrcbPad01[3]
Definition: ketypes.h:712
ULONG CcDataFlushes
Definition: ketypes.h:871
UCHAR PrcbPad50
Definition: ketypes.h:790
KTIMER DpcWatchdogTimer
Definition: ketypes.h:895
LARGE_INTEGER IoWriteTransferCount
Definition: ketypes.h:757
ULONG CcLazyWriteHotSpots
Definition: ketypes.h:868
ULONG CcCopyReadNoWait
Definition: ketypes.h:745
ULONG KeAlignmentFixupCount
Definition: ketypes.h:889
UCHAR DpcRoutineActive
Definition: ketypes.h:781
ULONG CcFastReadNotPossible
Definition: ketypes.h:744
UCHAR DebuggerSavedIRQL
Definition: ketypes.h:832
SINGLE_LIST_ENTRY DeferredReadyListHead
Definition: ketypes.h:721
PVOID DpcStack
Definition: ketypes.h:770
ULONG CcFastMdlReadResourceMiss
Definition: ketypes.h:876
UINT64 TargetSet
Definition: ketypes.h:763
ULONG MHz
Definition: ketypes.h:688
SLIST_HEADER InterruptObjectPool
Definition: ketypes.h:903
KPROCESSOR_STATE ProcessorState
Definition: ketypes.h:1171
UCHAR LmIdentityTarget[6]
Definition: ketypes.h:1166
struct _KPROCESSOR_START_BLOCK * SelfMap
Definition: ketypes.h:1168
KSPECIAL_REGISTERS SpecialRegisters
Definition: ketypes.h:624
CONTEXT ContextFrame
Definition: ketypes.h:625
PVOID WorkerRoutine
Definition: ketypes.h:635
PVOID CurrentPacket[3]
Definition: ketypes.h:634
ULONG64 LastExceptionToRip
Definition: ketypes.h:608
ULONG64 KernelDr1
Definition: ketypes.h:595
ULONG64 MsrLStar
Definition: ketypes.h:614
ULONG64 KernelDr2
Definition: ketypes.h:596
ULONG64 LastBranchFromRip
Definition: ketypes.h:607
ULONG64 KernelDr0
Definition: ketypes.h:594
KDESCRIPTOR Gdtr
Definition: ketypes.h:600
ULONG64 MsrGsBase
Definition: ketypes.h:611
KDESCRIPTOR Idtr
Definition: ketypes.h:601
ULONG64 LastBranchToRip
Definition: ketypes.h:606
ULONG64 MsrCStar
Definition: ketypes.h:615
ULONG64 KernelDr7
Definition: ketypes.h:599
ULONG64 LastExceptionFromRip
Definition: ketypes.h:609
ULONG64 KernelDr6
Definition: ketypes.h:598
ULONG64 MsrSyscallMask
Definition: ketypes.h:616
ULONG64 KernelDr3
Definition: ketypes.h:597
ULONG64 MsrGsSwap
Definition: ketypes.h:612
ULONG64 DebugControl
Definition: ketypes.h:605
ULONG64 P2Home
Definition: ketypes.h:1135
ULONG64 Reserved
Definition: ketypes.h:1138
ULONG64 P1Home
Definition: ketypes.h:1134
ULONG64 Return
Definition: ketypes.h:1139
ULONG64 P4Home
Definition: ketypes.h:1137
ULONG64 P3Home
Definition: ketypes.h:1136
ULONG64 Return
Definition: ketypes.h:1152
ULONG64 P2Home
Definition: ketypes.h:1145
ULONG64 Rbp
Definition: ketypes.h:1151
UCHAR Fill1[7]
Definition: ketypes.h:1150
ULONG64 P3Home
Definition: ketypes.h:1146
ULONG64 P5Home
Definition: ketypes.h:1148
ULONG64 P4Home
Definition: ketypes.h:1147
ULONG64 P1Home
Definition: ketypes.h:1144
KIRQL ApcBypass
Definition: ketypes.h:1149
UINT64 Dr0
Definition: ketypes.h:436
M128A Xmm1
Definition: ketypes.h:425
UINT64 Rsp
Definition: ketypes.h:480
UCHAR Logging
Definition: ketypes.h:476
ULONG LastBranchMSR
Definition: ketypes.h:455
USHORT Fill1[2]
Definition: ketypes.h:477
UCHAR FaultIndicator
Definition: ketypes.h:409
UINT64 Rdi
Definition: ketypes.h:464
M128A Xmm5
Definition: ketypes.h:429
CHAR PreviousMode
Definition: ketypes.h:407
UCHAR Fill0
Definition: ketypes.h:475
UINT64 GsBase
Definition: ketypes.h:421
UINT64 P5
Definition: ketypes.h:406
LONG CodePatchCycle
Definition: ketypes.h:483
UINT64 Rbp
Definition: ketypes.h:466
UINT64 LastBranchFromRip
Definition: ketypes.h:448
UINT64 Rsi
Definition: ketypes.h:465
UINT64 P2Home
Definition: ketypes.h:403
UINT64 Rdx
Definition: ketypes.h:414
ULONG EFlags
Definition: ketypes.h:478
M128A Xmm3
Definition: ketypes.h:427
UINT64 P4Home
Definition: ketypes.h:405
UINT64 Dr6
Definition: ketypes.h:440
UINT64 LastBranchControl
Definition: ketypes.h:454
M128A Xmm4
Definition: ketypes.h:428
UINT64 Rbx
Definition: ketypes.h:463
M128A Xmm0
Definition: ketypes.h:424
UINT64 FaultAddress
Definition: ketypes.h:432
USHORT SegSs
Definition: ketypes.h:481
UINT64 LastExceptionFromRip
Definition: ketypes.h:450
UINT64 Dr3
Definition: ketypes.h:439
UINT64 ExceptionFrame
Definition: ketypes.h:470
USHORT Fill3
Definition: ketypes.h:482
UINT64 Dr7
Definition: ketypes.h:441
USHORT SegCs
Definition: ketypes.h:474
UINT64 Rax
Definition: ketypes.h:412
UCHAR PreviousIrql
Definition: ketypes.h:408
UINT64 Dr1
Definition: ketypes.h:437
UINT64 GsSwap
Definition: ketypes.h:422
ULONG Fill2
Definition: ketypes.h:479
UINT64 LastBranchToRip
Definition: ketypes.h:447
UINT64 P3Home
Definition: ketypes.h:404
UINT64 R10
Definition: ketypes.h:417
UINT64 Rip
Definition: ketypes.h:473
UINT64 P1Home
Definition: ketypes.h:402
UINT64 TrapFrame
Definition: ketypes.h:462
UINT64 Dr2
Definition: ketypes.h:438
USHORT SegEs
Definition: ketypes.h:459
UINT64 ContextRecord
Definition: ketypes.h:433
UCHAR ExceptionActive
Definition: ketypes.h:410
M128A Xmm2
Definition: ketypes.h:426
USHORT SegFs
Definition: ketypes.h:460
UINT64 TimeStampCKCL
Definition: ketypes.h:434
UINT64 ErrorCode
Definition: ketypes.h:469
USHORT SegGs
Definition: ketypes.h:461
UINT64 R9
Definition: ketypes.h:416
USHORT SegDs
Definition: ketypes.h:458
UINT64 TimeStampKlog
Definition: ketypes.h:471
ULONG MxCsr
Definition: ketypes.h:411
UINT64 R8
Definition: ketypes.h:415
UINT64 Rcx
Definition: ketypes.h:413
UINT64 DebugControl
Definition: ketypes.h:446
UINT64 R11
Definition: ketypes.h:418
UINT64 LastExceptionToRip
Definition: ketypes.h:449
UINT64 Ist[8]
Definition: ketypes.h:1009
USHORT IoMapBase
Definition: ketypes.h:1012
USHORT Reserved2
Definition: ketypes.h:1011
UINT64 Rsp1
Definition: ketypes.h:1007
UINT64 Rsp2
Definition: ketypes.h:1008
ULONG Reserved0
Definition: ketypes.h:1005
UINT64 Reserved1
Definition: ketypes.h:1010
UINT64 Rsp0
Definition: ketypes.h:1006
MACHINE_FRAME MachineFrame
Definition: ketypes.h:1114
EXCEPTION_RECORD ExceptionRecord
Definition: ketypes.h:1112
UCHAR DirectionMap[32]
Definition: ketypes.h:997
UCHAR IoMap[8196]
Definition: ketypes.h:998
Definition: typedefs.h:120
USHORT SegSs
Definition: ketypes.h:1072
USHORT Fill1[3]
Definition: ketypes.h:1068
ULONG EFlags
Definition: ketypes.h:1069
ULONG64 Rsp
Definition: ketypes.h:1071
USHORT Fill3[3]
Definition: ketypes.h:1073
ULONG64 Rip
Definition: ketypes.h:1066
USHORT SegCs
Definition: ketypes.h:1067
INT64 RequestSummary
Definition: ketypes.h:640
KREQUEST_PACKET RequestPacket
Definition: ketypes.h:641
PVOID Virtual[7]
Definition: ketypes.h:642
Definition: ntbasedef.h:636
MACHINE_FRAME MachineFrame
Definition: ketypes.h:1102
CONTEXT Context
Definition: ketypes.h:1101
MACHINE_FRAME MachineFrame
Definition: ketypes.h:1093
ULONG ApiNumber
Definition: ketypes.h:1092
ULONG64 P1Home
Definition: ketypes.h:1086
ULONG64 P3Home
Definition: ketypes.h:1088
ULONG64 P2Home
Definition: ketypes.h:1087
ULONG64 P4Home
Definition: ketypes.h:1089
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:255
uint32_t ULONG
Definition: typedefs.h:59
ULONG Ebx
Definition: ketypes.h:391
ULONG Eax
Definition: ketypes.h:390
UINT32 AsUINT32[4]
Definition: ketypes.h:387
ULONG Ecx
Definition: ketypes.h:392
ULONG Edx
Definition: ketypes.h:393
ULONG MustBeZero
Definition: ketypes.h:527
ULONG BaseUpper
Definition: ketypes.h:526
ULONG Type
Definition: ketypes.h:515
USHORT LimitLow
Definition: ketypes.h:501
struct _KGDTENTRY64::@2322::@2324::@2327 Bits
ULONG LongMode
Definition: ketypes.h:520
UCHAR Flags1
Definition: ketypes.h:508
struct _KGDTENTRY64::@2322::@2324::@2326 Bytes
ULONG BaseMiddle
Definition: ketypes.h:514
UCHAR BaseMiddle
Definition: ketypes.h:507
ULONG System
Definition: ketypes.h:519
ULONG BaseHigh
Definition: ketypes.h:523
UCHAR Flags2
Definition: ketypes.h:509
ULONG LimitHigh
Definition: ketypes.h:518
USHORT BaseLow
Definition: ketypes.h:502
UCHAR BaseHigh
Definition: ketypes.h:510
ULONG Dpl
Definition: ketypes.h:516
ULONG Granularity
Definition: ketypes.h:522
ULONG Present
Definition: ketypes.h:517
UINT64 Alignment
Definition: ketypes.h:529
ULONG DefaultBig
Definition: ketypes.h:521
ULONG OffsetHigh
Definition: ketypes.h:568
USHORT Reserved0
Definition: ketypes.h:563
USHORT IstIndex
Definition: ketypes.h:562
USHORT OffsetMiddle
Definition: ketypes.h:567
USHORT OffsetLow
Definition: ketypes.h:560
UINT64 Alignment
Definition: ketypes.h:571
ULONG Reserved1
Definition: ketypes.h:569
USHORT Dpl
Definition: ketypes.h:565
USHORT Present
Definition: ketypes.h:566
USHORT Selector
Definition: ketypes.h:561
USHORT Type
Definition: ketypes.h:564
#define FORCEINLINE
Definition: wdftypes.h:67
M128A
Definition: ketypes.h:937
@ LockQueueMaximumLock
Definition: ketypes.h:676
unsigned char UCHAR
Definition: xmlstorage.h:181
char CHAR
Definition: xmlstorage.h:175