#include "ntrtlp.h"
#include "heappage.h"
#include "heappagi.h"
#include "heappriv.h"
Go to the source code of this file.
Classes | |
struct | _DPH_TARGET_DLL |
Defines | |
#define | DPH_HEAP_SIGNATURE 0xFFEEDDCC |
#define | FILL_BYTE 0xEE |
#define | HEAD_FILL_SIZE 0x10 |
#define | RESERVE_SIZE 0x100000 |
#define | VM_UNIT_SIZE 0x10000 |
#define | POOL_SIZE 0x4000 |
#define | INLINE __inline |
#define | MIN_FREE_LIST_LENGTH 8 |
#define | ROUNDUP2(x, n) ((( x ) + (( n ) - 1 )) & ~(( n ) - 1 )) |
#define | DEBUG_CODE(a) |
#define | RETAIL_ASSERT(a) |
#define | DEBUG_ASSERT(a) DEBUG_CODE( RETAIL_ASSERT( a )) |
#define | HEAP_HANDLE_FROM_ROOT(HeapRoot) ((PVOID)(((PCHAR)(HeapRoot)) - PAGE_SIZE )) |
#define | IF_GENERATE_EXCEPTION(Flags, Status) |
#define | OUT_OF_VM_BREAK(Flags, szText) |
#define | ENQUEUE_HEAD(Node, Head, Tail) |
#define | ENQUEUE_TAIL(Node, Head, Tail) |
#define | DEQUEUE_NODE(Node, Prev, Head, Tail) |
#define | BIAS_POINTER(p) ((PVOID)((ULONG_PTR)(p) | (ULONG_PTR)0x01)) |
#define | UNBIAS_POINTER(p) ((PVOID)((ULONG_PTR)(p) & ~((ULONG_PTR)0x01))) |
#define | IS_BIASED_POINTER(p) ((PVOID)((ULONG_PTR)(p) & (ULONG_PTR)0x01)) |
#define | PROTECT_HEAP_STRUCTURES(HeapRoot) |
#define | UNPROTECT_HEAP_STRUCTURES(HeapRoot) |
#define | DPH_DEBUG_INTERNAL_VALIDATION 0x0001 |
#define | DPH_DEBUG_RESERVED_2 0x0002 |
#define | DPH_DEBUG_RESERVED_4 0x0004 |
#define | DPH_DEBUG_RESERVED_8 0x0008 |
#define | DPH_DEBUG_DECOMMIT_RANGES 0x0010 |
#define | DPH_DEBUG_BREAK_FOR_SIZE_ZERO 0x0020 |
#define | DPH_DEBUG_BREAK_FOR_NULL_FREE 0x0040 |
#define | DPH_DEBUG_NEVER_FREE 0x0080 |
#define | DPH_DEBUG_SLOW_CHECKS 0x0100 |
#define | BUMP_GLOBAL_COUNTER(n) InterlockedIncrement(&(RtlpDphGlobalCounter[n])) |
#define | BUMP_SIZE_COUNTER(Size) |
#define | MAX_GLOBAL_COUNTER_INDEX 15 |
#define | MAX_SIZE_COUNTER_INDEX 64 |
Typedefs | |
typedef _DPH_TARGET_DLL | DPH_TARGET_DLL |
typedef _DPH_TARGET_DLL * | PDPH_TARGET_DLL |
Functions | |
int __cdecl | sprintf (char *, const char *,...) |
PVOID | RtlpDphNormalHeapAllocate (PDPH_HEAP_ROOT Heap, ULONG Flags, SIZE_T Size) |
BOOLEAN | RtlpDphNormalHeapFree (PDPH_HEAP_ROOT Heap, ULONG Flags, PVOID Block) |
PVOID | RtlpDphNormalHeapReAllocate (PDPH_HEAP_ROOT Heap, ULONG Flags, PVOID OldBlock, SIZE_T Size) |
SIZE_T | RtlpDphNormalHeapSize (PDPH_HEAP_ROOT Heap, ULONG Flags, PVOID Block) |
BOOLEAN | RtlpDphNormalHeapSetUserFlags (IN PDPH_HEAP_ROOT Heap, IN ULONG Flags, IN PVOID Address, IN ULONG UserFlagsReset, IN ULONG UserFlagsSet) |
BOOLEAN | RtlpDphNormalHeapSetUserValue (IN PDPH_HEAP_ROOT Heap, IN ULONG Flags, IN PVOID Address, IN PVOID UserValue) |
BOOLEAN | RtlpDphNormalHeapGetUserInfo (IN PDPH_HEAP_ROOT Heap, IN ULONG Flags, IN PVOID Address, OUT PVOID *UserValue, OUT PULONG UserFlags) |
BOOLEAN | RtlpDphNormalHeapValidate (IN PDPH_HEAP_ROOT Heap, IN ULONG Flags, IN PVOID Address) |
VOID | RtlpDphReportCorruptedBlock (PVOID Block, ULONG Reason) |
BOOLEAN | RtlpDphIsNormalHeapBlock (PDPH_HEAP_ROOT Heap, PVOID Block, PULONG Reason, BOOLEAN CheckPattern) |
BOOLEAN | RtlpDphIsNormalFreeHeapBlock (PVOID Block, PULONG Reason, BOOLEAN CheckPattern) |
BOOLEAN | RtlpDphIsPageHeapBlock (PDPH_HEAP_ROOT Heap, PVOID Block, PULONG Reason, BOOLEAN CheckPattern) |
BOOLEAN | RtlpDphWriteNormalHeapBlockInformation (PDPH_HEAP_ROOT Heap, PVOID Block, SIZE_T RequestedSize, SIZE_T ActualSize) |
BOOLEAN | RtlpDphWritePageHeapBlockInformation (PDPH_HEAP_ROOT Heap, PVOID Block, SIZE_T RequestedSize, SIZE_T ActualSize) |
VOID | RtlpDphInitializeDelayedFreeQueue () |
VOID | RtlpDphAddToDelayedFreeQueue (PDPH_BLOCK_INFORMATION Info) |
BOOLEAN | RtlpDphNeedToTrimDelayedFreeQueue (PSIZE_T TrimSize) |
VOID | RtlpDphTrimDelayedFreeQueue (SIZE_T TrimSize, ULONG Flags) |
VOID | RtlpDphFreeDelayedBlocksFromHeap (PVOID PageHeap, PVOID NormalHeap) |
RtlpDphShouldAllocateInPageHeap (PDPH_HEAP_ROOT Heap, SIZE_T Size) | |
PRTL_TRACE_BLOCK | RtlpDphLogStackTrace (ULONG FramesToSkip) |
VOID | RtlpDebugPageHeapBreak (IN PCH Text) |
BOOLEAN | RtlpDebugPageHeapAssert (IN PCH Text) |
VOID | RtlpDebugPageHeapEnterCritSect (IN PDPH_HEAP_ROOT HeapRoot, IN ULONG Flags) |
INLINE VOID | RtlpDebugPageHeapLeaveCritSect (IN PDPH_HEAP_ROOT HeapRoot) |
VOID | RtlpDebugPageHeapException (IN ULONG ExceptionCode) |
PVOID | RtlpDebugPageHeapPointerFromHandle (IN PVOID HeapHandle) |
PCCH | RtlpDebugPageHeapProtectionText (IN ULONG Access, IN OUT PCHAR Buffer) |
BOOLEAN | RtlpDebugPageHeapRobustProtectVM (IN PVOID VirtualBase, IN SIZE_T VirtualSize, IN ULONG NewAccess, IN BOOLEAN Recursion) |
INLINE BOOLEAN | RtlpDebugPageHeapProtectVM (IN PVOID VirtualBase, IN SIZE_T VirtualSize, IN ULONG NewAccess) |
INLINE PVOID | RtlpDebugPageHeapAllocateVM (IN SIZE_T nSize) |
INLINE BOOLEAN | RtlpDebugPageHeapReleaseVM (IN PVOID pVirtual) |
INLINE BOOLEAN | RtlpDebugPageHeapCommitVM (IN PVOID pVirtual, IN SIZE_T nSize) |
INLINE BOOLEAN | RtlpDebugPageHeapDecommitVM (IN PVOID pVirtual, IN SIZE_T nSize) |
VOID | RtlpDphTargetDllsLogicInitialize () |
VOID | RtlpDphTargetDllsLoadCallBack (PUNICODE_STRING Name, PVOID Address, ULONG Size) |
const WCHAR * | RtlpDphIsDllTargeted (const WCHAR *Name) |
VOID | RtlpDphInternalValidatePageHeap (PDPH_HEAP_ROOT Heap, PUCHAR ExemptAddress, SIZE_T ExemptSize) |
PDPH_HEAP_BLOCK | RtlpDebugPageHeapTakeNodeFromUnusedList (IN PDPH_HEAP_ROOT pHeap) |
VOID | RtlpDebugPageHeapReturnNodeToUnusedList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode) |
PDPH_HEAP_BLOCK | RtlpDebugPageHeapFindBusyMem (IN PDPH_HEAP_ROOT pHeap, IN PVOID pUserMem, OUT PDPH_HEAP_BLOCK *pPrevAlloc) |
VOID | RtlpDebugPageHeapRemoveFromAvailableList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode, IN PDPH_HEAP_BLOCK pPrev) |
VOID | RtlpDebugPageHeapPlaceOnFreeList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pAlloc) |
VOID | RtlpDebugPageHeapRemoveFromFreeList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode, IN PDPH_HEAP_BLOCK pPrev) |
VOID | RtlpDebugPageHeapPlaceOnVirtualList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode) |
VOID | RtlpDebugPageHeapPlaceOnBusyList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode) |
VOID | RtlpDebugPageHeapRemoveFromBusyList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode, IN PDPH_HEAP_BLOCK pPrev) |
PDPH_HEAP_BLOCK | RtlpDebugPageHeapSearchAvailableMemListForBestFit (IN PDPH_HEAP_ROOT pHeap, IN SIZE_T nSize, OUT PDPH_HEAP_BLOCK *pPrevAvailNode) |
VOID | RtlpDebugPageHeapCoalesceNodeIntoAvailable (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode) |
VOID | RtlpDebugPageHeapCoalesceFreeIntoAvailable (IN PDPH_HEAP_ROOT pHeap, IN ULONG nLeaveOnFreeList) |
BOOLEAN | RtlpDebugPageHeapGrowVirtual (IN PDPH_HEAP_ROOT pHeap, IN SIZE_T nSize) |
PDPH_HEAP_BLOCK | RtlpDebugPageHeapFindAvailableMem (IN PDPH_HEAP_ROOT pHeap, IN SIZE_T nSize, OUT PDPH_HEAP_BLOCK *pPrevAvailNode, IN BOOLEAN bGrowVirtual) |
VOID | RtlpDebugPageHeapPlaceOnPoolList (IN PDPH_HEAP_ROOT pHeap, IN PDPH_HEAP_BLOCK pNode) |
VOID | RtlpDebugPageHeapAddNewPool (IN PDPH_HEAP_ROOT pHeap, IN PVOID pVirtual, IN SIZE_T nSize, IN BOOLEAN bAddToPoolList) |
PDPH_HEAP_BLOCK | RtlpDebugPageHeapAllocateNode (IN PDPH_HEAP_ROOT pHeap) |
VOID | RtlpDebugPageHeapProtectStructures (IN PDPH_HEAP_ROOT pHeap) |
VOID | RtlpDebugPageHeapUnProtectStructures (IN PDPH_HEAP_ROOT pHeap) |
PVOID | RtlpDebugPageHeapCreate (IN ULONG Flags, IN PVOID HeapBase OPTIONAL, IN SIZE_T ReserveSize OPTIONAL, IN SIZE_T CommitSize OPTIONAL, IN PVOID Lock OPTIONAL, IN PRTL_HEAP_PARAMETERS Parameters OPTIONAL) |
PVOID | RtlpDebugPageHeapAllocate (IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size) |
BOOLEAN | RtlpDebugPageHeapFree (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address) |
PVOID | RtlpDebugPageHeapReAllocate (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address, IN SIZE_T Size) |
PVOID | RtlpDebugPageHeapDestroy (IN PVOID HeapHandle) |
SIZE_T | RtlpDebugPageHeapSize (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address) |
ULONG | RtlpDebugPageHeapGetProcessHeaps (ULONG NumberOfHeaps, PVOID *ProcessHeaps) |
ULONG | RtlpDebugPageHeapCompact (IN PVOID HeapHandle, IN ULONG Flags) |
BOOLEAN | RtlpDebugPageHeapValidate (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address) |
NTSTATUS | RtlpDebugPageHeapWalk (IN PVOID HeapHandle, IN OUT PRTL_HEAP_WALK_ENTRY Entry) |
BOOLEAN | RtlpDebugPageHeapLock (IN PVOID HeapHandle) |
BOOLEAN | RtlpDebugPageHeapUnlock (IN PVOID HeapHandle) |
BOOLEAN | RtlpDebugPageHeapSetUserValue (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address, IN PVOID UserValue) |
BOOLEAN | RtlpDebugPageHeapGetUserInfo (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address, OUT PVOID *UserValue, OUT PULONG UserFlags) |
BOOLEAN | RtlpDebugPageHeapSetUserFlags (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Address, IN ULONG UserFlagsReset, IN ULONG UserFlagsSet) |
BOOLEAN | RtlpDebugPageHeapSerialize (IN PVOID HeapHandle) |
NTSTATUS | RtlpDebugPageHeapExtend (IN PVOID HeapHandle, IN ULONG Flags, IN PVOID Base, IN SIZE_T Size) |
NTSTATUS | RtlpDebugPageHeapZero (IN PVOID HeapHandle, IN ULONG Flags) |
NTSTATUS | RtlpDebugPageHeapReset (IN PVOID HeapHandle, IN ULONG Flags) |
NTSTATUS | RtlpDebugPageHeapUsage (IN PVOID HeapHandle, IN ULONG Flags, IN OUT PRTL_HEAP_USAGE Usage) |
BOOLEAN | RtlpDebugPageHeapIsLocked (IN PVOID HeapHandle) |
PDPH_HEAP_BLOCK | RtlpDphSearchBlockInList (PDPH_HEAP_BLOCK List, PUCHAR Address) |
Variables | |
BOOLEAN | RtlpDebugPageHeap |
PCHAR | RtlpDphVersion = "03/14/2000" |
BOOLEAN | RtlpDphHeapListHasBeenInitialized |
RTL_CRITICAL_SECTION | RtlpDphHeapListCriticalSection |
PDPH_HEAP_ROOT | RtlpDphHeapListHead |
PDPH_HEAP_ROOT | RtlpDphHeapListTail |
ULONG | RtlpDphHeapListCount |
ULONG | RtlpDphGlobalFlags = PAGE_HEAP_COLLECT_STACK_TRACES |
ULONG | RtlpDphSizeRangeStart |
ULONG | RtlpDphSizeRangeEnd |
ULONG | RtlpDphDllRangeStart |
ULONG | RtlpDphDllRangeEnd |
ULONG | RtlpDphRandomProbability |
WCHAR | RtlpDphTargetDlls [512] |
UNICODE_STRING | RtlpDphTargetDllsUnicode |
ULONG | RtlpDphDebugLevel |
ULONG | RtlpDphGlobalCounter [MAX_GLOBAL_COUNTER_INDEX+1] |
ULONG | RtlpDphSizeCounter [MAX_SIZE_COUNTER_INDEX+1] |
SIZE_T | RtlpDphDelayedFreeCacheSize = 256 * PAGE_SIZE |
SIZE_T | RtlpDphTraceDatabaseMaximumSize = 256 * PAGE_SIZE |
PRTL_TRACE_DATABASE | RtlpDphTraceDatabase |
RTL_CRITICAL_SECTION | RtlpDphDelayedFreeQueueLock |
SIZE_T | RtlpDphMemoryUsedByDelayedFreeBlocks |
SIZE_T | RtlpDphNumberOfDelayedFreeBlocks |
LIST_ENTRY | RtlpDphDelayedFreeQueue |
RTL_CRITICAL_SECTION | RtlpDphTargetDllsLock |
LIST_ENTRY | RtlpDphTargetDllsList |
BOOLEAN | RtlpDphTargetDllsInitialized |
PVOID | RtlpDphLastValidationStack |
PVOID | RtlpDphCurrentValidationStack |
|
Definition at line 162 of file heappage.c. |
|
Definition at line 273 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), RtlpDphNormalHeapAllocate(), RtlpDphNormalHeapFree(), and RtlpDphNormalHeapReAllocate(). |
|
Value:
Definition at line 275 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapReAllocate(), RtlpDphNormalHeapAllocate(), and RtlpDphNormalHeapReAllocate(). |
|
|
Definition at line 108 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapDestroy(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), and RtlpDebugPageHeapValidate(). |
|
Value:
Definition at line 148 of file heappage.c. Referenced by RtlpDebugPageHeapRemoveFromAvailableList(), RtlpDebugPageHeapRemoveFromBusyList(), RtlpDebugPageHeapRemoveFromFreeList(), and RtlpDebugPageHeapTakeNodeFromUnusedList(). |
|
Definition at line 259 of file heappage.c. Referenced by RtlpDebugPageHeapFree(). |
|
Definition at line 258 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapReAllocate(). |
|
Definition at line 257 of file heappage.c. Referenced by RtlpDebugPageHeapCommitVM(), and RtlpDebugPageHeapDecommitVM(). |
|
Definition at line 253 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), and RtlpDebugPageHeapReAllocate(). |
|
Definition at line 260 of file heappage.c. Referenced by RtlpDphNormalHeapFree(). |
|
Definition at line 254 of file heappage.c. |
|
Definition at line 255 of file heappage.c. |
|
Definition at line 256 of file heappage.c. |
|
Definition at line 261 of file heappage.c. |
|
Definition at line 90 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapPointerFromHandle(). |
|
Value:
Definition at line 133 of file heappage.c. Referenced by RtlpDebugPageHeapPlaceOnBusyList(), RtlpDebugPageHeapPlaceOnVirtualList(), and RtlpDebugPageHeapReturnNodeToUnusedList(). |
|
Value:
Definition at line 140 of file heappage.c. Referenced by RtlpDebugPageHeapAddNewPool(), RtlpDebugPageHeapPlaceOnFreeList(), and RtlpDebugPageHeapPlaceOnPoolList(). |
|
Definition at line 91 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(). |
|
Definition at line 92 of file heappage.c. |
|
Definition at line 116 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGetProcessHeaps(). |
|
Value:
Definition at line 119 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), and RtlpDebugPageHeapSize(). |
|
Definition at line 96 of file heappage.c. |
|
Definition at line 164 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapReAllocate(). |
|
Definition at line 282 of file heappage.c. |
|
Definition at line 283 of file heappage.c. |
|
Definition at line 97 of file heappage.c. Referenced by RtlpDebugPageHeapFindAvailableMem(). |
|
Value: Definition at line 124 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapReAllocate(). |
|
Definition at line 95 of file heappage.c. Referenced by RtlpDebugPageHeapAllocateNode(), and RtlpDebugPageHeapCreate(). |
|
Value:
Definition at line 170 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapGetUserInfo(), RtlpDebugPageHeapReAllocate(), RtlpDebugPageHeapSerialize(), RtlpDebugPageHeapSetUserFlags(), RtlpDebugPageHeapSetUserValue(), RtlpDebugPageHeapSize(), RtlpDebugPageHeapUsage(), and RtlpDebugPageHeapValidate(). |
|
Definition at line 93 of file heappage.c. Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGrowVirtual(). |
|
Value: Definition at line 111 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapReAllocate(). |
|
Definition at line 103 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapGrowVirtual(), RtlpDebugPageHeapRobustProtectVM(), RtlpDphIsPageHeapBlock(), and RtlpDphWritePageHeapBlockInformation(). |
|
Definition at line 163 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapReAllocate(). |
|
Value:
Definition at line 175 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapDestroy(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapGetUserInfo(), RtlpDebugPageHeapReAllocate(), RtlpDebugPageHeapSerialize(), RtlpDebugPageHeapSetUserFlags(), RtlpDebugPageHeapSetUserValue(), RtlpDebugPageHeapSize(), RtlpDebugPageHeapUsage(), and RtlpDebugPageHeapValidate(). |
|
Definition at line 94 of file heappage.c. Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGrowVirtual(). |
|
|
|
Referenced by RtlpDphTargetDllsLoadCallBack(). |
|
Definition at line 1518 of file heappage.c. References DEBUG_ASSERT, ENQUEUE_TAIL, n, NULL, RtlpDebugPageHeapPlaceOnPoolList(), and RtlpDebugPageHeapTakeNodeFromUnusedList(). Referenced by RtlpDebugPageHeapAllocateNode(), and RtlpDebugPageHeapCreate().
|
|
Definition at line 2336 of file heappage.c. References BUMP_GLOBAL_COUNTER, BUMP_SIZE_COUNTER, DbgPrint, DEBUG_ASSERT, DEBUG_CODE, DPH_DEBUG_BREAK_FOR_SIZE_ZERO, DPH_DEBUG_INTERNAL_VALIDATION, EXIT, FALSE, HEAP_NO_ALIGNMENT, HeapHandle, IF_GENERATE_EXCEPTION, IS_BIASED_POINTER, NULL, OUT_OF_VM_BREAK, PAGE_SIZE, PROTECT_HEAP_STRUCTURES, ROUNDUP2, RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapDecommitVM(), RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindAvailableMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPlaceOnBusyList(), RtlpDebugPageHeapPointerFromHandle(), RtlpDebugPageHeapProtectVM(), RtlpDebugPageHeapRemoveFromAvailableList(), RtlpDphDebugLevel, RtlpDphInternalValidatePageHeap(), RtlpDphLogStackTrace(), RtlpDphNormalHeapAllocate(), RtlpDphShouldAllocateInPageHeap(), RtlpDphTraceDatabase, RtlpDphWritePageHeapBlockInformation(), Size, TRUE, UNBIAS_POINTER, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugAllocateHeap(), RtlpDebugPageHeapReAllocate(), RtlpDphDllcalloc(), RtlpDphDllGlobalAlloc(), RtlpDphDllHeapAlloc(), RtlpDphDllLocalAlloc(), RtlpDphDllmalloc(), RtlpDphDllNew(), RtlpDphDllNewArray(), and RtlpDphDllrealloc().
|
|
Definition at line 1571 of file heappage.c. References DEBUG_ASSERT, DEBUG_CODE, EXIT, FALSE, NULL, PAGE_SIZE, POOL_SIZE, RESERVE_SIZE, RtlpDebugPageHeapAddNewPool(), RtlpDebugPageHeapAllocateVM(), RtlpDebugPageHeapCoalesceNodeIntoAvailable(), RtlpDebugPageHeapFindAvailableMem(), RtlpDebugPageHeapPlaceOnVirtualList(), RtlpDebugPageHeapProtectVM(), RtlpDebugPageHeapReleaseVM(), RtlpDebugPageHeapRemoveFromAvailableList(), RtlpDebugPageHeapReturnNodeToUnusedList(), RtlpDebugPageHeapTakeNodeFromUnusedList(), TRUE, and VM_UNIT_SIZE. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGrowVirtual().
|
|
Definition at line 842 of file heappage.c. References NT_SUCCESS, NTSTATUS(), NULL, and Status. Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGrowVirtual().
|
|
Definition at line 618 of file heappage.c. References FALSE, and RtlpDebugPageHeapBreak().
|
|
Definition at line 609 of file heappage.c. References DbgPrint.
|
|
Definition at line 1322 of file heappage.c. References DEBUG_ASSERT, NULL, RtlpDebugPageHeapCoalesceNodeIntoAvailable(), and RtlpDebugPageHeapRemoveFromFreeList(). Referenced by RtlpDebugPageHeapFindAvailableMem().
|
|
Definition at line 1211 of file heappage.c. References NULL, and RtlpDebugPageHeapReturnNodeToUnusedList(). Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCoalesceFreeIntoAvailable(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGrowVirtual().
|
|
Definition at line 877 of file heappage.c. References DbgPrint, DPH_DEBUG_DECOMMIT_RANGES, FALSE, NT_SUCCESS, NTSTATUS(), PAGE_SIZE, RtlpDphDebugLevel, Status, and TRUE. Referenced by RtlpDebugPageHeapFindAvailableMem().
|
|
Definition at line 3512 of file heappage.c. References HeapHandle, NULL, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapLeaveCritSect(), and RtlpDebugPageHeapPointerFromHandle(). Referenced by RtlDebugCompactHeap().
|
|
Definition at line 1997 of file heappage.c. References DbgPrint, DEBUG_ASSERT, DEBUG_CODE, DPH_DEBUG_INTERNAL_VALIDATION, DPH_HEAP_SIGNATURE, FALSE, FILL_BYTE, HEAP_FLAG_PAGE_ALLOCS, HEAP_HANDLE_FROM_ROOT, HEAP_NO_ALIGNMENT, HeapHandle, IF_GENERATE_EXCEPTION, Lock, NtQueryPerformanceCounter(), NTSTATUS(), NULL, OUT_OF_VM_BREAK, PAGE_SIZE, POOL_SIZE, PROTECT_HEAP_STRUCTURES, RESERVE_SIZE, RETAIL_ASSERT, RtlCreateHeap(), RtlInitializeCriticalSection(), RtlInitUnicodeString(), RtlpDebugPageHeapAddNewPool(), RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapAllocateVM(), RtlpDebugPageHeapCoalesceNodeIntoAvailable(), RtlpDebugPageHeapPlaceOnPoolList(), RtlpDebugPageHeapPlaceOnVirtualList(), RtlpDebugPageHeapProtectVM(), RtlpDebugPageHeapReleaseVM(), RtlpDphDebugLevel, RtlpDphGlobalFlags, RtlpDphHeapListCount, RtlpDphHeapListCriticalSection, RtlpDphHeapListHasBeenInitialized, RtlpDphHeapListHead, RtlpDphHeapListTail, RtlpDphInitializeDelayedFreeQueue(), RtlpDphInternalValidatePageHeap(), RtlpDphLogStackTrace(), RtlpDphTargetDlls, RtlpDphTargetDllsLogicInitialize(), RtlpDphTargetDllsUnicode, RtlpDphTraceDatabase, RtlpDphTraceDatabaseMaximumSize, Size, Status, TRUE, UNPROTECT_HEAP_STRUCTURES, and VM_UNIT_SIZE. Referenced by RtlCreateHeap().
|
|
Definition at line 962 of file heappage.c. References DbgPrint, DPH_DEBUG_DECOMMIT_RANGES, FALSE, NT_SUCCESS, NTSTATUS(), PAGE_SIZE, RtlpDphDebugLevel, Status, and TRUE. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapFree(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 3259 of file heappage.c. References DbgPrint, DEBUG_CODE, HeapHandle, NULL, RtlDeleteCriticalSection(), RtlDestroyHeap(), RtlpDebugPageHeapBreak(), RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapPointerFromHandle(), RtlpDebugPageHeapReleaseVM(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphHeapListCount, RtlpDphHeapListCriticalSection, RtlpDphHeapListHead, RtlpDphHeapListTail, RtlpDphIsPageHeapBlock(), RtlpDphReportCorruptedBlock(), TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDestroyHeap().
|
|
Definition at line 627 of file heappage.c. References RtlpDebugPageHeapBreak(). Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCompact(), RtlpDebugPageHeapDestroy(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapGetUserInfo(), RtlpDebugPageHeapLock(), RtlpDebugPageHeapReAllocate(), RtlpDebugPageHeapSerialize(), RtlpDebugPageHeapSetUserFlags(), RtlpDebugPageHeapSetUserValue(), RtlpDebugPageHeapSize(), RtlpDebugPageHeapUsage(), and RtlpDebugPageHeapValidate().
|
|
Definition at line 674 of file heappage.c. References NULL, RtlpDebugPageHeapException(), and RtlRaiseException(). Referenced by RtlpDebugPageHeapException().
|
|
Definition at line 3817 of file heappage.c. Referenced by RtlExtendHeap().
|
|
Definition at line 1358 of file heappage.c. References DEBUG_ASSERT, MIN_FREE_LIST_LENGTH, NULL, PAGE_SIZE, RtlpDebugPageHeapCoalesceFreeIntoAvailable(), RtlpDebugPageHeapCommitVM(), RtlpDebugPageHeapGrowVirtual(), RtlpDebugPageHeapPlaceOnFreeList(), and RtlpDebugPageHeapSearchAvailableMemListForBestFit(). Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapAllocateNode().
|
|
Definition at line 1053 of file heappage.c. References NULL. Referenced by RtlpDebugPageHeapFree(), RtlpDebugPageHeapGetUserInfo(), RtlpDebugPageHeapReAllocate(), RtlpDebugPageHeapSetUserFlags(), RtlpDebugPageHeapSetUserValue(), RtlpDebugPageHeapSize(), and RtlpDebugPageHeapValidate().
|
|
Definition at line 2693 of file heappage.c. References BUMP_GLOBAL_COUNTER, DbgPrint, DEBUG_CODE, DPH_DEBUG_BREAK_FOR_NULL_FREE, DPH_DEBUG_INTERNAL_VALIDATION, EXIT, FALSE, HeapHandle, IF_GENERATE_EXCEPTION, NULL, PAGE_SIZE, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapDecommitVM(), RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPlaceOnFreeList(), RtlpDebugPageHeapPointerFromHandle(), RtlpDebugPageHeapProtectVM(), RtlpDebugPageHeapRemoveFromBusyList(), RtlpDphDebugLevel, RtlpDphInternalValidatePageHeap(), RtlpDphIsPageHeapBlock(), RtlpDphLogStackTrace(), RtlpDphNormalHeapFree(), RtlpDphReportCorruptedBlock(), RtlpDphTraceDatabase, TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugFreeHeap(), RtlpDphDllDelete(), RtlpDphDllDeleteArray(), RtlpDphDllfree(), RtlpDphDllGlobalFree(), RtlpDphDllHeapFree(), and RtlpDphDllLocalFree().
|
|
Definition at line 3458 of file heappage.c. References Count, HEAP_HANDLE_FROM_ROOT, NULL, RtlInitializeCriticalSection(), RtlpDebugPageHeapBreak(), RtlpDphHeapListCount, RtlpDphHeapListCriticalSection, RtlpDphHeapListHasBeenInitialized, RtlpDphHeapListHead, and TRUE. Referenced by RtlGetProcessHeaps().
|
|
Definition at line 3683 of file heappage.c. References EXIT, FALSE, HeapHandle, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), RtlpDphNormalHeapGetUserInfo(), TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugGetUserInfoHeap().
|
|
Definition at line 1759 of file heappage.c. References FALSE, NULL, RESERVE_SIZE, ROUNDUP2, RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapAllocateVM(), RtlpDebugPageHeapCoalesceNodeIntoAvailable(), RtlpDebugPageHeapPlaceOnVirtualList(), RtlpDebugPageHeapReturnNodeToUnusedList(), TRUE, and VM_UNIT_SIZE. Referenced by RtlpDebugPageHeapFindAvailableMem().
|
|
Definition at line 3883 of file heappage.c. References FALSE, HeapHandle, NULL, RtlpDebugPageHeapPointerFromHandle(), and TRUE. Referenced by RtlpHeapIsLocked().
|
|
Definition at line 666 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCompact(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapGetUserInfo(), RtlpDebugPageHeapReAllocate(), RtlpDebugPageHeapSerialize(), RtlpDebugPageHeapSetUserFlags(), RtlpDebugPageHeapSetUserValue(), RtlpDebugPageHeapSize(), RtlpDebugPageHeapUnlock(), RtlpDebugPageHeapUsage(), and RtlpDebugPageHeapValidate().
|
|
Definition at line 3595 of file heappage.c. References FALSE, HeapHandle, NULL, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapPointerFromHandle(), and TRUE. Referenced by RtlLockHeap().
|
|
Definition at line 1145 of file heappage.c. References ENQUEUE_HEAD. Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 1093 of file heappage.c. References ENQUEUE_TAIL, and NULL. Referenced by RtlpDebugPageHeapFindAvailableMem(), RtlpDebugPageHeapFree(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 1498 of file heappage.c. References ENQUEUE_TAIL, and NULL. Referenced by RtlpDebugPageHeapAddNewPool(), and RtlpDebugPageHeapCreate().
|
|
Definition at line 1128 of file heappage.c. References ENQUEUE_HEAD. Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGrowVirtual().
|
|
|
Definition at line 711 of file heappage.c. References Buffer, and sprintf(). Referenced by RtlpDebugPageHeapRobustProtectVM().
|
|
Definition at line 1809 of file heappage.c. References DEBUG_ASSERT, HEAP_PROTECTION_ENABLED, NULL, and RtlpDebugPageHeapProtectVM().
|
|
Definition at line 831 of file heappage.c. References FALSE, and RtlpDebugPageHeapRobustProtectVM(). Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapProtectStructures(), RtlpDebugPageHeapReAllocate(), and RtlpDebugPageHeapUnProtectStructures().
|
|
Definition at line 2895 of file heappage.c. References BIAS_POINTER, BUMP_GLOBAL_COUNTER, BUMP_SIZE_COUNTER, DbgPrint, DEBUG_ASSERT, DEBUG_CODE, DPH_DEBUG_BREAK_FOR_SIZE_ZERO, DPH_DEBUG_INTERNAL_VALIDATION, EXCEPTION_EXECUTE_HANDLER, EXIT, FALSE, HeapHandle, IF_GENERATE_EXCEPTION, IS_BIASED_POINTER, NULL, OUT_OF_VM_BREAK, PROTECT_HEAP_STRUCTURES, RETAIL_ASSERT, RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapDecommitVM(), RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPlaceOnBusyList(), RtlpDebugPageHeapPlaceOnFreeList(), RtlpDebugPageHeapPointerFromHandle(), RtlpDebugPageHeapProtectVM(), RtlpDebugPageHeapRemoveFromBusyList(), RtlpDphDebugLevel, RtlpDphInternalValidatePageHeap(), RtlpDphIsPageHeapBlock(), RtlpDphLogStackTrace(), RtlpDphNormalHeapAllocate(), RtlpDphNormalHeapReAllocate(), RtlpDphReportCorruptedBlock(), RtlpDphShouldAllocateInPageHeap(), RtlpDphTraceDatabase, Size, TRUE, UNBIAS_POINTER, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugReAllocateHeap(), RtlpDphDllGlobalReAlloc(), RtlpDphDllHeapReAlloc(), RtlpDphDllLocalReAlloc(), and RtlpDphDllrealloc().
|
|
Definition at line 863 of file heappage.c. References NT_SUCCESS. Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapDestroy().
|
|
Definition at line 1080 of file heappage.c. References DEQUEUE_NODE. Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapAllocateNode().
|
|
Definition at line 1163 of file heappage.c. References DEQUEUE_NODE. Referenced by RtlpDebugPageHeapFree(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 1113 of file heappage.c. References DEQUEUE_NODE, and NULL. Referenced by RtlpDebugPageHeapCoalesceFreeIntoAvailable().
|
|
Definition at line 3837 of file heappage.c.
|
|
Definition at line 1038 of file heappage.c. References ENQUEUE_HEAD. Referenced by RtlpDebugPageHeapAllocateNode(), RtlpDebugPageHeapCoalesceNodeIntoAvailable(), and RtlpDebugPageHeapGrowVirtual().
|
|
Definition at line 737 of file heappage.c. References CHAR, DbgPrint, FALSE, NT_SUCCESS, NTSTATUS(), NULL, PAGE_SIZE, ROUNDUP2, RtlpDebugPageHeapProtectionText(), Status, and TRUE. Referenced by RtlpDebugPageHeapProtectVM().
|
|
Definition at line 1177 of file heappage.c. References NULL. Referenced by RtlpDebugPageHeapFindAvailableMem().
|
|
Definition at line 3795 of file heappage.c. References FALSE, HeapHandle, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlpSerializeHeap().
|
|
Definition at line 3740 of file heappage.c. References EXIT, FALSE, HeapHandle, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), RtlpDphNormalHeapSetUserFlags(), TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugSetUserFlagsHeap().
|
|
Definition at line 3631 of file heappage.c. References EXIT, FALSE, HeapHandle, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), RtlpDphNormalHeapSetUserValue(), TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugSetUserValueHeap().
|
|
Definition at line 3401 of file heappage.c. References EXIT, HeapHandle, IF_GENERATE_EXCEPTION, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), RtlpDphNormalHeapSize(), Size, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlDebugSizeHeap().
|
|
Definition at line 1015 of file heappage.c. References DEQUEUE_NODE, and NULL. Referenced by RtlpDebugPageHeapAddNewPool(), and RtlpDebugPageHeapAllocateNode().
|
|
Definition at line 3613 of file heappage.c. References FALSE, HeapHandle, NULL, RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), and TRUE. Referenced by RtlUnlockHeap().
|
|
Definition at line 1839 of file heappage.c. References DEBUG_ASSERT, HEAP_PROTECTION_ENABLED, NULL, and RtlpDebugPageHeapProtectVM().
|
|
Definition at line 3846 of file heappage.c. References HeapHandle, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), UNPROTECT_HEAP_STRUCTURES, and Usage(). Referenced by RtlDebugUsageHeap().
|
|
Definition at line 3539 of file heappage.c. References DEBUG_CODE, FALSE, HeapHandle, NULL, PROTECT_HEAP_STRUCTURES, RtlpDebugPageHeapEnterCritSect(), RtlpDebugPageHeapFindBusyMem(), RtlpDebugPageHeapLeaveCritSect(), RtlpDebugPageHeapPointerFromHandle(), RtlpDphNormalHeapValidate(), TRUE, and UNPROTECT_HEAP_STRUCTURES. Referenced by RtlValidateHeap().
|
|
Definition at line 3586 of file heappage.c. Referenced by RtlWalkHeap().
|
|
Definition at line 3828 of file heappage.c. Referenced by RtlDebugZeroHeap().
|
|
Definition at line 4831 of file heappage.c. References RtlpDphDelayedFreeQueue, RtlpDphDelayedFreeQueueLock, RtlpDphMemoryUsedByDelayedFreeBlocks, and RtlpDphNumberOfDelayedFreeBlocks. Referenced by RtlpDphNormalHeapFree().
|
|
Definition at line 4961 of file heappage.c. References FreeQueue(), RtlFreeHeap, RtlpDphDelayedFreeQueue, RtlpDphDelayedFreeQueueLock, RtlpDphIsNormalFreeHeapBlock(), RtlpDphMemoryUsedByDelayedFreeBlocks, RtlpDphNumberOfDelayedFreeBlocks, RtlpDphReportCorruptedBlock(), and TRUE. Referenced by RtlpDebugPageHeapDestroy().
|
|
Definition at line 4819 of file heappage.c. References RtlInitializeCriticalSection(), RtlpDphDelayedFreeQueue, RtlpDphDelayedFreeQueueLock, RtlpDphMemoryUsedByDelayedFreeBlocks, and RtlpDphNumberOfDelayedFreeBlocks. Referenced by RtlpDebugPageHeapCreate().
|
|
Definition at line 5197 of file heappage.c. References DbgPrint, FALSE, NULL, PAGE_SIZE, RtlpDphCurrentValidationStack, RtlpDphLastValidationStack, RtlpDphLogStackTrace(), RtlpDphSearchBlockInList(), and TRUE. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 5143 of file heappage.c. References Name, NULL, RtlpDphTargetDllsUnicode, and RtlUpcaseUnicodeChar(). Referenced by LdrpDphInitializeTargetDll(), and RtlpDphTargetDllsLoadCallBack().
|
|
Definition at line 4193 of file heappage.c. References DEBUG_ASSERT, EXCEPTION_EXECUTE_HANDLER, FALSE, NULL, and TRUE. Referenced by RtlpDphFreeDelayedBlocksFromHeap(), and RtlpDphTrimDelayedFreeQueue().
|
|
Definition at line 4123 of file heappage.c. References DEBUG_ASSERT, EXCEPTION_EXECUTE_HANDLER, FALSE, NULL, and TRUE. Referenced by RtlpDphNormalHeapFree(), RtlpDphNormalHeapGetUserInfo(), RtlpDphNormalHeapReAllocate(), RtlpDphNormalHeapSetUserFlags(), RtlpDphNormalHeapSetUserValue(), RtlpDphNormalHeapSize(), and RtlpDphNormalHeapValidate().
|
|
Definition at line 4049 of file heappage.c. References DEBUG_ASSERT, EXCEPTION_EXECUTE_HANDLER, FALSE, NULL, PAGE_SIZE, ROUNDUP2, and TRUE. Referenced by RtlpDebugPageHeapDestroy(), RtlpDebugPageHeapFree(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 5026 of file heappage.c. References Count, FALSE, NULL, RtlCaptureStackBackTrace(), and RtlpDphTraceDatabase. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), RtlpDphInternalValidatePageHeap(), RtlpDphNormalHeapFree(), RtlpDphWriteNormalHeapBlockInformation(), and RtlpDphWritePageHeapBlockInformation().
|
|
Definition at line 4846 of file heappage.c. References FALSE, PAGE_SIZE, RtlpDphDelayedFreeCacheSize, RtlpDphDelayedFreeQueueLock, RtlpDphMemoryUsedByDelayedFreeBlocks, and TRUE. Referenced by RtlpDphNormalHeapFree().
|
|
Definition at line 4403 of file heappage.c. References BUMP_GLOBAL_COUNTER, BUMP_SIZE_COUNTER, NULL, RtlAllocateHeap, RtlpDphWriteNormalHeapBlockInformation(), and Size. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapReAllocate(), and RtlpDphNormalHeapReAllocate().
|
|
Definition at line 4458 of file heappage.c. References BUMP_GLOBAL_COUNTER, DPH_DEBUG_NEVER_FREE, FALSE, NULL, RtlpDphAddToDelayedFreeQueue(), RtlpDphDebugLevel, RtlpDphIsNormalHeapBlock(), RtlpDphLogStackTrace(), RtlpDphNeedToTrimDelayedFreeQueue(), RtlpDphReportCorruptedBlock(), RtlpDphTraceDatabase, RtlpDphTrimDelayedFreeQueue(), and TRUE. Referenced by RtlpDebugPageHeapFree(), and RtlpDphNormalHeapReAllocate().
|
|
Definition at line 4722 of file heappage.c. References FALSE, RtlGetUserInfoHeap(), RtlpDphIsNormalHeapBlock(), and RtlpDphReportCorruptedBlock(). Referenced by RtlpDebugPageHeapGetUserInfo().
|
|
Definition at line 4556 of file heappage.c. References BUMP_GLOBAL_COUNTER, BUMP_SIZE_COUNTER, NULL, RtlpDphIsNormalHeapBlock(), RtlpDphNormalHeapAllocate(), RtlpDphNormalHeapFree(), RtlpDphReportCorruptedBlock(), Size, and TRUE. Referenced by RtlpDebugPageHeapReAllocate().
|
|
Definition at line 4664 of file heappage.c. References FALSE, RtlpDphIsNormalHeapBlock(), RtlpDphReportCorruptedBlock(), and RtlSetUserFlagsHeap(). Referenced by RtlpDebugPageHeapSetUserFlags().
|
|
Definition at line 4694 of file heappage.c. References FALSE, RtlpDphIsNormalHeapBlock(), RtlpDphReportCorruptedBlock(), and RtlSetUserValueHeap(). Referenced by RtlpDebugPageHeapSetUserValue().
|
|
Definition at line 4620 of file heappage.c. References DbgPrint, FALSE, RtlpDphIsNormalHeapBlock(), and RtlSizeHeap(). Referenced by RtlpDebugPageHeapSize().
|
|
Definition at line 4752 of file heappage.c. References DbgPrint, FALSE, NULL, RtlpDphIsNormalHeapBlock(), RtlValidateHeap(), and TRUE. Referenced by RtlpDebugPageHeapValidate().
|
|
Definition at line 4016 of file heappage.c. References DbgPrint. Referenced by RtlpDebugPageHeapDestroy(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphNormalHeapFree(), RtlpDphNormalHeapGetUserInfo(), RtlpDphNormalHeapReAllocate(), RtlpDphNormalHeapSetUserFlags(), RtlpDphNormalHeapSetUserValue(), and RtlpDphTrimDelayedFreeQueue().
|
|
Definition at line 5177 of file heappage.c. Referenced by RtlpDphInternalValidatePageHeap().
|
|
Definition at line 3906 of file heappage.c. References Count, FALSE, Index, NTSTATUS(), RtlCaptureStackBackTrace(), RtlpDphDllRangeEnd, RtlpDphDllRangeStart, RtlpDphRandomProbability, RtlpDphSizeRangeEnd, RtlpDphSizeRangeStart, RtlRandom(), Size, Status, and TRUE. Referenced by RtlpDebugPageHeapAllocate(), and RtlpDebugPageHeapReAllocate().
|
|
Definition at line 5087 of file heappage.c. References DbgPrint, Name, NULL, PDPH_TARGET_DLL, RtlAllocateHeap, RtlCreateUnicodeString(), RtlFreeHeap, RtlpDphIsDllTargeted(), RtlpDphTargetDllsInitialized, RtlpDphTargetDllsList, RtlpDphTargetDllsLock, and Size.
|
|
Definition at line 5078 of file heappage.c. References RtlInitializeCriticalSection(), RtlpDphTargetDllsInitialized, RtlpDphTargetDllsList, RtlpDphTargetDllsLock, and TRUE. Referenced by RtlpDebugPageHeapCreate().
|
|
Definition at line 4874 of file heappage.c. References FreeQueue(), RtlFreeHeap, RtlpDphDelayedFreeCacheSize, RtlpDphDelayedFreeQueue, RtlpDphDelayedFreeQueueLock, RtlpDphIsNormalFreeHeapBlock(), RtlpDphMemoryUsedByDelayedFreeBlocks, RtlpDphNumberOfDelayedFreeBlocks, RtlpDphReportCorruptedBlock(), and TRUE. Referenced by RtlpDphNormalHeapFree().
|
|
Definition at line 4334 of file heappage.c. References NULL, RtlpDphLogStackTrace(), RtlpDphTraceDatabase, and TRUE. Referenced by RtlpDphNormalHeapAllocate().
|
|
Definition at line 4285 of file heappage.c. References NULL, PAGE_SIZE, ROUNDUP2, RtlpDphLogStackTrace(), and TRUE. Referenced by RtlpDebugPageHeapAllocate().
|
|
|
Definition at line 189 of file heappage.c. Referenced by LdrpInitialize(), LdrpInitializeProcess(), RtlCreateHeap(), and RtlGetProcessHeaps(). |
|
Definition at line 5194 of file heappage.c. Referenced by RtlpDphInternalValidatePageHeap(). |
|
Definition at line 263 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCommitVM(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapDecommitVM(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), and RtlpDphNormalHeapFree(). |
|
Definition at line 293 of file heappage.c. Referenced by RtlpDphNeedToTrimDelayedFreeQueue(), and RtlpDphTrimDelayedFreeQueue(). |
|
Definition at line 4816 of file heappage.c. Referenced by RtlpDphAddToDelayedFreeQueue(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphInitializeDelayedFreeQueue(), and RtlpDphTrimDelayedFreeQueue(). |
|
Definition at line 4811 of file heappage.c. Referenced by RtlpDphAddToDelayedFreeQueue(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphInitializeDelayedFreeQueue(), RtlpDphNeedToTrimDelayedFreeQueue(), and RtlpDphTrimDelayedFreeQueue(). |
|
Definition at line 242 of file heappage.c. Referenced by LdrpInitialize(), and RtlpDphShouldAllocateInPageHeap(). |
|
Definition at line 241 of file heappage.c. Referenced by LdrpInitialize(), and RtlpDphShouldAllocateInPageHeap(). |
|
Definition at line 285 of file heappage.c. |
|
Definition at line 231 of file heappage.c. Referenced by LdrpDphInitializeTargetDll(), LdrpInitialize(), and RtlpDebugPageHeapCreate(). |
|
Definition at line 211 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), RtlpDebugPageHeapDestroy(), and RtlpDebugPageHeapGetProcessHeaps(). |
|
Definition at line 208 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), RtlpDebugPageHeapDestroy(), and RtlpDebugPageHeapGetProcessHeaps(). |
|
Definition at line 207 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapGetProcessHeaps(). |
|
Definition at line 209 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), RtlpDebugPageHeapDestroy(), and RtlpDebugPageHeapGetProcessHeaps(). |
|
Definition at line 210 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), and RtlpDebugPageHeapDestroy(). |
|
Definition at line 5193 of file heappage.c. Referenced by RtlpDphInternalValidatePageHeap(). |
|
Definition at line 4813 of file heappage.c. Referenced by RtlpDphAddToDelayedFreeQueue(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphInitializeDelayedFreeQueue(), RtlpDphNeedToTrimDelayedFreeQueue(), and RtlpDphTrimDelayedFreeQueue(). |
|
Definition at line 4814 of file heappage.c. Referenced by RtlpDphAddToDelayedFreeQueue(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphInitializeDelayedFreeQueue(), and RtlpDphTrimDelayedFreeQueue(). |
|
Definition at line 243 of file heappage.c. Referenced by LdrpInitialize(), and RtlpDphShouldAllocateInPageHeap(). |
|
Definition at line 286 of file heappage.c. |
|
Definition at line 240 of file heappage.c. Referenced by LdrpInitialize(), and RtlpDphShouldAllocateInPageHeap(). |
|
Definition at line 239 of file heappage.c. Referenced by LdrpInitialize(), and RtlpDphShouldAllocateInPageHeap(). |
|
Definition at line 244 of file heappage.c. Referenced by LdrpDphInitializeTargetDll(), LdrpInitialize(), and RtlpDebugPageHeapCreate(). |
|
Definition at line 5066 of file heappage.c. Referenced by RtlpDphTargetDllsLoadCallBack(), and RtlpDphTargetDllsLogicInitialize(). |
|
Definition at line 5065 of file heappage.c. Referenced by RtlpDphTargetDllsLoadCallBack(), and RtlpDphTargetDllsLogicInitialize(). |
|
Definition at line 5064 of file heappage.c. Referenced by RtlpDphTargetDllsLoadCallBack(), and RtlpDphTargetDllsLogicInitialize(). |
|
Definition at line 245 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(), and RtlpDphIsDllTargeted(). |
|
Definition at line 301 of file heappage.c. Referenced by RtlpDebugPageHeapAllocate(), RtlpDebugPageHeapCreate(), RtlpDebugPageHeapFree(), RtlpDebugPageHeapReAllocate(), RtlpDphLogStackTrace(), RtlpDphNormalHeapFree(), and RtlpDphWriteNormalHeapBlockInformation(). |
|
Definition at line 300 of file heappage.c. Referenced by RtlpDebugPageHeapCreate(). |
|
Definition at line 196 of file heappage.c. |