test: 4/kddata.c File Reference

Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

# kddata.c File Reference

`#include "kdp.h"`
`#include "ke.h"`
`#include "pool.h"`
`#include "stdio.h"`

Go to the source code of this file.

## Variables

ULONG | KiBugCheckData []
PHANDLE_TABLE | PspCidTable
LIST_ENTRY | ExpSystemResourcesList
PPOOL_DESCRIPTOR | ExpPagedPoolDescriptor
ULONG | ExpNumberOfPagedPools
ULONG | KeTimeIncrement
LIST_ENTRY | KeBugCheckCallbackListHead
ULONG | KiBugcheckData []
LIST_ENTRY | IopErrorLogListHead
POBJECT_DIRECTORY | ObpRootDirectoryObject
POBJECT_TYPE | ObpTypeObjectType
PVOID | MmSystemCacheStart
PVOID | MmSystemCacheEnd
PVOID | MmPfnDatabase
ULONG | MmSystemPtesStart []
ULONG | MmSystemPtesEnd []
ULONG | MmSubsectionBase
ULONG | MmNumberOfPagingFiles
ULONG | MmLowestPhysicalPage
ULONG | MmHighestPhysicalPage
PFN_COUNT | MmNumberOfPhysicalPages
ULONG | MmMaximumNonPagedPoolInBytes
PVOID | MmNonPagedSystemStart
PVOID | MmNonPagedPoolStart
PVOID | MmNonPagedPoolEnd
PVOID | MmPagedPoolStart
PVOID | MmPagedPoolEnd
ULONG | MmPagedPoolInfo []
ULONG | MmSizeOfPagedPoolInBytes
ULONG | MmTotalCommitLimit
ULONG | MmTotalCommittedPages
ULONG | MmSharedCommit
ULONG | MmDriverCommit
ULONG | MmProcessCommit
ULONG | MmPagedPoolCommit
ULONG | MmExtendedCommit
MMPFNLIST | MmZeroedPageListHead
MMPFNLIST | MmFreePageListHead
MMPFNLIST | MmStandbyPageListHead
MMPFNLIST | MmModifiedPageListHead
MMPFNLIST | MmModifiedNoWritePageListHead
ULONG | MmAvailablePages
LONG | MmResidentAvailablePages
LIST_ENTRY | MmLoadedUserImageList
PPOOL_TRACKER_TABLE | PoolTrackTable
POOL_DESCRIPTOR | NonPagedPoolDescriptor
PVOID | MiUnloadedDrivers
ULONG | MiLastUnloadedDriver
ULONG | MiTriageActionTaken
ULONG | MmSpecialPoolTag
LOGICAL | KernelVerifier
PVOID | MmVerifierData
PFN_NUMBER | MmAllocatedNonPagedPool
SIZE_T | MmPeakCommitment
SIZE_T | MmTotalCommitLimitMaximum
KDDEBUGGER_DATA64 | KdDebuggerDataBlock
UCHAR | KdPrintCircularBuffer [KDPRINTBUFFERSIZE] = {0}
PUCHAR | KdPrintWritePointer = KdPrintCircularBuffer
ULONG | KdPrintRolloverCount = 0
KSPIN_LOCK | KdpPrintSpinLock = 0
BREAKPOINT_ENTRY | KdpBreakpointTable [BREAKPOINT_TABLE_SIZE] = {0}
UCHAR | KdpMessageBuffer [KDP_MESSAGE_BUFFER_SIZE] = {0}
UCHAR | KdpPathBuffer [KDP_MESSAGE_BUFFER_SIZE] = {0}
DBGKD_INTERNAL_BREAKPOINT | KdpInternalBPs [DBGKD_MAX_INTERNAL_BREAKPOINTS] = {0}
LARGE_INTEGER | KdPerformanceCounterRate = {0,0}
LARGE_INTEGER | KdTimerStart = {0,0}
LARGE_INTEGER | KdTimerStop = {0,0}
LARGE_INTEGER | KdTimerDifference = {0,0}
ULONG_PTR | KdpCurrentSymbolStart = 0
ULONG_PTR | KdpCurrentSymbolEnd = 0
LONG | KdpNextCallLevelChange = 0
ULONG_PTR | KdSpecialCalls [DBGKD_MAX_SPECIAL_CALLS]
ULONG | KdNumberOfSpecialCalls = 0
ULONG_PTR | InitialSP = 0
ULONG | KdpNumInternalBreakpoints = 0
KTIMER | InternalBreakpointTimer = {0}
KDPC | InternalBreakpointCheckDpc = {0}
BOOLEAN | KdpPortLocked = FALSE
DBGKD_TRACE_DATA | TraceDataBuffer [TRACE_DATA_BUFFER_MAX_SIZE] = {0}
ULONG | TraceDataBufferPosition = 1
TRACE_DATA_SYM | TraceDataSyms [256] = {0}
UCHAR | NextTraceDataSym = 0
UCHAR | NumTraceDataSyms = 0
ULONG | IntBPsSkipping = 0
BOOLEAN | WatchStepOver = FALSE
PVOID | WSOThread = NULL
ULONG_PTR | WSOEsp = 0
ULONG | WatchStepOverHandle = 0
ULONG_PTR | WatchStepOverBreakAddr = 0
BOOLEAN | WatchStepOverSuspended = FALSE
ULONG | InstructionsTraced = 0
BOOLEAN | SymbolRecorded = FALSE
LONG | CallLevelChange = 0
LONG_PTR | oldpc = 0
BOOLEAN | InstrCountInternal = FALSE
BOOLEAN | BreakpointsSuspended = FALSE
ULONG | KdpRetryCount = 5
ULONG | KdpNumberRetries = 5
ULONG | KdpDefaultRetries = MAXIMUM_RETRIES
BOOLEAN | KdpControlCPending = FALSE
BOOLEAN | KdpControlCPressed = FALSE
KDP_BREAKPOINT_TYPE | KdpBreakpointInstruction = {0}
ULONG | KdpNextPacketIdToSend = 0
ULONG | KdpPacketIdExpected = 0
PVOID | KdpNtosImageBase = NULL
DEBUG_PARAMETERS | KdDebugParameters = {0, 0}
KSPIN_LOCK | KdpDataSpinLock = 0
LIST_ENTRY | KdpDebuggerDataListHead = {NULL,NULL}
PFN_NUMBER | KdpSearchPageHits [SEARCH_PAGE_HIT_DATABASE_SIZE]
ULONG | KdpSearchPageHitOffsets [SEARCH_PAGE_HIT_DATABASE_SIZE]
ULONG | KdpSearchPageHitIndex
LOGICAL | KdpSearchInProgress = FALSE
PFN_NUMBER | KdpSearchStartPageFrame
PFN_NUMBER | KdpSearchEndPageFrame
ULONG_PTR | KdpSearchAddressRangeStart
ULONG_PTR | KdpSearchAddressRangeEnd
ULONG | KdpSearchCheckPoint = KDP_SEARCH_SYMBOL_CHECK
KSPIN_LOCK | KdpTimeSlipEventLock = 0
PVOID | KdpTimeSlipEvent = NULL
KDPC | KdpTimeSlipDpc = {0}
WORK_QUEUE_ITEM | KdpTimeSlipWorkItem = {NULL}
KTIMER | KdpTimeSlipTimer = {0}
ULONG | KdpTimeSlipPending = 1
BOOLEAN | KdDebuggerNotPresent = FALSE
BOOLEAN | KdDebuggerEnabled = FALSE
BOOLEAN | KdPitchDebugger = TRUE
BOOLEAN | KdpDebuggerStructuresInitialized = FALSE
ULONG | KdpOweBreakpoint
ULONG | KdEnteredDebugger = FALSE

