ReactOS 0.4.16-dev-282-g4d0a26d
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//
75
76//
77// Debugger Configuration Settings
78//
91
92//
93// Breakpoint Data
94//
100
101//
102// Symbol Data
103//
105
106//
107// Tracepoint Data
108//
111
112//
113// Time Slip Support
114//
122
123//
124// Buffers
125//
128
129//
130// KdPrint Buffers
131//
139
140//
141// Debug Filter Masks
142//
240ULONG Kd_VDSDYN_Mask; // Specified in Vista+
242ULONG Kd_VDSLDR_Mask; // Specified in Vista+
249//
250// Components specified in Vista+, some of which we also use in ReactOS
251//
293//
294// Components specified in Windows 8
295//
301//
302// Components specified in Windows 10
303//
308// End Mask
310
311//
312// Debug Filter Component Table
313//
315{
391 &Kd_SR_Mask,
412 &Kd_VDSDYN_Mask, // Specified in Vista+
414 &Kd_VDSLDR_Mask, // Specified in Vista+
418 &Kd_MM_Mask,
421//
422// Components specified in Vista+, some of which we also use in ReactOS
423//
463 &Kd_SE_Mask,
465//
466// Components specified in Windows 8
467//
473//
474// Components specified in Windows 10
475//
480// End Mask
482};
483
485
486//
487// Debugger Data
488//
491
492//
493// Debugger Version and Data Block
494//
496{
497 0,
498 0,
501#if defined(_M_AMD64) || defined(_M_ARM64)
503#else
505#endif
506 IMAGE_FILE_MACHINE_NATIVE,
508 0,
509 0,
511 {0},
512 0,
513 0,
514 0
515};
516
517#if (NTDDI_VERSION >= NTDDI_WS03)
518C_ASSERT(sizeof(KDDEBUGGER_DATA64) >= 0x318);
519#endif
520
521#if !defined(_WIN64) && (defined(__GNUC__) || defined(__clang__))
522/* Minimal hackery for GCC/Clang, see commit b9cd3f2d9 (r25845) and de81021ba */
523#define PtrToUL64(x) ((ULPTR64)(ULONG_PTR)(x))
524#else
525#define PtrToUL64(x) ((ULPTR64)(x))
526#endif
528{
529 {{0}},
530 0,
532 0,
533 FIELD_OFFSET(KTHREAD, CallbackStack),
534#if defined(_M_ARM) || defined(_M_AMD64)
535 0,
536 0,
537#else
538 FIELD_OFFSET(KCALLOUT_FRAME, CallbackStack),
539 FIELD_OFFSET(KCALLOUT_FRAME, CBSTACK_FRAME_POINTER),
540#endif
541 FALSE,
543 0,
574 PAGE_SIZE,
582 PtrToUL64(0),
601 PtrToUL64(0),
616 PtrToUL64(0),
617 PtrToUL64(0),
618 FIELD_OFFSET(KTHREAD, NextProcessor),
619 FIELD_OFFSET(KTHREAD, Teb),
620 FIELD_OFFSET(KTHREAD, KernelStack),
621 FIELD_OFFSET(KTHREAD, InitialStack),
622 FIELD_OFFSET(KTHREAD, ApcState.Process),
624 0,
625 0,
626 sizeof(EPROCESS),
628 FIELD_OFFSET(EPROCESS, InheritedFromUniqueProcessId),
629 FIELD_OFFSET(EPROCESS, Pcb.DirectoryTableBase),
630 sizeof(KPRCB),
631 FIELD_OFFSET(KPRCB, DpcRoutineActive),
632 FIELD_OFFSET(KPRCB, CurrentThread),
633 FIELD_OFFSET(KPRCB, MHz),
634 FIELD_OFFSET(KPRCB, CpuType),
635 FIELD_OFFSET(KPRCB, VendorString),
636 FIELD_OFFSET(KPRCB, ProcessorState.ContextFrame),
638 sizeof(ETHREAD),
642 sizeof(KPCR),
643 KPCR_SELF_PCR_OFFSET,
644 KPCR_CURRENT_PRCB_OFFSET,
645 KPCR_CONTAINED_PRCB_OFFSET,
646 0,
647 0,
648#if defined(_M_ARM)
649 _WARN("KPCR_INITIAL_STACK_OFFSET, KPCR_STACK_LIMIT_OFFSET and KPRCB_PCR_PAGE_OFFSET not properly defined on ARM")
650 0,
651 0,
652 0,
653#else
654 KPCR_INITIAL_STACK_OFFSET,
655 KPCR_STACK_LIMIT_OFFSET,
656 KPRCB_PCR_PAGE_OFFSET,
657#endif
658 FIELD_OFFSET(KPRCB, ProcessorState.SpecialRegisters),
659#if defined(_M_IX86)
660 //
661 // x86 GDT/LDT/TSS constants
662 //
669 KGDT_LDT,
670 KGDT_TSS,
671 0,
672 0,
673#elif defined(_M_AMD64)
674 //
675 // AMD64 GDT/LDT/TSS constants
676 //
683 0,
685 0,
686 0,
687#else
688 //
689 // No GDT/LDT/TSS on other architectures
690 //
691 0,
692 0,
693 0,
694 0,
695 0,
696 0,
697 0,
698 0,
699 0,
700 0,
701#endif
704
705#if (NTDDI_VERSION >= NTDDI_LONGHORN)
706#error KdDebuggerDataBlock requires other fields for this NT version!
707#endif
708};
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:575
#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
ULONG Kd_WDI_Mask
Definition: kddata.c:253
ULONG Kd_LDR_Mask
Definition: kddata.c:229
ULONG Kd_KBDCLASS_Mask
Definition: kddata.c:164
ULONG Kd_PCI_Mask
Definition: kddata.c:210
ULONG Kd_USERGDI_Mask
Definition: kddata.c:259
ULONG Kd_APPCOMPAT_Mask
Definition: kddata.c:270
ULONG Kd_SAMSS_Mask
Definition: kddata.c:178
ULONG Kd_STORMINIPORT_Mask
Definition: kddata.c:234
ULONG Kd_POWER_Mask
Definition: kddata.c:296
BREAKPOINT_ENTRY KdpBreakpointTable[KD_BREAKPOINT_MAX]
Definition: kddata.c:95
ULONG Kd_EXFAT_Mask
Definition: kddata.c:288
ULONG Kd_KTM_Mask
Definition: kddata.c:255
ULONG Kd_CRASHDUMP_Mask
Definition: kddata.c:149
ULONG Kd_REDBOOK_Mask
Definition: kddata.c:154
ULONG Kd_BURNENG_Mask
Definition: kddata.c:193
ULONG Kd_CDAUDIO_Mask
Definition: kddata.c:150
ULONG Kd_IDEP_Mask
Definition: kddata.c:201
BOOLEAN KdPreviouslyEnabled
Definition: kddata.c:86
ULONG Kd_FVEVOL_Mask
Definition: kddata.c:266
ULONG Kd_MMCSS_Mask
Definition: kddata.c:260
ULONG TraceDataBufferPosition
Definition: kddata.c:110
ULONG Kd_MM_Mask
Definition: kddata.c:246
ULONG Kd_DRIVEEXTENDER_Mask
Definition: kddata.c:292
ULONG Kd_RSFILTER_Mask
Definition: kddata.c:208
BOOLEAN KdPitchDebugger
Definition: kddata.c:80
ULONG Kd_WER_Mask
Definition: kddata.c:300
ULONG Kd_FLOPPY_Mask
Definition: kddata.c:203
ULONG KdPrintBufferSize
Definition: kddata.c:136
ULONG Kd_GPIO_Mask
Definition: kddata.c:298
ULONG Kd_SCCLIENT_Mask
Definition: kddata.c:182
ULONG KdPrintRolloverCount
Definition: kddata.c:134
ULONG Kd_AMLI_Mask
Definition: kddata.c:169
ULONG Kd_MSDSM_Mask
Definition: kddata.c:281
ULONG Kd_SXS_Mask
Definition: kddata.c:195
ULONG Kd_IHVNETWORK_Mask
Definition: kddata.c:224
ULONG Kd_VSSDYNDISK_Mask
Definition: kddata.c:236
ULONG Kd_LSASS_Mask
Definition: kddata.c:285
BOOLEAN KdBlockEnable
Definition: kddata.c:84
LARGE_INTEGER KdTimerStop
Definition: kddata.c:121
ULONG Kd_FCPORT_Mask
Definition: kddata.c:209
ULONG Kd_LSERMOUS_Mask
Definition: kddata.c:161
ULONG Kd_UDFS_Mask
Definition: kddata.c:282
KSPIN_LOCK KdpPrintSpinLock
Definition: kddata.c:138
ULONG Kd_FASTFAT_Mask
Definition: kddata.c:177
ULONG KdPrintBufferChanges
Definition: kddata.c:137
ULONG Kd_SMSS_Mask
Definition: kddata.c:145
ULONG Kd_ALPC_Mask
Definition: kddata.c:252
ULONG Kd_DMSERVER_Mask
Definition: kddata.c:218
ULONG Kd_IHVBUS_Mask
Definition: kddata.c:226
ULONG Kd_KSECDD_Mask
Definition: kddata.c:278
ULONG Kd_FUSION_Mask
Definition: kddata.c:196
BOOLEAN KdpContextSent
Definition: kddata.c:69
ULONG Kd_WIN2000_Mask
Definition: kddata.c:143
ULONG Kd_EMS_Mask
Definition: kddata.c:264
LARGE_INTEGER KdPerformanceCounterRate
Definition: kddata.c:90
ULONG Kd_TCPIP6_Mask
Definition: kddata.c:230
ULONG Kd_NVCTRACE_Mask
Definition: kddata.c:268
ULONG_PTR KdpCurrentSymbolEnd
Definition: kddata.c:104
ULONG Kd_SERENUM_Mask
Definition: kddata.c:184
ULONG Kd_SERIAL_Mask
Definition: kddata.c:183
ULONG Kd_ISAPNP_Mask
Definition: kddata.c:231
ULONG Kd_STORPROP_Mask
Definition: kddata.c:155
BOOLEAN KdBreakAfterSymbolLoad
Definition: kddata.c:79
ULONG Kd_CLASSPNP_Mask
Definition: kddata.c:152
BOOLEAN KdEnteredDebugger
Definition: kddata.c:88
ULONG Kd_USBSTOR_Mask
Definition: kddata.c:271
ULONG Kd_VDSDYNDR_Mask
Definition: kddata.c:241
ULONG Kd_PNPMEM_Mask
Definition: kddata.c:216
ULONG Kd_TPM_Mask
Definition: kddata.c:261
ULONG Kd_CAPIMG_Mask
Definition: kddata.c:304
ULONG Kd_UHCD_Mask
Definition: kddata.c:185
ULONG Kd_DFRGIFC_Mask
Definition: kddata.c:244
ULONG Kd_W32TIME_Mask
Definition: kddata.c:206
ULONG Kd_SETUP_Mask
Definition: kddata.c:146
ULONG Kd_TXF_Mask
Definition: kddata.c:277
ULONG Kd_ACPI_Mask
Definition: kddata.c:168
ULONG Kd_IHVVIDEO_Mask
Definition: kddata.c:222
ULONG Kd_VDSUTIL_Mask
Definition: kddata.c:243
ULONG Kd_TERMSRV_Mask
Definition: kddata.c:205
ULONG Kd_LUAFV_Mask
Definition: kddata.c:269
ULONG Kd_SERMOUSE_Mask
Definition: kddata.c:160
ULONG Kd_WDT_Mask
Definition: kddata.c:265
ULONG Kd_TWOTRACK_Mask
Definition: kddata.c:166
VOID NTAPI RtlpBreakWithStatusInstruction(VOID)
ULONG Kd_WSOCKTRANSPORT_Mask
Definition: kddata.c:214
ULONG Kd_CRASHDUMPXHCI_Mask
Definition: kddata.c:297
ULONG Kd_AUTOCHK_Mask
Definition: kddata.c:187
LONG KdpTimeSlipPending
Definition: kddata.c:118
ULONG Kd_STORVSP_Mask
Definition: kddata.c:284
ULONG Kd_IOSTRESS_Mask
Definition: kddata.c:256
ULONG Kd_I8042PRT_Mask
Definition: kddata.c:159
KDPC KdpTimeSlipDpc
Definition: kddata.c:115
ULONG Kd_WMICORE_Mask
Definition: kddata.c:192
ULONG Kd_MOUNTMGR_Mask
Definition: kddata.c:275
ULONG Kd_WMILIB_Mask
Definition: kddata.c:167
ULONG Kd_FILETRACE_Mask
Definition: kddata.c:289
ULONG Kd_PCIIDE_Mask
Definition: kddata.c:202
ULONG Kd_PRINTSPOOLER_Mask
Definition: kddata.c:235
ULONG Kd_DMCONFIG_Mask
Definition: kddata.c:212
ULONG Kd_REFS_Mask
Definition: kddata.c:299
BOOLEAN BreakpointsSuspended
Definition: kddata.c:98
ULONG Kd_NTOSPNP_Mask
Definition: kddata.c:176
ULONG KdComponentTableSize
Definition: kddata.c:484
PKEVENT KdpTimeSlipEvent
Definition: kddata.c:119
ULONG Kd_KBDHID_Mask
Definition: kddata.c:162
ULONG Kd_DFSC_Mask
Definition: kddata.c:247
ULONG Kd_VIDEOPRT_Mask
Definition: kddata.c:173
DBGKD_GET_VERSION64 KdVersionBlock
Definition: kddata.c:495
PCHAR KdPrintWritePointer
Definition: kddata.c:133
ULONG Kd_IDLETASK_Mask
Definition: kddata.c:197
ULONG Kd_SR_Mask
Definition: kddata.c:219
ULONG Kd_FSLIB_Mask
Definition: kddata.c:307
ULONG Kd_MOUCLASS_Mask
Definition: kddata.c:165
LARGE_INTEGER KdTimerStart
Definition: kddata.c:121
ULONG Kd_VIDEO_Mask
Definition: kddata.c:171
ULONG Kd_CFR_Mask
Definition: kddata.c:276
ULONG Kd_CONFIG_Mask
Definition: kddata.c:158
ULONG Kd_VDSDYN_Mask
Definition: kddata.c:240
ULONG Kd_SYSTEM_Mask
Definition: kddata.c:144
ULONG Kd_DEFAULT_Mask
Definition: kddata.c:245
ULONG Kd_PERFLIB_Mask
Definition: kddata.c:254
ULONG Kd_VPCI_Mask
Definition: kddata.c:305
ULONG Kd_VSS_Mask
Definition: kddata.c:215
ULONG Kd_VDSLDR_Mask
Definition: kddata.c:242
ULONG Kd_SVCHOST_Mask
Definition: kddata.c:172
KSPIN_LOCK KdpDebuggerLock
Definition: kddata.c:67
ULONG Kd_SOFTPCI_Mask
Definition: kddata.c:198
ULONG KdDisableCount
Definition: kddata.c:89
ULONG Kd_HPS_Mask
Definition: kddata.c:227
BOOLEAN KdIgnoreUmExceptions
Definition: kddata.c:85
#define PtrToUL64(x)
Definition: kddata.c:525
ULONG Kd_VDS_Mask
Definition: kddata.c:238
PKDEBUG_ROUTINE KiDebugRoutine
Definition: kddata.c:74
ULONG Kd_UNIMODEM_Mask
Definition: kddata.c:189
ULONG Kd_PSHED_Mask
Definition: kddata.c:283
ULONG Kd_IHVAUDIO_Mask
Definition: kddata.c:223
ULONG Kd_IHVDRIVER_Mask
Definition: kddata.c:221
ULONG_PTR KdpCurrentSymbolStart
Definition: kddata.c:104
ULONG Kd_PREFETCHER_Mask
Definition: kddata.c:207
KSPIN_LOCK KdpTimeSlipEventLock
Definition: kddata.c:120
ULONG Kd_CNG_Mask
Definition: kddata.c:287
ULONG Kd_NDIS_Mask
Definition: kddata.c:267
ULONG TraceDataBuffer[40]
Definition: kddata.c:109
ULONG Kd_MPIO_Mask
Definition: kddata.c:280
ULONG Kd_CDROM_Mask
Definition: kddata.c:151
CHAR KdPrintDefaultCircularBuffer[KD_DEFAULT_LOG_BUFFER_SIZE]
Definition: kddata.c:132
ULONG Kd_PROCESSOR_Mask
Definition: kddata.c:217
ULONG Kd_IHVSTREAMING_Mask
Definition: kddata.c:225
ULONG Kd_WOW64_Mask
Definition: kddata.c:248
WORK_QUEUE_ITEM KdpTimeSlipWorkItem
Definition: kddata.c:117
KD_BREAKPOINT_TYPE KdpBreakpointInstruction
Definition: kddata.c:96
ULONG Kd_SE_Mask
Definition: kddata.c:291
ULONG Kd_SHPC_Mask
Definition: kddata.c:232
KDDEBUGGER_DATA64 KdDebuggerDataBlock
Definition: kddata.c:527
ULONG Kd_INFINIBAND_Mask
Definition: kddata.c:220
ULONG Kd_WHEA_Mask
Definition: kddata.c:258
ULONG Kd_RTLTHREADPOOL_Mask
Definition: kddata.c:228
ULONG Kd_SSPICLI_Mask
Definition: kddata.c:286
ULONG Kd_THREADORDER_Mask
Definition: kddata.c:262
ULONG Kd_DMIO_Mask
Definition: kddata.c:211
ULONG Kd_SBP2PORT_Mask
Definition: kddata.c:272
ULONG Kd_DCOMSS_Mask
Definition: kddata.c:188
ULONG Kd_MCHGR_Mask
Definition: kddata.c:200
ULONG Kd_XSAVE_Mask
Definition: kddata.c:290
ULONG Kd_NTFS_Mask
Definition: kddata.c:147
ULONG Kd_TCPIP_Mask
Definition: kddata.c:174
KD_CONTEXT KdpContext
Definition: kddata.c:65
ULONG Kd_PNPMGR_Mask
Definition: kddata.c:179
BOOLEAN KdDebuggerNotPresent
Definition: kddata.c:81
BOOLEAN KdpControlCPressed
Definition: kddata.c:68
ULONG Kd_HEAP_Mask
Definition: kddata.c:257
KSPIN_LOCK KdpDataSpinLock
Definition: kddata.c:490
ULONG Kd_FLTMGR_Mask
Definition: kddata.c:191
ULONG KdpNumInternalBreakpoints
Definition: kddata.c:99
ULONG Kd_STORPORT_Mask
Definition: kddata.c:233
ULONG Kd_VERIFIER_Mask
Definition: kddata.c:237
CHAR KdpPathBuffer[KDP_MSG_BUFFER_SIZE]
Definition: kddata.c:127
ULONG Kd_RPCPROXY_Mask
Definition: kddata.c:186
CHAR KdpMessageBuffer[KDP_MSG_BUFFER_SIZE]
Definition: kddata.c:126
PULONG KdComponentTable[MAX_KD_COMPONENT_TABLE_ENTRIES]
Definition: kddata.c:314
LIST_ENTRY KdpDebuggerDataListHead
Definition: kddata.c:489
ULONG Kd_TAPE_Mask
Definition: kddata.c:199
PCHAR KdPrintCircularBuffer
Definition: kddata.c:135
ULONG Kd_SCSIPORT_Mask
Definition: kddata.c:156
ULONG Kd_SCSIMINIPORT_Mask
Definition: kddata.c:157
ULONG Kd_MOUHID_Mask
Definition: kddata.c:163
ULONG Kd_HALIA64_Mask
Definition: kddata.c:170
ULONG Kd_COVERAGE_Mask
Definition: kddata.c:273
ULONG Kd_VDSBAS_Mask
Definition: kddata.c:239
ULONG Kd_FSTUB_Mask
Definition: kddata.c:148
ULONG Kd_FLTREGRESS_Mask
Definition: kddata.c:279
ULONG Kd_DMSYNTH_Mask
Definition: kddata.c:175
BOOLEAN KdpDebuggerStructuresInitialized
Definition: kddata.c:87
ULONG Kd_DMADMIN_Mask
Definition: kddata.c:213
ULONG Kd_NETAPI_Mask
Definition: kddata.c:180
BOOLEAN KdDebuggerEnabled
Definition: kddata.c:82
ULONG Kd_DISK_Mask
Definition: kddata.c:153
ULONG Kd_ENVIRON_Mask
Definition: kddata.c:263
ULONG Kd_IMAPI_Mask
Definition: kddata.c:194
BOOLEAN KdpOweBreakpoint
Definition: kddata.c:97
ULONG Kd_FDC_Mask
Definition: kddata.c:204
ULONG Kd_CACHEMGR_Mask
Definition: kddata.c:274
BOOLEAN KdpPortLocked
Definition: kddata.c:66
ULONG Kd_SCSERVER_Mask
Definition: kddata.c:181
LARGE_INTEGER KdTimerDifference
Definition: kddata.c:121
KTIMER KdpTimeSlipTimer
Definition: kddata.c:116
ULONG Kd_SIS_Mask
Definition: kddata.c:190
ULONG Kd_STORAGECLASSMEMORY_Mask
Definition: kddata.c:306
ULONG Kd_ENDOFTABLE_Mask
Definition: kddata.c:309
BOOLEAN KdAutoEnableOnEvent
Definition: kddata.c:83
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:588
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:599
#define KGDT64_SYS_TSS
Definition: ketypes.h:127
#define KGDT64_R3_CODE
Definition: ketypes.h:126
#define KGDT64_R0_CODE
Definition: ketypes.h:122
#define KGDT64_R3_DATA
Definition: ketypes.h:125
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