ReactOS 0.4.15-dev-6663-gd1e9fe1
ketypes.h
Go to the documentation of this file.
1/******************************************************************************
2 * Kernel Types *
3 ******************************************************************************/
5
6typedef UCHAR KIRQL, *PKIRQL;
8typedef LONG KPRIORITY;
9
10typedef enum _MODE {
15
16#define CACHE_FULLY_ASSOCIATIVE 0xFF
17#define MAXIMUM_SUSPEND_COUNT MAXCHAR
18
19#define EVENT_QUERY_STATE (0x0001)
20#define EVENT_MODIFY_STATE (0x0002)
21#define EVENT_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3)
22
23#define LTP_PC_SMT 0x1
24
25#if (NTDDI_VERSION < NTDDI_WIN7) || defined(_X86_) || !defined(NT_PROCESSOR_GROUPS)
26#define SINGLE_GROUP_LEGACY_API 1
27#endif
28
29#define SEMAPHORE_QUERY_STATE (0x0001)
30#define SEMAPHORE_MODIFY_STATE (0x0002)
31#define SEMAPHORE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3)
32
35
36typedef struct _PROCESSOR_GROUP_INFO {
37 UCHAR MaximumProcessorCount;
38 UCHAR ActiveProcessorCount;
39 UCHAR Reserved[38];
40 KAFFINITY ActiveProcessorMask;
42
49
50typedef struct _CACHE_DESCRIPTOR {
57
63
64typedef struct _CACHE_RELATIONSHIP {
73
74typedef struct _GROUP_RELATIONSHIP {
80
87 RelationAll = 0xffff
89
96
100 _ANONYMOUS_UNION union {
101 struct {
104 struct {
111
115 _ANONYMOUS_UNION union {
122
125
126/* Processor features */
127#define PF_FLOATING_POINT_PRECISION_ERRATA 0
128#define PF_FLOATING_POINT_EMULATED 1
129#define PF_COMPARE_EXCHANGE_DOUBLE 2
130#define PF_MMX_INSTRUCTIONS_AVAILABLE 3
131#define PF_PPC_MOVEMEM_64BIT_OK 4
132#define PF_ALPHA_BYTE_INSTRUCTIONS 5
133#define PF_XMMI_INSTRUCTIONS_AVAILABLE 6
134#define PF_3DNOW_INSTRUCTIONS_AVAILABLE 7
135#define PF_RDTSC_INSTRUCTION_AVAILABLE 8
136#define PF_PAE_ENABLED 9
137#define PF_XMMI64_INSTRUCTIONS_AVAILABLE 10
138#define PF_SSE_DAZ_MODE_AVAILABLE 11
139#define PF_NX_ENABLED 12
140#define PF_SSE3_INSTRUCTIONS_AVAILABLE 13
141#define PF_COMPARE_EXCHANGE128 14
142#define PF_COMPARE64_EXCHANGE128 15
143#define PF_CHANNELS_ENABLED 16
144#define PF_XSAVE_ENABLED 17
145#define PF_ARM_VFP_32_REGISTERS_AVAILABLE 18
146#define PF_ARM_NEON_INSTRUCTIONS_AVAILABLE 19
147#define PF_SECOND_LEVEL_ADDRESS_TRANSLATION 20
148#define PF_VIRT_FIRMWARE_ENABLED 21
149#define PF_RDWRFSGSBASE_AVAILABLE 22
150#define PF_FASTFAIL_AVAILABLE 23
151#define PF_ARM_DIVIDE_INSTRUCTION_AVAILABLE 24
152#define PF_ARM_64BIT_LOADSTORE_ATOMIC 25
153#define PF_ARM_EXTERNAL_CACHE_AVAILABLE 26
154#define PF_ARM_FMAC_INSTRUCTIONS_AVAILABLE 27
155#define PF_RDRAND_INSTRUCTION_AVAILABLE 28
156#define PF_ARM_V8_INSTRUCTIONS_AVAILABLE 29
157#define PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE 30
158#define PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE 31
159
160#define MAXIMUM_WAIT_OBJECTS 64
161
162#define ASSERT_APC(Object) \
163 NT_ASSERT((Object)->Type == ApcObject)
164
165#define ASSERT_DPC(Object) \
166 NT_ASSERT(((Object)->Type == 0) || \
167 ((Object)->Type == DpcObject) || \
168 ((Object)->Type == ThreadedDpcObject))
169
170#define ASSERT_GATE(Object) \
171 NT_ASSERT((((Object)->Header.Type & KOBJECT_TYPE_MASK) == GateObject) || \
172 (((Object)->Header.Type & KOBJECT_TYPE_MASK) == EventSynchronizationObject))
173
174#define ASSERT_DEVICE_QUEUE(Object) \
175 NT_ASSERT((Object)->Type == DeviceQueueObject)
176
177#define ASSERT_TIMER(Object) \
178 NT_ASSERT(((Object)->Header.Type == TimerNotificationObject) || \
179 ((Object)->Header.Type == TimerSynchronizationObject))
180
181#define ASSERT_MUTANT(Object) \
182 NT_ASSERT((Object)->Header.Type == MutantObject)
183
184#define ASSERT_SEMAPHORE(Object) \
185 NT_ASSERT((Object)->Header.Type == SemaphoreObject)
186
187#define ASSERT_EVENT(Object) \
188 NT_ASSERT(((Object)->Header.Type == NotificationEvent) || \
189 ((Object)->Header.Type == SynchronizationEvent))
190
191#define DPC_NORMAL 0
192#define DPC_THREADED 1
193
194#define GM_LOCK_BIT 0x1
195#define GM_LOCK_BIT_V 0x0
196#define GM_LOCK_WAITER_WOKEN 0x2
197#define GM_LOCK_WAITER_INC 0x4
198
199#define LOCK_QUEUE_WAIT_BIT 0
200#define LOCK_QUEUE_OWNER_BIT 1
201
202#define LOCK_QUEUE_WAIT 1
203#define LOCK_QUEUE_OWNER 2
204#define LOCK_QUEUE_TIMER_LOCK_SHIFT 4
205#define LOCK_QUEUE_TIMER_TABLE_LOCKS (1 << (8 - LOCK_QUEUE_TIMER_LOCK_SHIFT))
206
207#define PROCESSOR_FEATURE_MAX 64
208
209#define DBG_STATUS_CONTROL_C 1
210#define DBG_STATUS_SYSRQ 2
211#define DBG_STATUS_BUGCHECK_FIRST 3
212#define DBG_STATUS_BUGCHECK_SECOND 4
213#define DBG_STATUS_FATAL 5
214#define DBG_STATUS_DEBUG_CONTROL 6
215#define DBG_STATUS_WORKER 7
216
217#if defined(_WIN64)
218#define MAXIMUM_PROC_PER_GROUP 64
219#else
220#define MAXIMUM_PROC_PER_GROUP 32
221#endif
222#define MAXIMUM_PROCESSORS MAXIMUM_PROC_PER_GROUP
223
224#define EXCEPTION_DIVIDED_BY_ZERO 0
225#define EXCEPTION_DEBUG 1
226#define EXCEPTION_NMI 2
227#define EXCEPTION_INT3 3
228#define EXCEPTION_BOUND_CHECK 5
229#define EXCEPTION_INVALID_OPCODE 6
230#define EXCEPTION_NPX_NOT_AVAILABLE 7
231#define EXCEPTION_DOUBLE_FAULT 8
232#define EXCEPTION_NPX_OVERRUN 9
233#define EXCEPTION_INVALID_TSS 0x0A
234#define EXCEPTION_SEGMENT_NOT_PRESENT 0x0B
235#define EXCEPTION_STACK_FAULT 0x0C
236#define EXCEPTION_GP_FAULT 0x0D
237#define EXCEPTION_RESERVED_TRAP 0x0F
238#define EXCEPTION_NPX_ERROR 0x010
239#define EXCEPTION_ALIGNMENT_CHECK 0x011
240
241typedef enum _KBUGCHECK_CALLBACK_REASON {
242 KbCallbackInvalid,
243 KbCallbackReserved1,
244 KbCallbackSecondaryDumpData,
245 KbCallbackDumpIo,
246 KbCallbackAddPages
248
250
251_Function_class_(KBUGCHECK_REASON_CALLBACK_ROUTINE)
253typedef VOID
254(NTAPI KBUGCHECK_REASON_CALLBACK_ROUTINE)(
259typedef KBUGCHECK_REASON_CALLBACK_ROUTINE *PKBUGCHECK_REASON_CALLBACK_ROUTINE;
260
261typedef struct _KBUGCHECK_ADD_PAGES {
268
277
285
286typedef struct _KBUGCHECK_DUMP_IO {
292
293#define KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS 0x00000001UL
294#define KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS 0x00000002UL
295#define KB_ADD_PAGES_FLAG_ADDITIONAL_RANGES_EXIST 0x80000000UL
296
305
313
314_Function_class_(KBUGCHECK_CALLBACK_ROUTINE)
316typedef VOID
317(NTAPI KBUGCHECK_CALLBACK_ROUTINE)(
320typedef KBUGCHECK_CALLBACK_ROUTINE *PKBUGCHECK_CALLBACK_ROUTINE;
321
331
332_Function_class_(NMI_CALLBACK)
334typedef BOOLEAN
335(NTAPI NMI_CALLBACK)(
338typedef NMI_CALLBACK *PNMI_CALLBACK;
339
345
350#if (NTDDI_VERSION >= NTDDI_WIN7)
352#endif
354
356_Function_class_(PROCESSOR_CALLBACK_FUNCTION)
357typedef VOID
358(NTAPI PROCESSOR_CALLBACK_FUNCTION)(
362typedef PROCESSOR_CALLBACK_FUNCTION *PPROCESSOR_CALLBACK_FUNCTION;
363
364#define KE_PROCESSOR_CHANGE_ADD_EXISTING 1
365
366#define INVALID_PROCESSOR_INDEX 0xffffffff
367
373
374typedef enum _KPROFILE_SOURCE {
401
402typedef enum _KWAIT_REASON {
442
443typedef struct _KWAIT_BLOCK {
445#if (NTDDI_VERSION >= NTDDI_WIN8)
449#ifdef _WIN64
450 LONG SpareLong;
451#endif
452 union {
455 };
458#else
459 struct _KTHREAD *Thread;
461 struct _KWAIT_BLOCK *NextWaitBlock;
464#if (NTDDI_VERSION >= NTDDI_WIN7)
465 volatile UCHAR BlockState;
466#else
467 UCHAR SpareByte;
468#endif
469#if defined(_WIN64)
470 LONG SpareLong;
471#endif
472#endif
474
475typedef enum _KINTERRUPT_MODE {
477 Latched
479
480#define THREAD_WAIT_OBJECTS 3
481
483_Function_class_(KSTART_ROUTINE)
484typedef VOID
485(NTAPI KSTART_ROUTINE)(
486 _In_ PVOID StartContext);
487typedef KSTART_ROUTINE *PKSTART_ROUTINE;
488
489typedef VOID
491 VOID);
492
493_Function_class_(KSERVICE_ROUTINE)
496typedef BOOLEAN
497(NTAPI KSERVICE_ROUTINE)(
498 _In_ struct _KINTERRUPT *Interrupt,
500typedef KSERVICE_ROUTINE *PKSERVICE_ROUTINE;
501
502_Function_class_(KMESSAGE_SERVICE_ROUTINE)
504typedef BOOLEAN
505(NTAPI KMESSAGE_SERVICE_ROUTINE)(
506 _In_ struct _KINTERRUPT *Interrupt,
509typedef KMESSAGE_SERVICE_ROUTINE *PKMESSAGE_SERVICE_ROUTINE;
510
511typedef enum _KD_OPTION {
514
515#ifdef _NTSYSTEM_
516typedef VOID
518 IN PVOID NormalContext OPTIONAL,
521
522typedef VOID
524 IN struct _KAPC *Apc);
525
526typedef VOID
528 IN struct _KAPC *Apc,
529 IN OUT PKNORMAL_ROUTINE *NormalRoutine OPTIONAL,
533#endif
534
535typedef struct _KAPC {
543#ifdef _NTSYSTEM_
544 PKKERNEL_ROUTINE KernelRoutine;
545 PKRUNDOWN_ROUTINE RundownRoutine;
546 PKNORMAL_ROUTINE NormalRoutine;
547#else
549#endif
557
558#define KAPC_OFFSET_TO_SPARE_BYTE0 FIELD_OFFSET(KAPC, SpareByte0)
559#define KAPC_OFFSET_TO_SPARE_BYTE1 FIELD_OFFSET(KAPC, SpareByte1)
560#define KAPC_OFFSET_TO_SPARE_LONG FIELD_OFFSET(KAPC, SpareLong0)
561#define KAPC_OFFSET_TO_SYSTEMARGUMENT1 FIELD_OFFSET(KAPC, SystemArgument1)
562#define KAPC_OFFSET_TO_SYSTEMARGUMENT2 FIELD_OFFSET(KAPC, SystemArgument2)
563#define KAPC_OFFSET_TO_APCSTATEINDEX FIELD_OFFSET(KAPC, ApcStateIndex)
564#define KAPC_ACTUAL_LENGTH (FIELD_OFFSET(KAPC, Inserted) + sizeof(BOOLEAN))
565
566typedef struct _KDEVICE_QUEUE_ENTRY {
572
574
575typedef VOID
577 IN OUT PKIPI_CONTEXT PacketContext,
578 IN PVOID Parameter1 OPTIONAL,
579 IN PVOID Parameter2 OPTIONAL,
580 IN PVOID Parameter3 OPTIONAL);
581
582typedef struct _KIPI_COUNTS {
598
600_Function_class_(KIPI_BROADCAST_WORKER)
602typedef ULONG_PTR
603(NTAPI KIPI_BROADCAST_WORKER)(
604 _In_ ULONG_PTR Argument);
605typedef KIPI_BROADCAST_WORKER *PKIPI_BROADCAST_WORKER;
606
608
609typedef struct _KSPIN_LOCK_QUEUE {
610 struct _KSPIN_LOCK_QUEUE *volatile Next;
613
614typedef struct _KLOCK_QUEUE_HANDLE {
618
619#if defined(_AMD64_)
620
622
623#define LockQueueDispatcherLock 0
624#define LockQueueExpansionLock 1
625#define LockQueuePfnLock 2
626#define LockQueueSystemSpaceLock 3
627#define LockQueueVacbLock 4
628#define LockQueueMasterLock 5
629#define LockQueueNonPagedPoolLock 6
630#define LockQueueIoCancelLock 7
631#define LockQueueWorkQueueLock 8
632#define LockQueueIoVpbLock 9
633#define LockQueueIoDatabaseLock 10
634#define LockQueueIoCompletionLock 11
635#define LockQueueNtfsStructLock 12
636#define LockQueueAfdWorkQueueLock 13
637#define LockQueueBcbLock 14
638#define LockQueueMmNonPagedPoolLock 15
639#define LockQueueUnusedSpare16 16
640#define LockQueueTimerTableLock 17
641#define LockQueueMaximumLock (LockQueueTimerTableLock + LOCK_QUEUE_TIMER_TABLE_LOCKS)
642
643#else
644
666
667#endif /* defined(_AMD64_) */
668
669_Function_class_(KDEFERRED_ROUTINE)
672typedef VOID
673(NTAPI KDEFERRED_ROUTINE)(
674 _In_ struct _KDPC *Dpc,
678typedef KDEFERRED_ROUTINE *PKDEFERRED_ROUTINE;
679
680typedef enum _KDPC_IMPORTANCE {
686
687typedef struct _KDPC {
690 volatile USHORT Number;
696 volatile PVOID DpcData;
698
706
707typedef struct _KDEVICE_QUEUE {
712# if defined(_AMD64_)
713 _ANONYMOUS_UNION union {
715 _ANONYMOUS_STRUCT struct {
717 LONG64 Hint:56;
720# else
722# endif
724
725#define TIMER_EXPIRED_INDEX_BITS 6
726#define TIMER_PROCESSOR_INDEX_BITS 5
727
728typedef struct _DISPATCHER_HEADER {
729 _ANONYMOUS_UNION union {
730 _ANONYMOUS_STRUCT struct {
732 _ANONYMOUS_UNION union {
733 _ANONYMOUS_UNION union {
735 _ANONYMOUS_STRUCT struct {
743#if (NTDDI_VERSION < NTDDI_WIN7)
744 UCHAR NpxIrql;
745#endif
748 _ANONYMOUS_UNION union {
749 _ANONYMOUS_UNION union {
751 _ANONYMOUS_STRUCT struct {
761 _ANONYMOUS_UNION union {
762#if (NTDDI_VERSION >= NTDDI_WIN7)
763 _ANONYMOUS_UNION union {
765 _ANONYMOUS_STRUCT struct {
766#if !defined(_X86_)
768#else
769 UCHAR Index:1;
771#endif
773 volatile UCHAR Expired:1;
776#else
777 /* Pre Win7 compatibility fix to latest WDK */
779#endif
780 _ANONYMOUS_UNION union {
782 _ANONYMOUS_STRUCT struct {
789 } DUMMYUNIONNAME; /* should probably be DUMMYUNIONNAME2, but this is what WDK says */
793 volatile LONG Lock;
798
799typedef struct _KEVENT {
802
803typedef struct _KSEMAPHORE {
807
808#define KSEMAPHORE_ACTUAL_LENGTH (FIELD_OFFSET(KSEMAPHORE, Limit) + sizeof(LONG))
809
810typedef struct _KGATE {
813
814typedef struct _KGUARDED_MUTEX {
815 volatile LONG Count;
819 _ANONYMOUS_UNION union {
820 _ANONYMOUS_STRUCT struct {
827
828typedef struct _KMUTANT {
835
836#define TIMER_TABLE_SIZE 512
837#define TIMER_TABLE_SHIFT 9
838
839typedef struct _KTIMER {
843 struct _KDPC *Dpc;
844#if (NTDDI_VERSION >= NTDDI_WIN7) && !defined(_X86_)
846#endif
849
850typedef enum _LOCK_OPERATION {
855
856#define KTIMER_ACTUAL_LENGTH (FIELD_OFFSET(KTIMER, Period) + sizeof(LONG))
857
858_Function_class_(KSYNCHRONIZE_ROUTINE)
860typedef BOOLEAN
861(NTAPI KSYNCHRONIZE_ROUTINE)(
863typedef KSYNCHRONIZE_ROUTINE *PKSYNCHRONIZE_ROUTINE;
864
865typedef enum _POOL_TYPE {
874
879
888
894
895/* Correctly define these run-time definitions for non X86 machines */
896#ifndef _X86_
897
898#ifndef IsNEC_98
899#define IsNEC_98 (FALSE)
900#endif
901
902#ifndef IsNotNEC_98
903#define IsNotNEC_98 (TRUE)
904#endif
905
906#ifndef SetNEC_98
907#define SetNEC_98
908#endif
909
910#ifndef SetNotNEC_98
911#define SetNotNEC_98
912#endif
913
914#endif
915
916typedef struct _KSYSTEM_TIME {
921
922typedef struct DECLSPEC_ALIGN(16) _M128A {
926
927typedef struct DECLSPEC_ALIGN(16) _XSAVE_FORMAT {
928 USHORT ControlWord;
929 USHORT StatusWord;
930 UCHAR TagWord;
932 USHORT ErrorOpcode;
933 ULONG ErrorOffset;
934 USHORT ErrorSelector;
936 ULONG DataOffset;
937 USHORT DataSelector;
939 ULONG MxCsr;
940 ULONG MxCsr_Mask;
941 M128A FloatRegisters[8];
942#if defined(_WIN64)
943 M128A XmmRegisters[16];
944 UCHAR Reserved4[96];
945#else
946 M128A XmmRegisters[8];
947 UCHAR Reserved4[192];
948 ULONG StackControl[7];
949 ULONG Cr0NpxState;
950#endif
952
953typedef struct DECLSPEC_ALIGN(8) _XSAVE_AREA_HEADER {
955 ULONG64 Reserved[7];
957
958typedef struct DECLSPEC_ALIGN(16) _XSAVE_AREA {
959 XSAVE_FORMAT LegacyState;
962
963typedef struct _XSTATE_CONTEXT {
968#if defined(_X86_)
970#endif
972#if defined(_X86_)
974#endif
976
977typedef struct _XSTATE_SAVE {
978#if defined(_AMD64_)
979 struct _XSTATE_SAVE* Prev;
980 struct _KTHREAD* Thread;
981 UCHAR Level;
982 XSTATE_CONTEXT XStateContext;
983#elif defined(_IA64_) || defined(_ARM_) || defined(_ARM64_)
984 ULONG Dummy;
985#elif defined(_X86_)
986 _ANONYMOUS_UNION union {
987 _ANONYMOUS_STRUCT struct {
990 struct _XSTATE_SAVE* Prev;
992 struct _KTHREAD* Thread;
994 UCHAR Level;
996 XSTATE_CONTEXT XStateContext;
998#endif
1000
1001#ifdef _X86_
1002
1003#define MAXIMUM_SUPPORTED_EXTENSION 512
1004
1005#if !defined(__midl) && !defined(MIDL_PASS)
1007#endif
1008
1009#endif /* _X86_ */
1010
1011#define XSAVE_ALIGN 64
1012#define MINIMAL_XSTATE_AREA_LENGTH sizeof(XSAVE_AREA)
1013
1014#if !defined(__midl) && !defined(MIDL_PASS)
1015C_ASSERT((sizeof(XSAVE_FORMAT) & (XSAVE_ALIGN - 1)) == 0);
1018#endif
1019
1020typedef struct _CONTEXT_CHUNK {
1024
1025typedef struct _CONTEXT_EX {
1030
1031#define CONTEXT_EX_LENGTH ALIGN_UP_BY(sizeof(CONTEXT_EX), STACK_ALIGN)
1032
1033#if (NTDDI_VERSION >= NTDDI_VISTA)
1034extern NTSYSAPI volatile CCHAR KeNumberProcessors;
1035#elif (NTDDI_VERSION >= NTDDI_WINXP)
1037#else
1039extern PCCHAR KeNumberProcessors;
1040#endif
1041
1043$if (_NTDDK_)
1044
1045typedef struct _EXCEPTION_REGISTRATION_RECORD
1046{
1050
1051typedef struct _NT_TIB {
1056 _ANONYMOUS_UNION union {
1061 struct _NT_TIB *Self;
1063
1064typedef struct _NT_TIB32 {
1069 _ANONYMOUS_UNION union {
1076
1077typedef struct _NT_TIB64 {
1082 _ANONYMOUS_UNION union {
1089
1091_Function_class_(EXPAND_STACK_CALLOUT)
1092typedef VOID
1093(NTAPI EXPAND_STACK_CALLOUT)(
1095typedef EXPAND_STACK_CALLOUT *PEXPAND_STACK_CALLOUT;
1096
1097typedef VOID
1100 _In_ ULONG TimerLowValue,
1101 _In_ LONG TimerHighValue);
1102
1107
1108#if (NTDDI_VERSION >= NTDDI_WIN7)
1118#endif /* (NTDDI_VERSION >= NTDDI_WIN7) */
1119
1120#define XSTATE_LEGACY_FLOATING_POINT 0
1121#define XSTATE_LEGACY_SSE 1
1122#define XSTATE_GSSE 2
1123
1124#define XSTATE_MASK_LEGACY_FLOATING_POINT (1LL << (XSTATE_LEGACY_FLOATING_POINT))
1125#define XSTATE_MASK_LEGACY_SSE (1LL << (XSTATE_LEGACY_SSE))
1126#define XSTATE_MASK_LEGACY (XSTATE_MASK_LEGACY_FLOATING_POINT | XSTATE_MASK_LEGACY_SSE)
1127#define XSTATE_MASK_GSSE (1LL << (XSTATE_GSSE))
1128
1129#define MAXIMUM_XSTATE_FEATURES 64
1130
1131typedef struct _XSTATE_FEATURE {
1135
1142
1143#define MAX_WOW64_SHARED_ENTRIES 16
1144
1145//
1146// Flags for NXSupportPolicy
1147//
1148#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
1149#define NX_SUPPORT_POLICY_ALWAYSOFF 0
1150#define NX_SUPPORT_POLICY_ALWAYSON 1
1151#define NX_SUPPORT_POLICY_OPTIN 2
1152#define NX_SUPPORT_POLICY_OPTOUT 3
1153#endif
1154
1155typedef struct _KUSER_SHARED_DATA {
1176 volatile ULONG TimeSlip;
1182#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
1184#endif
1191#if (NTDDI_VERSION >= NTDDI_WIN7)
1192 _ANONYMOUS_UNION union {
1194 _ANONYMOUS_STRUCT struct {
1201#endif
1202#if (NTDDI_VERSION >= NTDDI_VISTA)
1203 _ANONYMOUS_UNION union {
1205 _ANONYMOUS_STRUCT struct {
1216#else
1217 ULONG TraceLogging;
1218#endif
1224 _ANONYMOUS_UNION union {
1227 _ANONYMOUS_STRUCT struct {
1234#if (NTDDI_VERSION >= NTDDI_WS03)
1237#endif
1238#if (NTDDI_VERSION >= NTDDI_VISTA)
1239#if (NTDDI_VERSION >= NTDDI_WIN7)
1241#else
1243 ULONG HeapTracingPid[2];
1244 ULONG CritSecTracingPid[2];
1245#endif
1247#if (NTDDI_VERSION >= NTDDI_VISTASP1)
1249#else
1250 /* 4 bytes padding */
1251#endif
1254#endif
1255#if (NTDDI_VERSION >= NTDDI_WIN7)
1266#endif
1268
1269#if (NTDDI_VERSION >= NTDDI_VISTA)
1271#elif (NTDDI_VERSION >= NTDDI_WINXP)
1273#else
1274extern PCCHAR KeNumberProcessors;
1275#endif
1276
1278$if (_NTIFS_)
1279typedef struct _KAPC_STATE {
1280 LIST_ENTRY ApcListHead[MaximumMode];
1282 BOOLEAN KernelApcInProgress;
1283 BOOLEAN KernelApcPending;
1284 BOOLEAN UserApcPending;
1286
1287#define KAPC_STATE_ACTUAL_LENGTH (FIELD_OFFSET(KAPC_STATE, UserApcPending) + sizeof(BOOLEAN))
1288
1289#define ASSERT_QUEUE(Q) ASSERT(((Q)->Header.Type & KOBJECT_TYPE_MASK) == QueueObject);
1290
1291typedef struct _KQUEUE {
1298
1300
unsigned char BOOLEAN
#define VOID
Definition: acefi.h:82
LONG NTSTATUS
Definition: precomp.h:26
@ Reserved2
Definition: bcd.h:202
@ Reserved1
Definition: bcd.h:201
#define NTSYSAPI
Definition: ntoskrnl.h:12
Definition: bufpool.h:45
Definition: Header.h:9
ULONG_PTR KAFFINITY
Definition: compat.h:85
EXCEPTION_ROUTINE * PEXCEPTION_ROUTINE
Definition: compat.h:709
LONG KPRIORITY
Definition: compat.h:803
enum _NT_PRODUCT_TYPE NT_PRODUCT_TYPE
#define ULONG_PTR
Definition: config.h:101
#define _IRQL_requires_same_
Definition: driverspecs.h:232
#define _IRQL_requires_(irql)
Definition: driverspecs.h:229
#define IPI_LEVEL
Definition: env_spec_w32.h:701
UCHAR KIRQL
Definition: env_spec_w32.h:591
#define HIGH_LEVEL
Definition: env_spec_w32.h:703
KIRQL * PKIRQL
Definition: env_spec_w32.h:592
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
Definition: fltkernel.h:2653
unsigned int Mask
Definition: fpcontrol.c:82
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:223
#define _NTIFS_
Definition: ifssupp.h:20
enum _KPROFILE_SOURCE KPROFILE_SOURCE
VOID(CALLBACK * PTIMER_APC_ROUTINE)(PVOID, ULONG, LONG)
Definition: winternl.h:2018
_KPROFILE_SOURCE
Definition: winternl.h:2122
@ ProfileFpInstructions
Definition: winternl.h:2136
@ ProfileIntegerInstructions
Definition: winternl.h:2137
@ ProfileBranchMispredictions
Definition: winternl.h:2134
@ ProfileMaximum
Definition: winternl.h:2147
@ ProfileStoreInstructions
Definition: winternl.h:2135
@ ProfileAlignmentFixup
Definition: winternl.h:2124
@ ProfilePipelineDry
Definition: winternl.h:2126
@ ProfileMemoryBarrierCycles
Definition: winternl.h:2145
@ Profile3Issue
Definition: winternl.h:2139
@ ProfileLoadLinkedIssues
Definition: winternl.h:2146
@ ProfileDcacheMisses
Definition: winternl.h:2131
@ ProfileIcacheIssues
Definition: winternl.h:2143
@ ProfileIcacheMisses
Definition: winternl.h:2132
@ ProfileTotalNonissues
Definition: winternl.h:2130
@ ProfileTime
Definition: winternl.h:2123
@ ProfileSpecialInstructions
Definition: winternl.h:2141
@ Profile2Issue
Definition: winternl.h:2138
@ ProfileTotalCycles
Definition: winternl.h:2142
@ ProfileBranchInstructions
Definition: winternl.h:2129
@ ProfilePipelineFrozen
Definition: winternl.h:2128
@ ProfileDcacheAccesses
Definition: winternl.h:2144
@ ProfileLoadInstructions
Definition: winternl.h:2127
@ ProfileTotalIssues
Definition: winternl.h:2125
@ Profile4Issue
Definition: winternl.h:2140
@ ProfileCacheMisses
Definition: winternl.h:2133
#define C_ASSERT(e)
Definition: intsafe.h:73
_In_ PVOID Parameter
Definition: ldrtypes.h:241
unsigned __int64 ULONG64
Definition: imports.h:198
PVOID PVOID PWCHAR PVOID USHORT PULONG Reason
Definition: env.c:47
* PNTSTATUS
Definition: strlen.c:14
#define _Function_class_(x)
Definition: ms_sal.h:2946
#define _Out_opt_
Definition: ms_sal.h:346
#define _Inout_
Definition: ms_sal.h:378
#define _Out_
Definition: ms_sal.h:345
#define _In_
Definition: ms_sal.h:308
#define _In_opt_
Definition: ms_sal.h:309
#define KernelMode
Definition: asm.h:34
#define UserMode
Definition: asm.h:35
VOID(NTAPI * PKRUNDOWN_ROUTINE)(IN struct _KAPC *Apc)
Definition: ketypes.h:690
VOID(NTAPI * PKKERNEL_ROUTINE)(IN struct _KAPC *Apc, IN OUT PKNORMAL_ROUTINE *NormalRoutine OPTIONAL, IN OUT PVOID *NormalContext OPTIONAL, IN OUT PVOID *SystemArgument1 OPTIONAL, IN OUT PVOID *SystemArgument2 OPTIONAL)
Definition: ketypes.h:694
VOID(NTAPI * PKNORMAL_ROUTINE)(IN PVOID NormalContext OPTIONAL, IN PVOID SystemArgument1 OPTIONAL, IN PVOID SystemArgument2 OPTIONAL)
Definition: ketypes.h:684
#define RESTRICTED_POINTER
Definition: ntbasedef.h:97
#define DECLSPEC_ALIGN(x)
Definition: ntbasedef.h:251
#define DUMMYUNIONNAME
Definition: ntbasedef.h:32
#define DUMMYSTRUCTNAME
Definition: ntbasedef.h:58
PROCESSOR_NUMBER
Definition: ntbasedef.h:642
#define _ANONYMOUS_UNION
Definition: ntbasedef.h:30
#define _ANONYMOUS_STRUCT
Definition: ntbasedef.h:56
#define _NTDDK_
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
#define BOOLEAN
Definition: pedump.c:73
short SHORT
Definition: pedump.c:59
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
@ Reserved3
Definition: sacdrv.h:1471
@ Reserved4
Definition: sacdrv.h:1472
_KINTERRUPT_MODE
Definition: miniport.h:79
@ High
Definition: strmini.h:378
@ Low
Definition: strmini.h:380
UCHAR Associativity
Definition: ketypes.h:52
PROCESSOR_CACHE_TYPE Type
Definition: ketypes.h:55
USHORT LineSize
Definition: ketypes.h:53
GROUP_AFFINITY GroupMask
Definition: ketypes.h:71
PROCESSOR_CACHE_TYPE Type
Definition: ketypes.h:69
UCHAR Associativity
Definition: ketypes.h:66
ULONG Length
Definition: ketypes.h:1022
CONTEXT_CHUNK XState
Definition: ketypes.h:1028
CONTEXT_CHUNK All
Definition: ketypes.h:1026
CONTEXT_CHUNK Legacy
Definition: ketypes.h:1027
UCHAR TimerControlFlags
Definition: ketypes.h:734
volatile UCHAR Expired
Definition: ketypes.h:773
BOOLEAN DpcActive
Definition: ketypes.h:790
UCHAR TimerMiscFlags
Definition: ketypes.h:764
BOOLEAN ActiveDR7
Definition: ketypes.h:783
volatile LONG Lock
Definition: ketypes.h:793
UCHAR KeepShifting
Definition: ketypes.h:738
BOOLEAN DebugActive
Definition: ketypes.h:781
BOOLEAN UmsPrimary
Definition: ketypes.h:787
UCHAR CpuThrottled
Definition: ketypes.h:752
LIST_ENTRY WaitListHead
Definition: ketypes.h:796
UCHAR CycleProfiling
Definition: ketypes.h:753
_ANONYMOUS_UNION union _DISPATCHER_HEADER::@3916::@3917::@3918::@3921 DUMMYUNIONNAME
UCHAR EncodedTolerableDelay
Definition: ketypes.h:739
_ANONYMOUS_STRUCT struct _DISPATCHER_HEADER::@3916::@3917::@3918::@3921::@3922 DUMMYSTRUCTNAME
BOOLEAN Reserved2
Definition: ketypes.h:785
_ANONYMOUS_UNION union _DISPATCHER_HEADER::@3916::@3917::@3920 DUMMYUNIONNAME3
BOOLEAN Instrumented
Definition: ketypes.h:784
_ANONYMOUS_UNION union _DISPATCHER_HEADER::@3916::@3917::@3919 DUMMYUNIONNAME2
UCHAR ThreadControlFlags
Definition: ketypes.h:750
UCHAR CounterProfiling
Definition: ketypes.h:754
BOOLEAN Signalling
Definition: ketypes.h:746
BOOLEAN UmsScheduled
Definition: ketypes.h:786
struct _EXCEPTION_REGISTRATION_RECORD * Next
Definition: compat.h:726
PEXCEPTION_ROUTINE Handler
Definition: compat.h:727
PROCESSOR_GROUP_INFO GroupInfo[ANYSIZE_ARRAY]
Definition: ketypes.h:78
USHORT MaximumGroupCount
Definition: ketypes.h:75
USHORT ActiveGroupCount
Definition: ketypes.h:76
Definition: ketypes.h:535
UCHAR Size
Definition: ketypes.h:538
PVOID NormalContext
Definition: ketypes.h:550
KPROCESSOR_MODE ApcMode
Definition: ketypes.h:554
struct _KTHREAD * Thread
Definition: ketypes.h:541
BOOLEAN Inserted
Definition: ketypes.h:555
PVOID SystemArgument1
Definition: ketypes.h:551
CCHAR ApcStateIndex
Definition: ketypes.h:553
LIST_ENTRY ApcListEntry
Definition: ketypes.h:542
UCHAR Type
Definition: ketypes.h:536
PVOID SystemArgument2
Definition: ketypes.h:552
UCHAR SpareByte0
Definition: ketypes.h:537
UCHAR SpareByte1
Definition: ketypes.h:539
ULONG SpareLong0
Definition: ketypes.h:540
_Inout_ PVOID Context
Definition: ketypes.h:262
_Out_ ULONG_PTR Address
Definition: ketypes.h:265
_Out_ ULONG_PTR Count
Definition: ketypes.h:266
_In_ ULONG BugCheckCode
Definition: ketypes.h:264
_Inout_ ULONG Flags
Definition: ketypes.h:263
PKBUGCHECK_CALLBACK_ROUTINE CallbackRoutine
Definition: ketypes.h:324
_Field_size_bytes_opt_(Length) PVOID Buffer
_In_ ULONG64 Offset
Definition: ketypes.h:287
_In_ ULONG BufferLength
Definition: ketypes.h:289
_In_ KBUGCHECK_DUMP_IO_TYPE Type
Definition: ketypes.h:290
_In_ PVOID Buffer
Definition: ketypes.h:288
KBUGCHECK_CALLBACK_REASON Reason
Definition: ketypes.h:302
PKBUGCHECK_REASON_CALLBACK_ROUTINE CallbackRoutine
Definition: ketypes.h:299
Definition: ketypes.h:566
LIST_ENTRY DeviceListEntry
Definition: ketypes.h:567
ULONG SortKey
Definition: ketypes.h:568
BOOLEAN Inserted
Definition: ketypes.h:569
BOOLEAN Busy
Definition: ketypes.h:721
LIST_ENTRY DeviceListHead
Definition: ketypes.h:710
KSPIN_LOCK Lock
Definition: ketypes.h:711
CSHORT Type
Definition: ketypes.h:708
CSHORT Size
Definition: ketypes.h:709
Definition: ketypes.h:687
UCHAR Type
Definition: ketypes.h:688
LIST_ENTRY DpcListEntry
Definition: ketypes.h:691
PVOID SystemArgument2
Definition: ketypes.h:695
UCHAR Importance
Definition: ketypes.h:689
PVOID SystemArgument1
Definition: ketypes.h:694
PKDEFERRED_ROUTINE DeferredRoutine
Definition: ketypes.h:692
volatile PVOID DpcData
Definition: ketypes.h:696
volatile USHORT Number
Definition: ketypes.h:690
PVOID DeferredContext
Definition: ketypes.h:693
DISPATCHER_HEADER Header
Definition: ketypes.h:800
KE_PROCESSOR_CHANGE_NOTIFY_STATE State
Definition: ketypes.h:347
DISPATCHER_HEADER Header
Definition: ketypes.h:811
_ANONYMOUS_UNION union _KGUARDED_MUTEX::@3929 DUMMYUNIONNAME
volatile LONG Count
Definition: ketypes.h:815
ULONG Contention
Definition: ketypes.h:817
ULONG CombinedApcDisable
Definition: ketypes.h:824
_ANONYMOUS_STRUCT struct _KGUARDED_MUTEX::@3929::@3930 DUMMYSTRUCTNAME
PKTHREAD Owner
Definition: ketypes.h:816
SHORT KernelApcDisable
Definition: ketypes.h:821
SHORT SpecialApcDisable
Definition: ketypes.h:822
ULONG Freeze
Definition: ketypes.h:583
ULONG FlushSingleTb
Definition: ketypes.h:587
ULONG FlushMultipleTb
Definition: ketypes.h:588
ULONG APC
Definition: ketypes.h:586
ULONG Packet
Definition: ketypes.h:584
ULONG FlushEntireTb
Definition: ketypes.h:589
ULONG FlushIoBuffers
Definition: ketypes.h:595
ULONG SweepIcache
Definition: ketypes.h:593
ULONG SweepIcacheRange
Definition: ketypes.h:594
ULONG GenericCall
Definition: ketypes.h:590
ULONG DPC
Definition: ketypes.h:585
ULONG ChangeColor
Definition: ketypes.h:591
ULONG SweepDcache
Definition: ketypes.h:592
ULONG GratuitousDPC
Definition: ketypes.h:596
KSPIN_LOCK_QUEUE LockQueue
Definition: ketypes.h:615
DISPATCHER_HEADER Header
Definition: ketypes.h:829
LIST_ENTRY MutantListEntry
Definition: ketypes.h:830
BOOLEAN Abandoned
Definition: ketypes.h:832
struct _KTHREAD *RESTRICTED_POINTER OwnerThread
Definition: ketypes.h:831
UCHAR ApcDisable
Definition: ketypes.h:833
LIST_ENTRY EntryListHead
Definition: ketypes.h:1293
ULONG MaximumCount
Definition: ketypes.h:1295
DISPATCHER_HEADER Header
Definition: ketypes.h:1292
LIST_ENTRY ThreadListHead
Definition: ketypes.h:1296
volatile ULONG CurrentCount
Definition: ketypes.h:1294
LONG Limit
Definition: ketypes.h:805
DISPATCHER_HEADER Header
Definition: ketypes.h:804
struct _KSPIN_LOCK_QUEUE *volatile Next
Definition: ketypes.h:610
PKSPIN_LOCK volatile Lock
Definition: ketypes.h:611
LONG High1Time
Definition: ketypes.h:918
LONG High2Time
Definition: ketypes.h:919
ULONG LowPart
Definition: ketypes.h:917
struct _KDPC * Dpc
Definition: ketypes.h:843
ULONG Processor
Definition: ketypes.h:845
ULARGE_INTEGER DueTime
Definition: ketypes.h:841
ULONG Period
Definition: ketypes.h:847
DISPATCHER_HEADER Header
Definition: ketypes.h:840
LIST_ENTRY TimerListEntry
Definition: ketypes.h:842
ULONG LangGenerationCount
Definition: ketypes.h:1248
ULONG CookiePad[1]
Definition: ketypes.h:1233
XSTATE_CONFIGURATION XState
Definition: ketypes.h:1265
BOOLEAN ProductTypeIsValid
Definition: ketypes.h:1170
ULONG DbgSystemDllRelocated
Definition: ketypes.h:1210
ULONG DbgInstallerDetectEnabled
Definition: ketypes.h:1209
volatile KSYSTEM_TIME SystemTime
Definition: ketypes.h:1159
ULONG DbgSEHValidationEnabled
Definition: ketypes.h:1212
ULONG TickCountLowDeprecated
Definition: ketypes.h:1156
NT_PRODUCT_TYPE NtProductType
Definition: ketypes.h:1169
ULONG SystemCallReturn
Definition: ketypes.h:1222
ULONGLONG SystemDllNativeRelocation
Definition: ketypes.h:1262
ULONGLONG TestRetInstruction
Definition: ketypes.h:1220
volatile ULONG64 TscQpcBias
Definition: ketypes.h:1256
volatile ULONG ActiveConsoleId
Definition: ketypes.h:1185
BOOLEAN KdDebuggerEnabled
Definition: ketypes.h:1181
ULONG NtMajorVersion
Definition: ketypes.h:1171
volatile ULONG64 InterruptTimeBias
Definition: ketypes.h:1253
ULONG TickCountMultiplier
Definition: ketypes.h:1157
LONGLONG ConsoleSessionForegroundProcessId
Definition: ketypes.h:1235
ULONG Wow64SharedInformation[MAX_WOW64_SHARED_ENTRIES]
Definition: ketypes.h:1236
ULONG DbgElevationEnabled
Definition: ketypes.h:1207
_ANONYMOUS_UNION union _KUSER_SHARED_DATA::@3936 DUMMYUNIONNAME3
ULONG SharedDataFlags
Definition: ketypes.h:1204
UCHAR NXSupportPolicy
Definition: ketypes.h:1183
ULONGLONG Reserved5
Definition: ketypes.h:1252
BOOLEAN ProcessorFeatures[PROCESSOR_FEATURE_MAX]
Definition: ketypes.h:1173
ULONG LastSystemRITEventTickCount
Definition: ketypes.h:1188
ULONG NumberOfPhysicalPages
Definition: ketypes.h:1189
volatile ULONG64 TickCountQuad
Definition: ketypes.h:1226
volatile ULONG AppCompatFlag
Definition: ketypes.h:1261
volatile KSYSTEM_TIME TickCount
Definition: ketypes.h:1225
volatile ULONG AitSamplingValue
Definition: ketypes.h:1260
ULONG LargePageMinimum
Definition: ketypes.h:1167
volatile KSYSTEM_TIME InterruptTime
Definition: ketypes.h:1158
ULONG CryptoExponent
Definition: ketypes.h:1165
BOOLEAN SafeBootMode
Definition: ketypes.h:1190
volatile ULONG TimeSlip
Definition: ketypes.h:1176
UCHAR TscQpcPad[2]
Definition: ketypes.h:1200
LARGE_INTEGER SystemExpirationDate
Definition: ketypes.h:1179
_ANONYMOUS_STRUCT struct _KUSER_SHARED_DATA::@3935::@3938 DUMMYSTRUCTNAME2
ULONG NtMinorVersion
Definition: ketypes.h:1172
WCHAR NtSystemRoot[260]
Definition: ketypes.h:1163
USHORT ImageNumberHigh
Definition: ketypes.h:1162
ULONG ReservedTickCountOverlay[3]
Definition: ketypes.h:1228
ULONG XStatePad[1]
Definition: ketypes.h:1264
ULONG MaxStackTraceDepth
Definition: ketypes.h:1164
ULONG DbgErrorPortPresent
Definition: ketypes.h:1206
ULONG DbgVirtEnabled
Definition: ketypes.h:1208
ULONG ImageFileExecutionOptions
Definition: ketypes.h:1246
_ANONYMOUS_UNION union _KUSER_SHARED_DATA::@3934 DUMMYUNIONNAME
ULONG Reserved2[7]
Definition: ketypes.h:1168
volatile ULONG ActiveProcessorCount
Definition: ketypes.h:1257
UCHAR TscQpcSpareFlag
Definition: ketypes.h:1196
ULONG ComPlusPackage
Definition: ketypes.h:1187
ULONG TickCountPad[1]
Definition: ketypes.h:1229
_ANONYMOUS_STRUCT struct _KUSER_SHARED_DATA::@3934::@3937 DUMMYSTRUCTNAME
ALTERNATIVE_ARCHITECTURE_TYPE AlternativeArchitecture
Definition: ketypes.h:1177
volatile USHORT ActiveGroupCount
Definition: ketypes.h:1258
ULONG SystemDllWowRelocation
Definition: ketypes.h:1263
volatile ULONG DismountCount
Definition: ketypes.h:1186
ULONG AltArchitecturePad[1]
Definition: ketypes.h:1178
volatile KSYSTEM_TIME TimeZoneBias
Definition: ketypes.h:1160
ULONG DataFlagsPad[1]
Definition: ketypes.h:1219
_ANONYMOUS_UNION union _KUSER_SHARED_DATA::@3935 DUMMYUNIONNAME2
ULONG DbgDynProcessorEnabled
Definition: ketypes.h:1211
ULONGLONG SystemCallPad[3]
Definition: ketypes.h:1223
USHORT UserModeGlobalLogger[16]
Definition: ketypes.h:1240
USHORT ImageNumberLow
Definition: ketypes.h:1161
volatile UCHAR BlockState
Definition: ketypes.h:447
PVOID SparePtr
Definition: ketypes.h:457
struct _KQUEUE * NotificationQueue
Definition: ketypes.h:454
struct _KTHREAD * Thread
Definition: ketypes.h:453
PVOID Object
Definition: ketypes.h:456
LIST_ENTRY WaitListEntry
Definition: ketypes.h:444
UCHAR WaitType
Definition: ketypes.h:446
USHORT WaitKey
Definition: ketypes.h:448
Definition: typedefs.h:120
ULONG Self
Definition: ketypes.h:1074
ULONG ArbitraryUserPointer
Definition: ketypes.h:1073
ULONG StackLimit
Definition: ketypes.h:1067
ULONG Version
Definition: ketypes.h:1071
ULONG StackBase
Definition: ketypes.h:1066
ULONG FiberData
Definition: ketypes.h:1070
ULONG SubSystemTib
Definition: ketypes.h:1068
ULONG ExceptionList
Definition: ketypes.h:1065
_ANONYMOUS_UNION union _NT_TIB32::@3932 DUMMYUNIONNAME
ULONG Version
Definition: ketypes.h:1084
ULONG64 StackLimit
Definition: ketypes.h:1080
ULONG64 ExceptionList
Definition: ketypes.h:1078
ULONG64 ArbitraryUserPointer
Definition: ketypes.h:1086
ULONG64 SubSystemTib
Definition: ketypes.h:1081
ULONG64 Self
Definition: ketypes.h:1087
_ANONYMOUS_UNION union _NT_TIB64::@3933 DUMMYUNIONNAME
ULONG64 StackBase
Definition: ketypes.h:1079
ULONG64 FiberData
Definition: ketypes.h:1083
PVOID ArbitraryUserPointer
Definition: compat.h:719
ULONG Version
Definition: ketypes.h:1058
struct _NT_TIB * Self
Definition: compat.h:720
union _NT_TIB::@346 DUMMYUNIONNAME
PVOID StackLimit
Definition: compat.h:713
PVOID StackBase
Definition: compat.h:712
PVOID SubSystemTib
Definition: compat.h:714
struct _EXCEPTION_REGISTRATION_RECORD * ExceptionList
Definition: compat.h:711
GROUP_AFFINITY GroupMask
Definition: ketypes.h:61
_Field_size_(GroupCount) GROUP_AFFINITY GroupMask[ANYSIZE_ARRAY]
PROCESSOR_RELATIONSHIP Processor
Definition: ketypes.h:116
_ANONYMOUS_UNION union _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX::@3913 DUMMYUNIONNAME
LOGICAL_PROCESSOR_RELATIONSHIP Relationship
Definition: ketypes.h:113
NUMA_NODE_RELATIONSHIP NumaNode
Definition: ketypes.h:117
LOGICAL_PROCESSOR_RELATIONSHIP Relationship
Definition: ketypes.h:99
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION::@3910::@3911 ProcessorCore
_ANONYMOUS_UNION union _SYSTEM_LOGICAL_PROCESSOR_INFORMATION::@3910 DUMMYUNIONNAME
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION::@3910::@3912 NumaNode
_In_opt_ PTIMER_APC_ROUTINE TimerApcRoutine
Definition: ketypes.h:1111
_In_opt_ struct _COUNTED_REASON_CONTEXT * WakeContext
Definition: ketypes.h:1113
_Out_opt_ PBOOLEAN PreviousState
Definition: ketypes.h:1116
_In_ LARGE_INTEGER DueTime
Definition: ketypes.h:1110
XSTATE_FEATURE Features[MAXIMUM_XSTATE_FEATURES]
Definition: ketypes.h:1140
ULONG64 EnabledFeatures
Definition: ketypes.h:1137
ULONG Length
Definition: ketypes.h:965
_Field_size_bytes_opt_(Length) PXSAVE_AREA Area
PVOID Buffer
Definition: ketypes.h:971
ULONG Reserved1
Definition: ketypes.h:966
ULONG64 Mask
Definition: ketypes.h:964
#define MODE
Definition: telnetd.h:40
#define OPTIONAL
Definition: typedefs.h:41
int64_t LONG64
Definition: typedefs.h:68
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:255
unsigned char * PBOOLEAN
Definition: typedefs.h:53
#define ANYSIZE_ARRAY
Definition: typedefs.h:46
int64_t LONGLONG
Definition: typedefs.h:68
#define NTAPI
Definition: typedefs.h:36
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define IN
Definition: typedefs.h:39
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
uint64_t ULONGLONG
Definition: typedefs.h:67
#define OUT
Definition: typedefs.h:40
char CCHAR
Definition: typedefs.h:51
short CSHORT
Definition: umtypes.h:127
_Must_inspect_result_ _In_ PWDF_DPC_CONFIG _In_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFDPC * Dpc
Definition: wdfdpc.h:112
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_INTERRUPT_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFINTERRUPT * Interrupt
Definition: wdfinterrupt.h:379
#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name)
#define _WDMDDK_
Definition: wdm.template.h:26
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
#define _WINNT_
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR _In_ ULONGLONG _In_ ULONGLONG _In_opt_ PEVENT_FILTER_DESCRIPTOR _Inout_opt_ PVOID CallbackContext
Definition: wmitypes.h:60
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR Level
Definition: wmitypes.h:56
#define MAXIMUM_SUPPORTED_EXTENSION
Definition: x86context.h:35
_In_ PKSYNCHRONIZE_ROUTINE _In_opt_ __drv_aliasesMem PVOID SynchronizeContext
Definition: kefuncs.h:539
_In_ UCHAR Processor
Definition: kefuncs.h:684
struct _KSEMAPHORE * PKSEMAPHORE
PVOID PKIPI_CONTEXT
Definition: ketypes.h:573
struct _KWAIT_BLOCK * PRKWAIT_BLOCK
struct _KBUGCHECK_DUMP_IO KBUGCHECK_DUMP_IO
struct _XSTATE_CONFIGURATION * PXSTATE_CONFIGURATION
$if(_WDMDDK_) typedef UCHAR KIRQL
Definition: ke.h:1
#define PROCESSOR_FEATURE_MAX
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX * PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX
struct _KIPI_COUNTS KIPI_COUNTS
struct _KDPC * PKDPC
enum _KSPIN_LOCK_QUEUE_NUMBER KSPIN_LOCK_QUEUE_NUMBER
NTSYSAPI volatile CCHAR KeNumberProcessors
Definition: ketypes.h:1270
struct _CONTEXT_CHUNK * PCONTEXT_CHUNK
PROCESSOR_CALLBACK_FUNCTION * PPROCESSOR_CALLBACK_FUNCTION
Definition: ketypes.h:362
* PXSAVE_AREA
Definition: ketypes.h:961
_KBUGCHECK_BUFFER_DUMP_STATE
Definition: ketypes.h:306
@ BufferIncomplete
Definition: ketypes.h:311
@ BufferEmpty
Definition: ketypes.h:307
@ BufferInserted
Definition: ketypes.h:308
@ BufferFinished
Definition: ketypes.h:310
@ BufferStarted
Definition: ketypes.h:309
XSAVE_AREA
Definition: ketypes.h:961
struct _KGATE * PKGATE
_KDPC_IMPORTANCE
Definition: ketypes.h:680
@ HighImportance
Definition: ketypes.h:683
@ MediumHighImportance
Definition: ketypes.h:684
@ LowImportance
Definition: ketypes.h:681
@ MediumImportance
Definition: ketypes.h:682
struct _KDEVICE_QUEUE_ENTRY * PKDEVICE_QUEUE_ENTRY
@ Latched
Definition: ketypes.h:477
@ LevelSensitive
Definition: ketypes.h:476
_PROCESSOR_CACHE_TYPE
Definition: ketypes.h:43
@ CacheInstruction
Definition: ketypes.h:45
@ CacheUnified
Definition: ketypes.h:44
@ CacheTrace
Definition: ketypes.h:47
@ CacheData
Definition: ketypes.h:46
struct _XSTATE_FEATURE XSTATE_FEATURE
struct _KMUTANT KMUTANT
#define XSAVE_ALIGN
Definition: ketypes.h:1011
struct _KGATE PRKGATE
enum _KE_PROCESSOR_CHANGE_NOTIFY_STATE KE_PROCESSOR_CHANGE_NOTIFY_STATE
enum _KD_OPTION KD_OPTION
*RESTRICTED_POINTER PRKAPC_STATE
Definition: ketypes.h:1285
struct _KUSER_SHARED_DATA KUSER_SHARED_DATA
XSAVE_FORMAT
Definition: ketypes.h:951
struct _KQUEUE * PKQUEUE
struct _KDPC PRKDPC
struct _KBUGCHECK_CALLBACK_RECORD * PKBUGCHECK_CALLBACK_RECORD
KSTART_ROUTINE * PKSTART_ROUTINE
Definition: ketypes.h:487
struct _KSYSTEM_TIME KSYSTEM_TIME
struct _NT_TIB NT_TIB
struct _KBUGCHECK_SECONDARY_DUMP_DATA KBUGCHECK_SECONDARY_DUMP_DATA
M128A
Definition: ketypes.h:925
struct _KLOCK_QUEUE_HANDLE * PKLOCK_QUEUE_HANDLE
struct _KMUTANT PRKMUTANT
NMI_CALLBACK * PNMI_CALLBACK
Definition: ketypes.h:338
enum _KSPIN_LOCK_QUEUE_NUMBER * PKSPIN_LOCK_QUEUE_NUMBER
enum _KBUGCHECK_DUMP_IO_TYPE KBUGCHECK_DUMP_IO_TYPE
_POOL_TYPE
Definition: ketypes.h:865
@ NonPagedPoolBaseCacheAlignedMustS
Definition: ketypes.h:878
@ NonPagedPoolSession
Definition: ketypes.h:880
@ NonPagedPoolCacheAlignedSession
Definition: ketypes.h:884
@ NonPagedPoolBaseMustSucceed
Definition: ketypes.h:876
@ PagedPoolCacheAligned
Definition: ketypes.h:871
@ NonPagedPoolCacheAligned
Definition: ketypes.h:870
@ PagedPoolSession
Definition: ketypes.h:881
@ DontUseThisTypeSession
Definition: ketypes.h:883
@ NonPagedPoolBase
Definition: ketypes.h:875
@ NonPagedPoolCacheAlignedMustS
Definition: ketypes.h:872
@ MaxPoolType
Definition: ketypes.h:873
@ NonPagedPool
Definition: ketypes.h:866
@ NonPagedPoolBaseCacheAligned
Definition: ketypes.h:877
@ PagedPoolCacheAlignedSession
Definition: ketypes.h:885
@ NonPagedPoolCacheAlignedMustSSession
Definition: ketypes.h:886
@ DontUseThisType
Definition: ketypes.h:869
@ NonPagedPoolMustSucceed
Definition: ketypes.h:868
@ PagedPool
Definition: ketypes.h:867
@ NonPagedPoolMustSucceedSession
Definition: ketypes.h:882
_KWAIT_REASON
Definition: ketypes.h:402
@ WrLpcReply
Definition: ketypes.h:420
@ WrGuardedMutex
Definition: ketypes.h:438
@ WrPageIn
Definition: ketypes.h:412
@ WrPoolAllocation
Definition: ketypes.h:413
@ Suspended
Definition: ketypes.h:408
@ WrPageOut
Definition: ketypes.h:422
@ PageIn
Definition: ketypes.h:405
@ WrKernel
Definition: ketypes.h:429
@ WrRundown
Definition: ketypes.h:439
@ PoolAllocation
Definition: ketypes.h:406
@ WrYieldExecution
Definition: ketypes.h:436
@ WrUserRequest
Definition: ketypes.h:416
@ WrProcessInSwap
Definition: ketypes.h:426
@ UserRequest
Definition: ketypes.h:409
@ WrLpcReceive
Definition: ketypes.h:419
@ WrFreePage
Definition: ketypes.h:411
@ DelayExecution
Definition: ketypes.h:407
@ WrKeyedEvent
Definition: ketypes.h:424
@ WrDispatchInt
Definition: ketypes.h:434
@ WrMutex
Definition: ketypes.h:432
@ WrCpuRateControl
Definition: ketypes.h:427
@ WrExecutive
Definition: ketypes.h:410
@ WrQuantumEnd
Definition: ketypes.h:433
@ WrResource
Definition: ketypes.h:430
@ WrEventPair
Definition: ketypes.h:417
@ WrCalloutStack
Definition: ketypes.h:428
@ WrPushLock
Definition: ketypes.h:431
@ WrPreempted
Definition: ketypes.h:435
@ WrQueue
Definition: ketypes.h:418
@ WrFastMutex
Definition: ketypes.h:437
@ MaximumWaitReason
Definition: ketypes.h:440
@ WrRendezvous
Definition: ketypes.h:423
@ FreePage
Definition: ketypes.h:404
@ WrVirtualMemory
Definition: ketypes.h:421
@ WrDelayExecution
Definition: ketypes.h:414
@ WrTerminated
Definition: ketypes.h:425
@ WrSuspended
Definition: ketypes.h:415
@ Executive
Definition: ketypes.h:403
struct _KSEMAPHORE PRKSEMAPHORE
struct _XSTATE_FEATURE * PXSTATE_FEATURE
struct _KQUEUE KQUEUE
struct _NUMA_NODE_RELATIONSHIP * PNUMA_NODE_RELATIONSHIP
struct _KLOCK_QUEUE_HANDLE KLOCK_QUEUE_HANDLE
IN ULONG Length
Definition: ketypes.h:319
enum _KINTERRUPT_MODE KINTERRUPT_MODE
struct _KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT * PKE_PROCESSOR_CHANGE_NOTIFY_CONTEXT
_In_ struct _KBUGCHECK_REASON_CALLBACK_RECORD _Inout_ PVOID _In_ ULONG ReasonSpecificDataLength
Definition: ketypes.h:258
struct _NT_TIB64 NT_TIB64
struct _XSTATE_SAVE XSTATE_SAVE
struct _CONTEXT_EX CONTEXT_EX
* PM128A
Definition: ketypes.h:925
CCHAR KPROCESSOR_MODE
Definition: ketypes.h:7
KSERVICE_ROUTINE * PKSERVICE_ROUTINE
Definition: ketypes.h:500
struct _CACHE_DESCRIPTOR * PCACHE_DESCRIPTOR
struct _CONTEXT_EX * PCONTEXT_EX
struct _KDEVICE_QUEUE * PKDEVICE_QUEUE
struct _GROUP_RELATIONSHIP * PGROUP_RELATIONSHIP
struct _CACHE_DESCRIPTOR CACHE_DESCRIPTOR
_KBUGCHECK_DUMP_IO_TYPE
Definition: ketypes.h:278
@ KbDumpIoBody
Definition: ketypes.h:281
@ KbDumpIoHeader
Definition: ketypes.h:280
@ KbDumpIoSecondaryData
Definition: ketypes.h:282
@ KbDumpIoComplete
Definition: ketypes.h:283
@ KbDumpIoInvalid
Definition: ketypes.h:279
struct _KGATE KGATE
_In_ BOOLEAN Handled
Definition: ketypes.h:337
struct _KBUGCHECK_DUMP_IO * PKBUGCHECK_DUMP_IO
_In_ struct _KBUGCHECK_REASON_CALLBACK_RECORD _Inout_ PVOID ReasonSpecificData
Definition: ketypes.h:257
_IRQL_requires_same_ _In_ PKE_PROCESSOR_CHANGE_NOTIFY_CONTEXT _Inout_ PNTSTATUS OperationStatus
Definition: ketypes.h:361
enum _POOL_TYPE POOL_TYPE
struct _KEVENT PRKEVENT
enum _LOCK_OPERATION LOCK_OPERATION
_KINTERRUPT_POLARITY
Definition: ketypes.h:368
@ InterruptActiveLow
Definition: ketypes.h:371
@ InterruptPolarityUnknown
Definition: ketypes.h:369
@ InterruptActiveHigh
Definition: ketypes.h:370
struct _CACHE_RELATIONSHIP * PCACHE_RELATIONSHIP
XSAVE_AREA_HEADER
Definition: ketypes.h:956
struct _KDEVICE_QUEUE_ENTRY PRKDEVICE_QUEUE_ENTRY
struct _KGUARDED_MUTEX * PKGUARDED_MUTEX
struct _TIMER_SET_COALESCABLE_TIMER_INFO TIMER_SET_COALESCABLE_TIMER_INFO
#define MAX_WOW64_SHARED_ENTRIES
Definition: ketypes.h:1143
struct _NUMA_NODE_RELATIONSHIP NUMA_NODE_RELATIONSHIP
struct _KBUGCHECK_REASON_CALLBACK_RECORD KBUGCHECK_REASON_CALLBACK_RECORD
struct _KMUTANT * PKMUTEX
_LOCK_OPERATION
Definition: ketypes.h:850
@ IoReadAccess
Definition: ketypes.h:851
@ IoWriteAccess
Definition: ketypes.h:852
@ IoModifyAccess
Definition: ketypes.h:853
EXCEPTION_REGISTRATION_RECORD
Definition: ketypes.h:1049
enum _PROCESSOR_CACHE_TYPE PROCESSOR_CACHE_TYPE
#define MAXIMUM_XSTATE_FEATURES
Definition: ketypes.h:1129
struct _KBUGCHECK_REASON_CALLBACK_RECORD * PKBUGCHECK_REASON_CALLBACK_RECORD
struct _KDPC KDPC
struct _KEVENT KEVENT
#define LOCK_QUEUE_TIMER_TABLE_LOCKS
enum _KDPC_IMPORTANCE KDPC_IMPORTANCE
struct _KBUGCHECK_ADD_PAGES KBUGCHECK_ADD_PAGES
_In_opt_ PVOID _In_opt_ PVOID SystemArgument1
Definition: ketypes.h:676
KSYNCHRONIZE_ROUTINE * PKSYNCHRONIZE_ROUTINE
Definition: ketypes.h:863
* PEXCEPTION_REGISTRATION_RECORD
Definition: ketypes.h:1049
struct _KMUTANT * PKMUTANT
_IRQL_requires_same_ _In_ PKE_PROCESSOR_CHANGE_NOTIFY_CONTEXT ChangeContext
Definition: ketypes.h:360
KMESSAGE_SERVICE_ROUTINE * PKMESSAGE_SERVICE_ROUTINE
Definition: ketypes.h:509
KBUGCHECK_CALLBACK_ROUTINE * PKBUGCHECK_CALLBACK_ROUTINE
Definition: ketypes.h:320
struct _DISPATCHER_HEADER * PDISPATCHER_HEADER
ULONG_PTR KSPIN_LOCK
Definition: ketypes.h:607
* PXSAVE_AREA_HEADER
Definition: ketypes.h:956
struct _NT_TIB32 NT_TIB32
struct _KBUGCHECK_CALLBACK_RECORD KBUGCHECK_CALLBACK_RECORD
struct _KWAIT_BLOCK KWAIT_BLOCK
struct _PROCESSOR_RELATIONSHIP * PPROCESSOR_RELATIONSHIP
#define TIMER_EXPIRED_INDEX_BITS
Definition: ketypes.h:725
struct _KDEVICE_QUEUE_ENTRY KDEVICE_QUEUE_ENTRY
struct _KSPIN_LOCK_QUEUE * PKSPIN_LOCK_QUEUE
struct _KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT
struct _KSPIN_LOCK_QUEUE KSPIN_LOCK_QUEUE
struct _KDEVICE_QUEUE PRKDEVICE_QUEUE
_MODE
Definition: ketypes.h:10
@ MaximumMode
Definition: ketypes.h:13
struct _KMUTANT PRKMUTEX
enum _KINTERRUPT_POLARITY KINTERRUPT_POLARITY
struct _GROUP_RELATIONSHIP GROUP_RELATIONSHIP
_TIMER_SET_INFORMATION_CLASS
Definition: ketypes.h:1103
@ MaxTimerInfoClass
Definition: ketypes.h:1105
@ TimerSetCoalescableTimer
Definition: ketypes.h:1104
_LOGICAL_PROCESSOR_RELATIONSHIP
Definition: ketypes.h:81
@ RelationNumaNode
Definition: ketypes.h:83
@ RelationCache
Definition: ketypes.h:84
@ RelationProcessorCore
Definition: ketypes.h:82
@ RelationGroup
Definition: ketypes.h:86
@ RelationProcessorPackage
Definition: ketypes.h:85
@ RelationAll
Definition: ketypes.h:87
#define TIMER_PROCESSOR_INDEX_BITS
Definition: ketypes.h:726
_ALTERNATIVE_ARCHITECTURE_TYPE
Definition: ketypes.h:889
@ EndAlternatives
Definition: ketypes.h:892
@ StandardDesign
Definition: ketypes.h:890
@ NEC98x86
Definition: ketypes.h:891
* PKAPC_STATE
Definition: ketypes.h:1285
struct _KAPC KAPC
struct _CONTEXT_CHUNK CONTEXT_CHUNK
_In_opt_ PVOID DeferredContext
Definition: ketypes.h:675
struct _XSTATE_CONFIGURATION XSTATE_CONFIGURATION
struct _TIMER_SET_COALESCABLE_TIMER_INFO * PTIMER_SET_COALESCABLE_TIMER_INFO
struct _KIPI_COUNTS * PKIPI_COUNTS
struct _XSTATE_SAVE * PXSTATE_SAVE
PROCESSOR_GROUP_INFO
Definition: ketypes.h:41
ULONG_PTR * PKSPIN_LOCK
Definition: ketypes.h:607
struct _KBUGCHECK_ADD_PAGES * PKBUGCHECK_ADD_PAGES
struct _KTIMER * PKTIMER
struct _KUSER_SHARED_DATA * PKUSER_SHARED_DATA
struct _KAPC * PKAPC
struct _KAPC PRKAPC
VOID(NTAPI * PKIPI_WORKER)(IN OUT PKIPI_CONTEXT PacketContext, IN PVOID Parameter1 OPTIONAL, IN PVOID Parameter2 OPTIONAL, IN PVOID Parameter3 OPTIONAL)
Definition: ketypes.h:576
struct _KDEVICE_QUEUE KDEVICE_QUEUE
struct _KSYSTEM_TIME * PKSYSTEM_TIME
_In_ struct _KBUGCHECK_REASON_CALLBACK_RECORD * Record
Definition: ketypes.h:256
_KE_PROCESSOR_CHANGE_NOTIFY_STATE
Definition: ketypes.h:340
@ KeProcessorAddCompleteNotify
Definition: ketypes.h:342
@ KeProcessorAddFailureNotify
Definition: ketypes.h:343
@ KeProcessorAddStartNotify
Definition: ketypes.h:341
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION SYSTEM_LOGICAL_PROCESSOR_INFORMATION
struct _PROCESSOR_RELATIONSHIP PROCESSOR_RELATIONSHIP
KIPI_BROADCAST_WORKER * PKIPI_BROADCAST_WORKER
Definition: ketypes.h:605
KBUGCHECK_CALLBACK_REASON
Definition: ketypes.h:247
* PPROCESSOR_GROUP_INFO
Definition: ketypes.h:41
struct _KSEMAPHORE KSEMAPHORE
enum _KINTERRUPT_POLARITY * PKINTERRUPT_POLARITY
_KSPIN_LOCK_QUEUE_NUMBER
Definition: ketypes.h:645
@ LockQueueNtfsStructLock
Definition: ketypes.h:658
@ LockQueueExpansionLock
Definition: ketypes.h:647
@ LockQueueTimerTableLock
Definition: ketypes.h:663
@ LockQueueWorkQueueLock
Definition: ketypes.h:654
@ LockQueueUnusedSpare16
Definition: ketypes.h:662
@ LockQueueNonPagedPoolLock
Definition: ketypes.h:652
@ LockQueueSystemSpaceLock
Definition: ketypes.h:649
@ LockQueueMasterLock
Definition: ketypes.h:651
@ LockQueueDispatcherLock
Definition: ketypes.h:646
@ LockQueueIoCancelLock
Definition: ketypes.h:653
@ LockQueuePfnLock
Definition: ketypes.h:648
@ LockQueueIoDatabaseLock
Definition: ketypes.h:656
@ LockQueueMmNonPagedPoolLock
Definition: ketypes.h:661
@ LockQueueBcbLock
Definition: ketypes.h:660
@ LockQueueIoVpbLock
Definition: ketypes.h:655
@ LockQueueMaximumLock
Definition: ketypes.h:664
@ LockQueueIoCompletionLock
Definition: ketypes.h:657
@ LockQueueAfdWorkQueueLock
Definition: ketypes.h:659
@ LockQueueVacbLock
Definition: ketypes.h:650
enum _KBUGCHECK_BUFFER_DUMP_STATE KBUGCHECK_BUFFER_DUMP_STATE
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX
_In_ PVOID _In_ ULONG MessageID
Definition: ketypes.h:508
struct _KQUEUE PRKQUEUE
VOID(NTAPI * PKINTERRUPT_ROUTINE)(VOID)
Definition: ketypes.h:490
struct _NT_TIB32 * PNT_TIB32
enum _LOGICAL_PROCESSOR_RELATIONSHIP LOGICAL_PROCESSOR_RELATIONSHIP
struct _KDPC_WATCHDOG_INFORMATION * PKDPC_WATCHDOG_INFORMATION
struct _KTIMER KTIMER
struct _KTIMER PRKTIMER
enum _TIMER_SET_INFORMATION_CLASS TIMER_SET_INFORMATION_CLASS
struct _NT_TIB * PNT_TIB
struct _KWAIT_BLOCK * PKWAIT_BLOCK
KBUGCHECK_REASON_CALLBACK_ROUTINE * PKBUGCHECK_REASON_CALLBACK_ROUTINE
Definition: ketypes.h:259
enum _KWAIT_REASON KWAIT_REASON
_In_opt_ PVOID _In_opt_ PVOID _In_opt_ PVOID SystemArgument2
Definition: ketypes.h:677
KAPC_STATE
Definition: ketypes.h:1285
_In_ PVOID ServiceContext
Definition: ketypes.h:499
$endif(_WDMDDK_) $if(_WDMDDK_||_WINNT_) typedef struct _PROCESSOR_GROUP_INFO
Definition: ketypes.h:33
EXPAND_STACK_CALLOUT * PEXPAND_STACK_CALLOUT
Definition: ketypes.h:1095
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION * PSYSTEM_LOGICAL_PROCESSOR_INFORMATION
struct _KMUTANT KMUTEX
_KD_OPTION
Definition: ketypes.h:511
@ KD_OPTION_SET_BLOCK_ENABLE
Definition: ketypes.h:512
* PXSAVE_FORMAT
Definition: ketypes.h:951
#define MINIMAL_XSTATE_AREA_LENGTH
Definition: ketypes.h:1012
struct _KBUGCHECK_SECONDARY_DUMP_DATA * PKBUGCHECK_SECONDARY_DUMP_DATA
KDEFERRED_ROUTINE * PKDEFERRED_ROUTINE
Definition: ketypes.h:678
struct _XSTATE_CONTEXT * PXSTATE_CONTEXT
struct _NT_TIB64 * PNT_TIB64
struct _KDPC_WATCHDOG_INFORMATION KDPC_WATCHDOG_INFORMATION
VOID(NTAPI * PTIMER_APC_ROUTINE)(_In_ PVOID TimerContext, _In_ ULONG TimerLowValue, _In_ LONG TimerHighValue)
Definition: ketypes.h:1098
struct _XSTATE_CONTEXT XSTATE_CONTEXT
struct _KGUARDED_MUTEX KGUARDED_MUTEX
struct _CACHE_RELATIONSHIP CACHE_RELATIONSHIP
struct _KEVENT * PKEVENT
struct _DISPATCHER_HEADER DISPATCHER_HEADER
enum _ALTERNATIVE_ARCHITECTURE_TYPE ALTERNATIVE_ARCHITECTURE_TYPE
unsigned char UCHAR
Definition: xmlstorage.h:181
__wchar_t WCHAR
Definition: xmlstorage.h:180
_In_ PLARGE_INTEGER _In_opt_ PTIMER_APC_ROUTINE _In_opt_ PVOID TimerContext
Definition: zwfuncs.h:430