## Variable Documentation

BOOLEAN BreakpointsSuspended = FALSE

| Definition at line 285 of file 4/kddata.c.

LONG CallLevelChange = 0

| Definition at line 281 of file 4/kddata.c.

ULONG ExpNumberOfPagedPools

| Definition at line 38 of file 4/kddata.c. Referenced by ExAllocatePoolWithTag(), ExQueryPoolUsage(), and InitializePool().

PPOOL_DESCRIPTOR ExpPagedPoolDescriptor

| Definition at line 37 of file 4/kddata.c. Referenced by ExAllocatePoolWithTag(), and InitializePool().

LIST_ENTRY ExpSystemResourcesList

| Definition at line 36 of file 4/kddata.c.

ULONG_PTR InitialSP = 0

| Definition at line 254 of file 4/kddata.c.

BOOLEAN InstrCountInternal = FALSE

| Definition at line 283 of file 4/kddata.c.

ULONG InstructionsTraced = 0

| Definition at line 279 of file 4/kddata.c.

ULONG IntBPsSkipping = 0

| Definition at line 270 of file 4/kddata.c.

KDPC InternalBreakpointCheckDpc = {0}

| Definition at line 257 of file 4/kddata.c.

KTIMER InternalBreakpointTimer = {0}

| Definition at line 256 of file 4/kddata.c.

