ReactOS 0.4.15-dev-7918-g2a2556c
kddata.c
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Kernel
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: ntoskrnl/kd64/kddata.c
5 * PURPOSE: Contains all global variables and settings for KD64
6 * PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
7 */
8
9/* INCLUDES ******************************************************************/
10
11#include <ntoskrnl.h>
12#define NDEBUG
13#include <debug.h>
14#include <mm/ARM3/miarm.h>
15#undef MmSystemRangeStart
16
18
19//
20// Apply the KIPCR WDK workaround for x86 and AMD64
21//
22#if defined(_M_IX86) || defined(_M_AMD64)
23#define KPCR KIPCR
24#endif
25
26#if defined(_M_IX86)
27
28#define KPCR_SELF_PCR_OFFSET FIELD_OFFSET(KPCR, SelfPcr)
29#define KPCR_CURRENT_PRCB_OFFSET FIELD_OFFSET(KPCR, Prcb)
30#define KPCR_CONTAINED_PRCB_OFFSET FIELD_OFFSET(KPCR, PrcbData)
31#define KPCR_INITIAL_STACK_OFFSET 0
32#define KPCR_STACK_LIMIT_OFFSET 0
33#define KPRCB_PCR_PAGE_OFFSET 0
34#define CBSTACK_FRAME_POINTER Ebp
35
36#elif defined(_M_AMD64)
37
38#define KPCR_SELF_PCR_OFFSET FIELD_OFFSET(KPCR, Self)
39#define KPCR_CURRENT_PRCB_OFFSET FIELD_OFFSET(KPCR, CurrentPrcb)
40#define KPCR_CONTAINED_PRCB_OFFSET FIELD_OFFSET(KPCR, Prcb)
41#define KPCR_INITIAL_STACK_OFFSET 0
42#define KPCR_STACK_LIMIT_OFFSET 0
43#define KPRCB_PCR_PAGE_OFFSET 0
44#define CBSTACK_FRAME_POINTER Rbp
45
46#elif defined(_M_ARM)
47
48#define KPCR_SELF_PCR_OFFSET 0
49#define KPCR_CURRENT_PRCB_OFFSET FIELD_OFFSET(KIPCR, Prcb)
50#define KPCR_CONTAINED_PRCB_OFFSET 0
51#define KPCR_INITIAL_STACK_OFFSET FIELD_OFFSET(KPCR, InitialStack)
52#define KPCR_STACK_LIMIT_OFFSET FIELD_OFFSET(KPCR, StackLimit)
53#define KPRCB_PCR_PAGE_OFFSET FIELD_OFFSET(KPRCB, PcrPage)
54#define CBSTACK_FRAME_POINTER DummyFramePointer
55
56#else
57#error Unsupported Architecture
58#endif
59
60/* GLOBALS *******************************************************************/
61
62//
63// Debugger State
64//
70
71//
72// Debug Trap Handlers
73//
76
77//
78// Debugger Configuration Settings
79//
92
93//
94// Breakpoint Data
95//
101
102//
103// Symbol Data
104//
106
107//
108// Tracepoint Data
109//
112
113//
114// Time Slip Support
115//
123
124//
125// Buffers
126//
129
130//
131// KdPrint Buffers
132//
140
141//
142// Debug Filter Masks
143//
241ULONG Kd_VDSDYN_Mask; // Specified in Vista+
243ULONG Kd_VDSLDR_Mask; // Specified in Vista+
250//
251// Components specified in Vista+, some of which we also use in ReactOS
252//
294//
295// Components specified in Windows 8
296//
302//
303// Components specified in Windows 10
304//
309// End Mask
311
312//
313// Debug Filter Component Table
314//
316{
392 &Kd_SR_Mask,
413 &Kd_VDSDYN_Mask, // Specified in Vista+
415 &Kd_VDSLDR_Mask, // Specified in Vista+
419 &Kd_MM_Mask,
422//
423// Components specified in Vista+, some of which we also use in ReactOS
424//
464 &Kd_SE_Mask,
466//
467// Components specified in Windows 8
468//
474//
475// Components specified in Windows 10
476//
481// End Mask
483};
484
486
487//
488// Debugger Data
489//
492
493//
494// Debugger Version and Data Block
495//
497{
498 0,
499 0,
502#if defined(_M_AMD64) || defined(_M_ARM64)
504#else
506#endif
507 IMAGE_FILE_MACHINE_NATIVE,
509 0,
510 0,
512 {0},
513 0,
514 0,
515 0
516};
517
518#if (NTDDI_VERSION >= NTDDI_WS03)
519C_ASSERT(sizeof(KDDEBUGGER_DATA64) >= 0x318);
520#endif
521
522#if !defined(_WIN64) && (defined(__GNUC__) || defined(__clang__))
523/* Minimal hackery for GCC/Clang, see commit b9cd3f2d9 (r25845) and de81021ba */
524#define PtrToUL64(x) ((ULPTR64)(ULONG_PTR)(x))
525#else
526#define PtrToUL64(x) ((ULPTR64)(x))
527#endif
529{
530 {{0}},
531 0,
533 0,
534 FIELD_OFFSET(KTHREAD, CallbackStack),
535#if defined(_M_ARM) || defined(_M_AMD64)
536 0,
537 0,
538#else
539 FIELD_OFFSET(KCALLOUT_FRAME, CallbackStack),
540 FIELD_OFFSET(KCALLOUT_FRAME, CBSTACK_FRAME_POINTER),
541#endif
542 FALSE,
544 0,
575 PAGE_SIZE,
583 PtrToUL64(0),
602 PtrToUL64(0),
617 PtrToUL64(0),
618 PtrToUL64(0),
619 FIELD_OFFSET(KTHREAD, NextProcessor),
620 FIELD_OFFSET(KTHREAD, Teb),
621 FIELD_OFFSET(KTHREAD, KernelStack),
622 FIELD_OFFSET(KTHREAD, InitialStack),
623 FIELD_OFFSET(KTHREAD, ApcState.Process),
625 0,
626 0,
627 sizeof(EPROCESS),
629 FIELD_OFFSET(EPROCESS, InheritedFromUniqueProcessId),
630 FIELD_OFFSET(EPROCESS, Pcb.DirectoryTableBase),
631 sizeof(KPRCB),
632 FIELD_OFFSET(KPRCB, DpcRoutineActive),
633 FIELD_OFFSET(KPRCB, CurrentThread),
634 FIELD_OFFSET(KPRCB, MHz),
635 FIELD_OFFSET(KPRCB, CpuType),
636 FIELD_OFFSET(KPRCB, VendorString),
637 FIELD_OFFSET(KPRCB, ProcessorState.ContextFrame),
639 sizeof(ETHREAD),
643 sizeof(KPCR),
644 KPCR_SELF_PCR_OFFSET,
645 KPCR_CURRENT_PRCB_OFFSET,
646 KPCR_CONTAINED_PRCB_OFFSET,
647 0,
648 0,
649#if defined(_M_ARM)
650 _WARN("KPCR_INITIAL_STACK_OFFSET, KPCR_STACK_LIMIT_OFFSET and KPRCB_PCR_PAGE_OFFSET not properly defined on ARM")
651 0,
652 0,
653 0,
654#else
655 KPCR_INITIAL_STACK_OFFSET,
656 KPCR_STACK_LIMIT_OFFSET,
657 KPRCB_PCR_PAGE_OFFSET,
658#endif
659 FIELD_OFFSET(KPRCB, ProcessorState.SpecialRegisters),
660#if defined(_M_IX86)
661 //
662 // x86 GDT/LDT/TSS constants
663 //
670 KGDT_LDT,
671 KGDT_TSS,
672 0,
673 0,
674#elif defined(_M_AMD64)
675 //
676 // AMD64 GDT/LDT/TSS constants
677 //
684 0,
686 0,
687 0,
688#else
689 //
690 // No GDT/LDT/TSS on other architectures
691 //
692 0,
693 0,
694 0,
695 0,
696 0,
697 0,
698 0,
699 0,
700 0,
701 0,
702#endif
705
706#if (NTDDI_VERSION >= NTDDI_LONGHORN)
707#error KdDebuggerDataBlock requires other fields for this NT version!
708#endif
709};
static POBJECT_TYPE ObpTypeObjectType
Definition: ObTypes.c:117
unsigned char BOOLEAN
#define RTL_NUMBER_OF(x)
Definition: RtlRegistry.c:12
ULONG_PTR KiBugCheckData[5]
Definition: bug.c:31
#define FALSE
Definition: types.h:117
PPEB Peb
Definition: dllmain.c:27
ULONG KSPIN_LOCK
Definition: env_spec_w32.h:72
#define PAGE_SIZE
Definition: env_spec_w32.h:49
ULONG ExpNumberOfPagedPools
Definition: expool.c:41
POOL_DESCRIPTOR NonPagedPoolDescriptor
Definition: expool.c:42
PPOOL_TRACKER_TABLE PoolTrackTable
Definition: expool.c:49
PPOOL_DESCRIPTOR ExpPagedPoolDescriptor[16+1]
Definition: expool.c:43
struct _EPROCESS EPROCESS
struct _ETHREAD ETHREAD
#define C_ASSERT(e)
Definition: intsafe.h:73
#define KD_BREAKPOINT_MAX
Definition: kd64.h:28
#define MAX_KD_COMPONENT_TABLE_ENTRIES
Definition: kd64.h:587
#define KD_DEFAULT_LOG_BUFFER_SIZE
Definition: kd64.h:17
BOOLEAN(NTAPI * PKDEBUG_ROUTINE)(IN PKTRAP_FRAME TrapFrame, IN PKEXCEPTION_FRAME ExceptionFrame, IN PEXCEPTION_RECORD ExceptionRecord, IN PCONTEXT Context, IN KPROCESSOR_MODE PreviousMode, IN BOOLEAN SecondChance)
Definition: kd64.h:66
#define KDP_MSG_BUFFER_SIZE
Definition: kd64.h:23
BOOLEAN NTAPI KdpStub(IN PKTRAP_FRAME TrapFrame, IN PKEXCEPTION_FRAME ExceptionFrame, IN PEXCEPTION_RECORD ExceptionRecord, IN PCONTEXT ContextRecord, IN KPROCESSOR_MODE PreviousMode, IN BOOLEAN SecondChanceException)
Definition: kdtrap.c:266
BOOLEAN(NTAPI * PKDEBUG_SWITCH_ROUTINE)(IN PEXCEPTION_RECORD ExceptionRecord, IN PCONTEXT Context, IN BOOLEAN SecondChance)
Definition: kd64.h:77
ULONG Kd_WDI_Mask
Definition: kddata.c:254
ULONG Kd_LDR_Mask
Definition: kddata.c:230
ULONG Kd_KBDCLASS_Mask
Definition: kddata.c:165
ULONG Kd_PCI_Mask
Definition: kddata.c:211
ULONG Kd_USERGDI_Mask
Definition: kddata.c:260
ULONG Kd_APPCOMPAT_Mask
Definition: kddata.c:271
ULONG Kd_SAMSS_Mask
Definition: kddata.c:179
ULONG Kd_STORMINIPORT_Mask
Definition: kddata.c:235
ULONG Kd_POWER_Mask
Definition: kddata.c:297
BREAKPOINT_ENTRY KdpBreakpointTable[KD_BREAKPOINT_MAX]
Definition: kddata.c:96
ULONG Kd_EXFAT_Mask
Definition: kddata.c:289
ULONG Kd_KTM_Mask
Definition: kddata.c:256
ULONG Kd_CRASHDUMP_Mask
Definition: kddata.c:150
ULONG Kd_REDBOOK_Mask
Definition: kddata.c:155
ULONG Kd_BURNENG_Mask
Definition: kddata.c:194
ULONG Kd_CDAUDIO_Mask
Definition: kddata.c:151
ULONG Kd_IDEP_Mask
Definition: kddata.c:202
BOOLEAN KdPreviouslyEnabled
Definition: kddata.c:87
ULONG Kd_FVEVOL_Mask
Definition: kddata.c:267
ULONG Kd_MMCSS_Mask
Definition: kddata.c:261
ULONG TraceDataBufferPosition
Definition: kddata.c:111
ULONG Kd_MM_Mask
Definition: kddata.c:247
ULONG Kd_DRIVEEXTENDER_Mask
Definition: kddata.c:293
ULONG Kd_RSFILTER_Mask
Definition: kddata.c:209
BOOLEAN KdPitchDebugger
Definition: kddata.c:81
ULONG Kd_WER_Mask
Definition: kddata.c:301
ULONG Kd_FLOPPY_Mask
Definition: kddata.c:204
ULONG KdPrintBufferSize
Definition: kddata.c:137
ULONG Kd_GPIO_Mask
Definition: kddata.c:299
ULONG Kd_SCCLIENT_Mask
Definition: kddata.c:183
ULONG KdPrintRolloverCount
Definition: kddata.c:135
ULONG Kd_AMLI_Mask
Definition: kddata.c:170
ULONG Kd_MSDSM_Mask
Definition: kddata.c:282
ULONG Kd_SXS_Mask
Definition: kddata.c:196
ULONG Kd_IHVNETWORK_Mask
Definition: kddata.c:225
ULONG Kd_VSSDYNDISK_Mask
Definition: kddata.c:237
ULONG Kd_LSASS_Mask
Definition: kddata.c:286
BOOLEAN KdBlockEnable
Definition: kddata.c:85
LARGE_INTEGER KdTimerStop
Definition: kddata.c:122
ULONG Kd_FCPORT_Mask
Definition: kddata.c:210
ULONG Kd_LSERMOUS_Mask
Definition: kddata.c:162
ULONG Kd_UDFS_Mask
Definition: kddata.c:283
KSPIN_LOCK KdpPrintSpinLock
Definition: kddata.c:139
ULONG Kd_FASTFAT_Mask
Definition: kddata.c:178
ULONG KdPrintBufferChanges
Definition: kddata.c:138
ULONG Kd_SMSS_Mask
Definition: kddata.c:146
ULONG Kd_ALPC_Mask
Definition: kddata.c:253
ULONG Kd_DMSERVER_Mask
Definition: kddata.c:219
ULONG Kd_IHVBUS_Mask
Definition: kddata.c:227
ULONG Kd_KSECDD_Mask
Definition: kddata.c:279
ULONG Kd_FUSION_Mask
Definition: kddata.c:197
BOOLEAN KdpContextSent
Definition: kddata.c:69
ULONG Kd_WIN2000_Mask
Definition: kddata.c:144
ULONG Kd_EMS_Mask
Definition: kddata.c:265
LARGE_INTEGER KdPerformanceCounterRate
Definition: kddata.c:91
ULONG Kd_TCPIP6_Mask
Definition: kddata.c:231
ULONG Kd_NVCTRACE_Mask
Definition: kddata.c:269
ULONG_PTR KdpCurrentSymbolEnd
Definition: kddata.c:105
ULONG Kd_SERENUM_Mask
Definition: kddata.c:185
ULONG Kd_SERIAL_Mask
Definition: kddata.c:184
ULONG Kd_ISAPNP_Mask
Definition: kddata.c:232
ULONG Kd_STORPROP_Mask
Definition: kddata.c:156
BOOLEAN KdBreakAfterSymbolLoad
Definition: kddata.c:80
ULONG Kd_CLASSPNP_Mask
Definition: kddata.c:153
BOOLEAN KdEnteredDebugger
Definition: kddata.c:89
ULONG Kd_USBSTOR_Mask
Definition: kddata.c:272
ULONG Kd_VDSDYNDR_Mask
Definition: kddata.c:242
ULONG Kd_PNPMEM_Mask
Definition: kddata.c:217
ULONG Kd_TPM_Mask
Definition: kddata.c:262
ULONG Kd_CAPIMG_Mask
Definition: kddata.c:305
ULONG Kd_UHCD_Mask
Definition: kddata.c:186
ULONG Kd_DFRGIFC_Mask
Definition: kddata.c:245
ULONG Kd_W32TIME_Mask
Definition: kddata.c:207
ULONG Kd_SETUP_Mask
Definition: kddata.c:147
ULONG Kd_TXF_Mask
Definition: kddata.c:278
ULONG Kd_ACPI_Mask
Definition: kddata.c:169
ULONG Kd_IHVVIDEO_Mask
Definition: kddata.c:223
ULONG Kd_VDSUTIL_Mask
Definition: kddata.c:244
ULONG Kd_TERMSRV_Mask
Definition: kddata.c:206
ULONG Kd_LUAFV_Mask
Definition: kddata.c:270
ULONG Kd_SERMOUSE_Mask
Definition: kddata.c:161
ULONG Kd_WDT_Mask
Definition: kddata.c:266
ULONG Kd_TWOTRACK_Mask
Definition: kddata.c:167
VOID NTAPI RtlpBreakWithStatusInstruction(VOID)
ULONG Kd_WSOCKTRANSPORT_Mask
Definition: kddata.c:215
ULONG Kd_CRASHDUMPXHCI_Mask
Definition: kddata.c:298
ULONG Kd_AUTOCHK_Mask
Definition: kddata.c:188
LONG KdpTimeSlipPending
Definition: kddata.c:119
ULONG Kd_STORVSP_Mask
Definition: kddata.c:285
ULONG Kd_IOSTRESS_Mask
Definition: kddata.c:257
ULONG Kd_I8042PRT_Mask
Definition: kddata.c:160
KDPC KdpTimeSlipDpc
Definition: kddata.c:116
ULONG Kd_WMICORE_Mask
Definition: kddata.c:193
ULONG Kd_MOUNTMGR_Mask
Definition: kddata.c:276
ULONG Kd_WMILIB_Mask
Definition: kddata.c:168
ULONG Kd_FILETRACE_Mask
Definition: kddata.c:290
ULONG Kd_PCIIDE_Mask
Definition: kddata.c:203
ULONG Kd_PRINTSPOOLER_Mask
Definition: kddata.c:236
ULONG Kd_DMCONFIG_Mask
Definition: kddata.c:213
ULONG Kd_REFS_Mask
Definition: kddata.c:300
BOOLEAN BreakpointsSuspended
Definition: kddata.c:99
ULONG Kd_NTOSPNP_Mask
Definition: kddata.c:177
ULONG KdComponentTableSize
Definition: kddata.c:485
PKEVENT KdpTimeSlipEvent
Definition: kddata.c:120
ULONG Kd_KBDHID_Mask
Definition: kddata.c:163
ULONG Kd_DFSC_Mask
Definition: kddata.c:248
ULONG Kd_VIDEOPRT_Mask
Definition: kddata.c:174
DBGKD_GET_VERSION64 KdVersionBlock
Definition: kddata.c:496
PCHAR KdPrintWritePointer
Definition: kddata.c:134
ULONG Kd_IDLETASK_Mask
Definition: kddata.c:198
ULONG Kd_SR_Mask
Definition: kddata.c:220
ULONG Kd_FSLIB_Mask
Definition: kddata.c:308
ULONG Kd_MOUCLASS_Mask
Definition: kddata.c:166
LARGE_INTEGER KdTimerStart
Definition: kddata.c:122
ULONG Kd_VIDEO_Mask
Definition: kddata.c:172
ULONG Kd_CFR_Mask
Definition: kddata.c:277
ULONG Kd_CONFIG_Mask
Definition: kddata.c:159
ULONG Kd_VDSDYN_Mask
Definition: kddata.c:241
ULONG Kd_SYSTEM_Mask
Definition: kddata.c:145
ULONG Kd_DEFAULT_Mask
Definition: kddata.c:246
ULONG Kd_PERFLIB_Mask
Definition: kddata.c:255
ULONG Kd_VPCI_Mask
Definition: kddata.c:306
ULONG Kd_VSS_Mask
Definition: kddata.c:216
ULONG Kd_VDSLDR_Mask
Definition: kddata.c:243
ULONG Kd_SVCHOST_Mask
Definition: kddata.c:173
KSPIN_LOCK KdpDebuggerLock
Definition: kddata.c:67
ULONG Kd_SOFTPCI_Mask
Definition: kddata.c:199
ULONG KdDisableCount
Definition: kddata.c:90
ULONG Kd_HPS_Mask
Definition: kddata.c:228
BOOLEAN KdIgnoreUmExceptions
Definition: kddata.c:86
#define PtrToUL64(x)
Definition: kddata.c:526
ULONG Kd_VDS_Mask
Definition: kddata.c:239
PKDEBUG_ROUTINE KiDebugRoutine
Definition: kddata.c:74
ULONG Kd_UNIMODEM_Mask
Definition: kddata.c:190
ULONG Kd_PSHED_Mask
Definition: kddata.c:284
ULONG Kd_IHVAUDIO_Mask
Definition: kddata.c:224
ULONG Kd_IHVDRIVER_Mask
Definition: kddata.c:222
ULONG_PTR KdpCurrentSymbolStart
Definition: kddata.c:105
ULONG Kd_PREFETCHER_Mask
Definition: kddata.c:208
KSPIN_LOCK KdpTimeSlipEventLock
Definition: kddata.c:121
ULONG Kd_CNG_Mask
Definition: kddata.c:288
ULONG Kd_NDIS_Mask
Definition: kddata.c:268
ULONG TraceDataBuffer[40]
Definition: kddata.c:110
ULONG Kd_MPIO_Mask
Definition: kddata.c:281
ULONG Kd_CDROM_Mask
Definition: kddata.c:152
PKDEBUG_SWITCH_ROUTINE KiDebugSwitchRoutine
Definition: kddata.c:75
CHAR KdPrintDefaultCircularBuffer[KD_DEFAULT_LOG_BUFFER_SIZE]
Definition: kddata.c:133
ULONG Kd_PROCESSOR_Mask
Definition: kddata.c:218
ULONG Kd_IHVSTREAMING_Mask
Definition: kddata.c:226
ULONG Kd_WOW64_Mask
Definition: kddata.c:249
WORK_QUEUE_ITEM KdpTimeSlipWorkItem
Definition: kddata.c:118
KD_BREAKPOINT_TYPE KdpBreakpointInstruction
Definition: kddata.c:97
ULONG Kd_SE_Mask
Definition: kddata.c:292
ULONG Kd_SHPC_Mask
Definition: kddata.c:233
KDDEBUGGER_DATA64 KdDebuggerDataBlock
Definition: kddata.c:528
ULONG Kd_INFINIBAND_Mask
Definition: kddata.c:221
ULONG Kd_WHEA_Mask
Definition: kddata.c:259
ULONG Kd_RTLTHREADPOOL_Mask
Definition: kddata.c:229
ULONG Kd_SSPICLI_Mask
Definition: kddata.c:287
ULONG Kd_THREADORDER_Mask
Definition: kddata.c:263
ULONG Kd_DMIO_Mask
Definition: kddata.c:212
ULONG Kd_SBP2PORT_Mask
Definition: kddata.c:273
ULONG Kd_DCOMSS_Mask
Definition: kddata.c:189
ULONG Kd_MCHGR_Mask
Definition: kddata.c:201
ULONG Kd_XSAVE_Mask
Definition: kddata.c:291
ULONG Kd_NTFS_Mask
Definition: kddata.c:148
ULONG Kd_TCPIP_Mask
Definition: kddata.c:175
KD_CONTEXT KdpContext
Definition: kddata.c:65
ULONG Kd_PNPMGR_Mask
Definition: kddata.c:180
BOOLEAN KdDebuggerNotPresent
Definition: kddata.c:82
BOOLEAN KdpControlCPressed
Definition: kddata.c:68
ULONG Kd_HEAP_Mask
Definition: kddata.c:258
KSPIN_LOCK KdpDataSpinLock
Definition: kddata.c:491
ULONG Kd_FLTMGR_Mask
Definition: kddata.c:192
ULONG KdpNumInternalBreakpoints
Definition: kddata.c:100
ULONG Kd_STORPORT_Mask
Definition: kddata.c:234
ULONG Kd_VERIFIER_Mask
Definition: kddata.c:238
CHAR KdpPathBuffer[KDP_MSG_BUFFER_SIZE]
Definition: kddata.c:128
ULONG Kd_RPCPROXY_Mask
Definition: kddata.c:187
CHAR KdpMessageBuffer[KDP_MSG_BUFFER_SIZE]
Definition: kddata.c:127
PULONG KdComponentTable[MAX_KD_COMPONENT_TABLE_ENTRIES]
Definition: kddata.c:315
LIST_ENTRY KdpDebuggerDataListHead
Definition: kddata.c:490
ULONG Kd_TAPE_Mask
Definition: kddata.c:200
PCHAR KdPrintCircularBuffer
Definition: kddata.c:136
ULONG Kd_SCSIPORT_Mask
Definition: kddata.c:157
ULONG Kd_SCSIMINIPORT_Mask
Definition: kddata.c:158
ULONG Kd_MOUHID_Mask
Definition: kddata.c:164
ULONG Kd_HALIA64_Mask
Definition: kddata.c:171
ULONG Kd_COVERAGE_Mask
Definition: kddata.c:274
ULONG Kd_VDSBAS_Mask
Definition: kddata.c:240
ULONG Kd_FSTUB_Mask
Definition: kddata.c:149
ULONG Kd_FLTREGRESS_Mask
Definition: kddata.c:280
ULONG Kd_DMSYNTH_Mask
Definition: kddata.c:176
BOOLEAN KdpDebuggerStructuresInitialized
Definition: kddata.c:88
ULONG Kd_DMADMIN_Mask
Definition: kddata.c:214
ULONG Kd_NETAPI_Mask
Definition: kddata.c:181
BOOLEAN KdDebuggerEnabled
Definition: kddata.c:83
ULONG Kd_DISK_Mask
Definition: kddata.c:154
ULONG Kd_ENVIRON_Mask
Definition: kddata.c:264
ULONG Kd_IMAPI_Mask
Definition: kddata.c:195
BOOLEAN KdpOweBreakpoint
Definition: kddata.c:98
ULONG Kd_FDC_Mask
Definition: kddata.c:205
ULONG Kd_CACHEMGR_Mask
Definition: kddata.c:275
BOOLEAN KdpPortLocked
Definition: kddata.c:66
ULONG Kd_SCSERVER_Mask
Definition: kddata.c:182
LARGE_INTEGER KdTimerDifference
Definition: kddata.c:122
KTIMER KdpTimeSlipTimer
Definition: kddata.c:117
ULONG Kd_SIS_Mask
Definition: kddata.c:191
ULONG Kd_STORAGECLASSMEMORY_Mask
Definition: kddata.c:307
ULONG Kd_ENDOFTABLE_Mask
Definition: kddata.c:310
BOOLEAN KdAutoEnableOnEvent
Definition: kddata.c:84
PLOADER_PARAMETER_BLOCK KeLoaderBlock
Definition: krnlinit.c:29
PFN_NUMBER MmLowestPhysicalPage
Definition: meminit.c:30
PFN_NUMBER MmHighestPhysicalPage
Definition: meminit.c:31
PMMPTE MmSystemPtesStart[MaximumPtePoolTypes]
Definition: syspte.c:22
PVOID MmPagedPoolStart
Definition: miarm.h:574
PMMPTE MmSystemPtesEnd[MaximumPtePoolTypes]
Definition: syspte.c:23
ULONG_PTR MmSubsectionBase
Definition: section.c:196
PVOID MmNonPagedPoolEnd
Definition: mminit.c:99
MM_PAGED_POOL_INFO MmPagedPoolInfo
Definition: pool.c:25
SIZE_T MmAllocatedNonPagedPool
Definition: pool.c:26
ULONG MmSpecialPoolTag
Definition: pool.c:29
SIZE_T MmSizeOfPagedPoolInBytes
Definition: miarm.h:585
#define KGDT64_SYS_TSS
Definition: ketypes.h:138
#define KGDT64_R3_CODE
Definition: ketypes.h:137
#define KGDT64_R0_CODE
Definition: ketypes.h:133
#define KGDT64_R3_DATA
Definition: ketypes.h:136
struct _KPRCB KPRCB
#define KGDT_R3_DATA
Definition: ketypes.h:126
#define KGDT_R3_CODE
Definition: ketypes.h:125
#define KGDT_R3_TEB
Definition: ketypes.h:129
#define KGDT_TSS
Definition: ketypes.h:127
#define KGDT_R0_PCR
Definition: ketypes.h:128
#define KGDT_LDT
Definition: ketypes.h:131
#define KGDT_R0_CODE
Definition: ketypes.h:123
#define KGDT_R0_DATA
Definition: ketypes.h:124
CHAR NtBuildLab[]
Definition: init.c:64
ULONG CmNtCSDVersion
Definition: init.c:59
LIST_ENTRY ExpSystemResourcesList
Definition: resource.c:80
#define KD_BREAKPOINT_TYPE
Definition: ke.h:121
#define KD_BREAKPOINT_VALUE
Definition: ke.h:123
#define MmSystemRangeStart
Definition: mm.h:32
LIST_ENTRY IopErrorLogListHead
Definition: error.c:30
ULONG IopNumTriageDumpDataBlocks
Definition: iomgr.c:46
PVOID IopTriageDumpDataBlocks[64]
Definition: iomgr.c:47
LIST_ENTRY KeBugcheckCallbackListHead
Definition: bug.c:22
PKPRCB KiProcessorBlock[]
Definition: krnlinit.c:32
ULONG KeTimeIncrement
Definition: clock.c:22
NTSTATUS NTAPI KiCallUserMode(IN PVOID *OutputBuffer, IN PULONG OutputLength)
Definition: usercall.c:321
PVOID MmUnloadedDrivers
Definition: sysldr.c:30
PFN_NUMBER MmResidentAvailablePages
Definition: freelist.c:27
PVOID MmTriageActionTaken
Definition: drvmgmt.c:27
SIZE_T MmTotalCommitLimit
Definition: mminit.c:359
LIST_ENTRY MmLoadedUserImageList
Definition: sysldr.c:22
PFN_COUNT MmNumberOfPhysicalPages
Definition: init.c:48
MMPFNLIST MmStandbyPageListHead
Definition: pfnlist.c:43
PMMPFN MmPfnDatabase
Definition: freelist.c:24
MMPFNLIST MmModifiedPageListHead
Definition: pfnlist.c:45
MMPFNLIST MmZeroedPageListHead
Definition: pfnlist.c:41
SIZE_T MmDriverCommit
Definition: freelist.c:32
PVOID MmLastUnloadedDrivers
Definition: sysldr.c:31
SIZE_T MmProcessCommit
Definition: freelist.c:33
MM_DRIVER_VERIFIER_DATA MmVerifierData
Definition: drvmgmt.c:20
MMPFNLIST MmModifiedNoWritePageListHead
Definition: pfnlist.c:47
PVOID KernelVerifier
Definition: drvmgmt.c:28
SIZE_T MmtotalCommitLimitMaximum
Definition: freelist.c:36
_Out_ PKAPC_STATE ApcState
Definition: mm.h:1765
PFN_NUMBER MmAvailablePages
Definition: freelist.c:26
SIZE_T MmPagedPoolCommit
Definition: freelist.c:34
SIZE_T MmSharedCommit
Definition: freelist.c:31
ULONG MmNumberOfPagingFiles
Definition: pagefile.c:63
SIZE_T MmTotalCommittedPages
Definition: freelist.c:30
MMPFNLIST MmFreePageListHead
Definition: pfnlist.c:42
SIZE_T MmPeakCommitment
Definition: freelist.c:35
PVOID MmNonPagedSystemStart
Definition: init.c:23
ULONG MmUserProbeAddress
Definition: init.c:50
ULONG MmSessionSize
Definition: init.c:34
ULONG MmMaximumNonPagedPoolInBytes
Definition: init.c:22
PVOID MmSessionBase
Definition: init.c:33
MMSUPPORT MmSystemCacheWs
Definition: init.c:55
PVOID MmNonPagedPoolStart
Definition: init.c:24
PPHYSICAL_MEMORY_DESCRIPTOR MmPhysicalMemoryBlock
Definition: init.c:45
PVOID MmSystemCacheStart
Definition: init.c:53
PVOID MmSystemCacheEnd
Definition: init.c:54
PVOID MmPagedPoolEnd
Definition: init.c:26
_In_opt_ PENTER_STATE_SYSTEM_HANDLER _In_opt_ PVOID _In_ LONG _In_opt_ LONG volatile * Number
Definition: ntpoapi.h:207
POBJECT_DIRECTORY ObpRootDirectoryObject
Definition: obname.c:19
long LONG
Definition: pedump.c:60
LIST_ENTRY PsLoadedModuleList
Definition: sysldr.c:21
PHANDLE_TABLE PspCidTable
Definition: psmgr.c:48
LIST_ENTRY PsActiveProcessHead
Definition: process.c:22
PVOID MmHighestUserAddress
Definition: rtlcompat.c:29
#define CURRENT_KD_SECONDARY_VERSION
Definition: wdbgexts.h:24
#define DBGKD_VERS_FLAG_PTR64
Definition: wdbgexts.h:29
#define DBGKD_VERS_FLAG_DATA
Definition: wdbgexts.h:28
@ DBGKD_SIMULATION_NONE
Definition: wdbgexts.h:12
#define _WARN(msg)
Definition: debug.h:263
struct _KPCR KPCR
Definition: kd64.h:54
Definition: ketypes.h:699
Definition: typedefs.h:120
uint32_t * PULONG
Definition: typedefs.h:59
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:255
#define NTAPI
Definition: typedefs.h:36
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
char * PCHAR
Definition: typedefs.h:51
#define PACKET_TYPE_MAX
Definition: windbgkd.h:53
#define DBGKD_64BIT_PROTOCOL_VERSION2
Definition: windbgkd.h:154
char CHAR
Definition: xmlstorage.h:175