LIST_ENTRY IopErrorLogListHead

| Definition at line 44 of file 4/kddata.c. Referenced by IoInitSystem(), IopErrorLogGetEntry(), IopErrorLogRequeueEntry(), and IoWriteErrorLogEntry().

KDDEBUGGER_DATA64 KdDebuggerDataBlock

| Definition at line 108 of file 4/kddata.c.

BOOLEAN KdDebuggerEnabled = FALSE

| Definition at line 353 of file 4/kddata.c. Referenced by IopDriverCorrectnessApplyControl(), IopDriverCorrectnessThrowBugCheck(), KdDeleteAllBreakpoints(), KdDisableDebugger(), KdInitSystem(), KdPollBreakIn(), KdpPollBreakInWithPortLock(), KeBugCheckEx(), KeEnterKernelDebugger(), NtClose(), NtQuerySystemInformation(), NtRaiseHardError(), and NtSystemDebugControl().

BOOLEAN KdDebuggerNotPresent = FALSE

| Definition at line 352 of file 4/kddata.c. Referenced by KdpReceivePacketLeader(), KdpSendPacket(), KdpSendWaitContinue(), KdpTrap(), KeBugCheckEx(), MiEnsureAvailablePageOrWait(), and NtQuerySystemInformation().

DEBUG_PARAMETERS KdDebugParameters = {0, 0}

| Definition at line 314 of file 4/kddata.c.

ULONG KdEnteredDebugger = FALSE

| Definition at line 357 of file 4/kddata.c.

ULONG KdNumberOfSpecialCalls = 0

| Definition at line 253 of file 4/kddata.c.

KDP_BREAKPOINT_TYPE KdpBreakpointInstruction = {0}

| Definition at line 300 of file 4/kddata.c.

BREAKPOINT_ENTRY KdpBreakpointTable[BREAKPOINT_TABLE_SIZE] = {0}

| Definition at line 238 of file 4/kddata.c.

BOOLEAN KdpControlCPending = FALSE

| Definition at line 297 of file 4/kddata.c.

BOOLEAN KdpControlCPressed = FALSE

| Definition at line 298 of file 4/kddata.c.

ULONG_PTR KdpCurrentSymbolEnd = 0

| Definition at line 249 of file 4/kddata.c.

ULONG_PTR KdpCurrentSymbolStart = 0

| Definition at line 248 of file 4/kddata.c.

KSPIN_LOCK KdpDataSpinLock = 0

| Definition at line 316 of file 4/kddata.c.

LIST_ENTRY KdpDebuggerDataListHead = {NULL,NULL}

| Definition at line 317 of file 4/kddata.c.

BOOLEAN KdpDebuggerStructuresInitialized = FALSE

| Definition at line 355 of file 4/kddata.c.

ULONG KdpDefaultRetries = MAXIMUM_RETRIES

| Definition at line 296 of file 4/kddata.c.

LARGE_INTEGER KdPerformanceCounterRate = {0,0}

| Definition at line 243 of file 4/kddata.c.

DBGKD_INTERNAL_BREAKPOINT KdpInternalBPs[DBGKD_MAX_INTERNAL_BREAKPOINTS] = {0}

| Definition at line 241 of file 4/kddata.c.

BOOLEAN KdPitchDebugger = TRUE

| Definition at line 354 of file 4/kddata.c. Referenced by KdDeleteAllBreakpoints(), KdDisableDebugger(), KdInitSystem(), KdpStub(), KeBugCheckEx(), KeEnterKernelDebugger(), and MiEnablePagingTheExecutive().

UCHAR KdpMessageBuffer[KDP_MESSAGE_BUFFER_SIZE] = {0}

| Definition at line 239 of file 4/kddata.c.

LONG KdpNextCallLevelChange = 0

| Definition at line 250 of file 4/kddata.c.

ULONG KdpNextPacketIdToSend = 0

| Definition at line 301 of file 4/kddata.c.

PVOID KdpNtosImageBase = NULL

| Definition at line 303 of file 4/kddata.c.

ULONG KdpNumberRetries = 5

| Definition at line 295 of file 4/kddata.c.

ULONG KdpNumInternalBreakpoints = 0

| Definition at line 255 of file 4/kddata.c.

ULONG KdpOweBreakpoint

| Definition at line 356 of file 4/kddata.c.

ULONG KdpPacketIdExpected = 0

| Definition at line 302 of file 4/kddata.c.

UCHAR KdpPathBuffer[KDP_MESSAGE_BUFFER_SIZE] = {0}

| Definition at line 240 of file 4/kddata.c.

BOOLEAN KdpPortLocked = FALSE

| Definition at line 259 of file 4/kddata.c.

KSPIN_LOCK KdpPrintSpinLock = 0

| Definition at line 235 of file 4/kddata.c.

ULONG KdpRetryCount = 5

| Definition at line 294 of file 4/kddata.c.

UCHAR KdPrintCircularBuffer[KDPRINTBUFFERSIZE] = {0}

| Definition at line 232 of file 4/kddata.c.

ULONG KdPrintRolloverCount = 0

| Definition at line 234 of file 4/kddata.c.

PUCHAR KdPrintWritePointer = KdPrintCircularBuffer

| Definition at line 233 of file 4/kddata.c.

ULONG_PTR KdpSearchAddressRangeEnd

| Definition at line 333 of file 4/kddata.c. Referenced by KdpSearchPhysicalPageRange().

ULONG_PTR KdpSearchAddressRangeStart

| Definition at line 332 of file 4/kddata.c. Referenced by KdpSearchPhysicalPageRange().

ULONG KdpSearchCheckPoint = KDP_SEARCH_SYMBOL_CHECK

| Definition at line 335 of file 4/kddata.c.

PFN_NUMBER KdpSearchEndPageFrame

| Definition at line 330 of file 4/kddata.c. Referenced by KdpSearchPhysicalPageRange().

LOGICAL KdpSearchInProgress = FALSE

| Definition at line 327 of file 4/kddata.c. Referenced by KdpSearchPhysicalMemoryRequested(), and KdpSearchPhysicalPageRange().

ULONG KdpSearchPageHitIndex

| Definition at line 325 of file 4/kddata.c. Referenced by KdpSearchPhysicalPage().

ULONG KdpSearchPageHitOffsets[SEARCH_PAGE_HIT_DATABASE_SIZE]

| Definition at line 324 of file 4/kddata.c. Referenced by KdpSearchPhysicalPage().

PFN_NUMBER KdpSearchPageHits[SEARCH_PAGE_HIT_DATABASE_SIZE]

| Definition at line 323 of file 4/kddata.c. Referenced by KdpSearchPhysicalPage().

PFN_NUMBER KdpSearchStartPageFrame

| Definition at line 329 of file 4/kddata.c. Referenced by KdpSearchPhysicalPageRange().

KDPC KdpTimeSlipDpc = {0}

| Definition at line 346 of file 4/kddata.c.

PVOID KdpTimeSlipEvent = NULL

| Definition at line 345 of file 4/kddata.c.

KSPIN_LOCK KdpTimeSlipEventLock = 0

| Definition at line 344 of file 4/kddata.c.

ULONG KdpTimeSlipPending = 1

| Definition at line 349 of file 4/kddata.c.

KTIMER KdpTimeSlipTimer = {0}

| Definition at line 348 of file 4/kddata.c.

WORK_QUEUE_ITEM KdpTimeSlipWorkItem = {NULL}

| Definition at line 347 of file 4/kddata.c.

ULONG_PTR KdSpecialCalls[DBGKD_MAX_SPECIAL_CALLS]

| Definition at line 252 of file 4/kddata.c.

LARGE_INTEGER KdTimerDifference = {0,0}

| Definition at line 246 of file 4/kddata.c.

LARGE_INTEGER KdTimerStart = {0,0}

| Definition at line 244 of file 4/kddata.c.

LARGE_INTEGER KdTimerStop = {0,0}

| Definition at line 245 of file 4/kddata.c.

LIST_ENTRY KeBugCheckCallbackListHead

| Definition at line 41 of file 4/kddata.c.

LOGICAL KernelVerifier

| Definition at line 96 of file 4/kddata.c.

ULONG KeTimeIncrement

| Definition at line 40 of file 4/kddata.c.

ULONG KiBugcheckData[]

| Definition at line 42 of file 4/kddata.c.

ULONG KiBugCheckData[]

| Definition at line 32 of file 4/kddata.c.

ULONG MiLastUnloadedDriver

| Definition at line 93 of file 4/kddata.c. Referenced by MiRememberUnloadedDriver(), and MmLocateUnloadedDriver().

ULONG MiTriageActionTaken

| Definition at line 94 of file 4/kddata.c.

PVOID MiUnloadedDrivers

| Definition at line 92 of file 4/kddata.c. Referenced by MiRememberUnloadedDriver(), and MmLocateUnloadedDriver().

PFN_NUMBER MmAllocatedNonPagedPool

| Definition at line 98 of file 4/kddata.c. Referenced by MiAllocatePoolPages(), MiEnsureAvailablePageOrWait(), MiFindContiguousMemory(), MiFreePoolPages(), MiInitMachineDependent(), MmRaisePoolQuota(), and MmResourcesAvailable().

ULONG MmAvailablePages

| Definition at line 85 of file 4/kddata.c.

ULONG MmDriverCommit

| Definition at line 75 of file 4/kddata.c.

ULONG MmExtendedCommit

| Definition at line 78 of file 4/kddata.c.

MMPFNLIST MmFreePageListHead

| Definition at line 81 of file 4/kddata.c.

ULONG MmHighestPhysicalPage

| Definition at line 59 of file 4/kddata.c.

LIST_ENTRY MmLoadedUserImageList

| Definition at line 87 of file 4/kddata.c.

ULONG MmLowestPhysicalPage

| Definition at line 58 of file 4/kddata.c.

ULONG MmMaximumNonPagedPoolInBytes

| Definition at line 62 of file 4/kddata.c.

MMPFNLIST MmModifiedNoWritePageListHead

| Definition at line 84 of file 4/kddata.c.

MMPFNLIST MmModifiedPageListHead

| Definition at line 83 of file 4/kddata.c.

PVOID MmNonPagedPoolEnd

| Definition at line 65 of file 4/kddata.c.

PVOID MmNonPagedPoolStart

| Definition at line 64 of file 4/kddata.c.

PVOID MmNonPagedSystemStart

| Definition at line 63 of file 4/kddata.c.

ULONG MmNumberOfPagingFiles

| Definition at line 56 of file 4/kddata.c.

PFN_COUNT MmNumberOfPhysicalPages

| Definition at line 60 of file 4/kddata.c.

ULONG MmPagedPoolCommit

| Definition at line 77 of file 4/kddata.c.

PVOID MmPagedPoolEnd

| Definition at line 68 of file 4/kddata.c.

ULONG MmPagedPoolInfo[]

| Definition at line 69 of file 4/kddata.c.

PVOID MmPagedPoolStart

| Definition at line 67 of file 4/kddata.c.

SIZE_T MmPeakCommitment

| Definition at line 99 of file 4/kddata.c.

PVOID MmPfnDatabase

| Definition at line 52 of file 4/kddata.c.

ULONG MmProcessCommit

| Definition at line 76 of file 4/kddata.c.

LONG MmResidentAvailablePages

| Definition at line 86 of file 4/kddata.c.

ULONG MmSharedCommit

| Definition at line 74 of file 4/kddata.c.

ULONG MmSizeOfPagedPoolInBytes

| Definition at line 70 of file 4/kddata.c.

ULONG MmSpecialPoolTag

| Definition at line 95 of file 4/kddata.c.

MMPFNLIST MmStandbyPageListHead

| Definition at line 82 of file 4/kddata.c.

ULONG MmSubsectionBase

| Definition at line 55 of file 4/kddata.c.

PVOID MmSystemCacheEnd

| Definition at line 50 of file 4/kddata.c.

PVOID MmSystemCacheStart

| Definition at line 49 of file 4/kddata.c.

ULONG MmSystemPtesEnd[]

| Definition at line 54 of file 4/kddata.c.

ULONG MmSystemPtesStart[]

| Definition at line 53 of file 4/kddata.c.

ULONG MmTotalCommitLimit

| Definition at line 72 of file 4/kddata.c.

SIZE_T MmTotalCommitLimitMaximum

| Definition at line 100 of file 4/kddata.c. Referenced by MiCauseOverCommitPopup(), MiChargeCommitmentCantExpand(), MiExtendPagingFileMaximum(), MiInsertPageFileInList(), MmAddPhysicalMemory(), MmInitSystem(), MmRemovePhysicalMemory(), MmResourcesAvailable(), and NtCreatePagingFile().

ULONG MmTotalCommittedPages

| Definition at line 73 of file 4/kddata.c.

PVOID MmVerifierData

| Definition at line 97 of file 4/kddata.c. Referenced by MiApplyDriverVerifier(), MiInitializeDriverVerifierList(), MiVerifyingDriverUnloading(), MmGetVerifierInformation(), MmSetVerifierInformation(), VeAllocatePoolWithTagPriority(), VerifierAllocatePool(), VerifierAllocatePoolWithQuota(), VerifierFreeTrackedPool(), VerifierKeAcquireSpinLock(), VerifierKeRaiseIrql(), VerifierSynchronizeExecution(), ViInjectResourceFailure(), ViPostPoolAllocation(), ViPrintString(), and ViTrimAllSystemPagableMemory().

MMPFNLIST MmZeroedPageListHead

| Definition at line 80 of file 4/kddata.c.

UCHAR NextTraceDataSym = 0

| Definition at line 267 of file 4/kddata.c.

POOL_DESCRIPTOR NonPagedPoolDescriptor

| Definition at line 90 of file 4/kddata.c.

UCHAR NumTraceDataSyms = 0

| Definition at line 268 of file 4/kddata.c.

POBJECT_DIRECTORY ObpRootDirectoryObject

| Definition at line 46 of file 4/kddata.c.

POBJECT_TYPE ObpTypeObjectType

| Definition at line 47 of file 4/kddata.c.

LONG_PTR oldpc = 0

| Definition at line 282 of file 4/kddata.c.

PPOOL_TRACKER_TABLE PoolTrackTable

| Definition at line 89 of file 4/kddata.c. Referenced by ExAllocatePoolWithTag(), ExFreePoolWithTag(), ExInsertPoolTag(), ExpGetPoolTagInfo(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExQueryPoolBlockSize(), ExRemovePoolTag(), and InitializePool().

PHANDLE_TABLE PspCidTable

| Definition at line 34 of file 4/kddata.c.

BOOLEAN SymbolRecorded = FALSE

| Definition at line 280 of file 4/kddata.c.

DBGKD_TRACE_DATA TraceDataBuffer[TRACE_DATA_BUFFER_MAX_SIZE] = {0}

| Definition at line 262 of file 4/kddata.c.

ULONG TraceDataBufferPosition = 1

| Definition at line 263 of file 4/kddata.c.

TRACE_DATA_SYM TraceDataSyms[256] = {0}

| Definition at line 266 of file 4/kddata.c.

BOOLEAN WatchStepOver = FALSE

| Definition at line 273 of file 4/kddata.c.

ULONG_PTR WatchStepOverBreakAddr = 0

| Definition at line 277 of file 4/kddata.c.

ULONG WatchStepOverHandle = 0

| Definition at line 276 of file 4/kddata.c.

BOOLEAN WatchStepOverSuspended = FALSE

| Definition at line 278 of file 4/kddata.c.

ULONG_PTR WSOEsp = 0

| Definition at line 275 of file 4/kddata.c.

PVOID WSOThread = NULL

| Definition at line 274 of file 4/kddata.c.