#include "exp.h"Go to the source code of this file.
Defines | |
| #define | POOL_QUOTA_ENABLED (PoolTrackTable == NULL) |
| #define | POOL_SPECIAL_POOL_BIT 0x8 |
| #define | POOL_SPECIAL_POOL_UNDERRUN_BIT 0x1 |
| #define | FREE_CHECK_ERESOURCE(Va, NumberOfBytes) |
| #define | FREE_CHECK_KTIMER(Va, NumberOfBytes) |
| #define | FREE_CHECK_WORKER(Va, NumberOfBytes) |
| #define | LOCK_POOL_GRANULAR(PoolDesc, LockHandle) |
| #define | UNLOCK_POOL_GRANULAR(PoolDesc, LockHandle) |
| #define | DecodeLink(Link) ((PLIST_ENTRY)((ULONG_PTR)(Link) & ~1)) |
| #define | EncodeLink(Link) ((PLIST_ENTRY)((ULONG_PTR)(Link) | 1)) |
| #define | PrivateInitializeListHead(ListHead) |
| #define | PrivateIsListEmpty(ListHead) (DecodeLink((ListHead)->Flink) == (ListHead)) |
| #define | PrivateRemoveHeadList(ListHead) |
| #define | PrivateRemoveTailList(ListHead) |
| #define | PrivateRemoveEntryList(Entry) |
| #define | PrivateInsertTailList(ListHead, Entry) |
| #define | PrivateInsertHeadList(ListHead, Entry) |
| #define | CHECK_LIST(LINE, LIST, ENTRY) |
| #define | CHECK_POOL_HEADER(LINE, ENTRY) |
| #define | ASSERT_ALLOCATE_IRQL(_PoolType, _NumberOfBytes) |
| #define | ASSERT_FREE_IRQL(_PoolType, _P) |
| #define | ASSERT_POOL_NOT_FREE(_Entry) |
| #define | ASSERT_POOL_TYPE_NOT_ZERO(_Entry) |
| #define | CHECK_LOOKASIDE_LIST(LINE, LIST, ENTRY) {NOTHING;} |
| #define | MAX_TRACKER_TABLE 1025 |
| #define | MAX_BIGPAGE_TABLE 4096 |
| #define | ENCODE_POOL_INDEX(POOLHEADER, INDEX) {(POOLHEADER)->PoolIndex = (UCHAR)((((POOLHEADER)->PoolIndex & 0x80) | ((UCHAR)(INDEX))));} |
| #define | DECODE_POOL_INDEX(POOLHEADER) ((ULONG)((POOLHEADER)->PoolIndex & 0x7f)) |
| #define | MARK_POOL_HEADER_ALLOCATED(POOLHEADER) {(POOLHEADER)->PoolIndex |= 0x80;} |
| #define | MARK_POOL_HEADER_FREED(POOLHEADER) {(POOLHEADER)->PoolIndex &= 0x7f;} |
| #define | IS_POOL_HEADER_MARKED_ALLOCATED(POOLHEADER) ((POOLHEADER)->PoolIndex & 0x80) |
| #define | ExpLockNonPagedPool(OldIrql) ExAcquireSpinLock(&NonPagedPoolLock, &OldIrql) |
| #define | ExpUnlockNonPagedPool(OldIrql) ExReleaseSpinLock(&NonPagedPoolLock, OldIrql) |
| #define | LOCK_POOL(PoolDesc, LockHandle) |
| #define | LOCK_IF_PAGED_POOL(_CheckType, _GlobalPool) |
| #define | UNLOCK_POOL(PoolDesc, LockHandle) |
| #define | UNLOCK_IF_PAGED_POOL(_CheckType, _GlobalPool) |
| #define | _NTOSKRNL_VERIFIER_ 1 |
| #define | CacheOverhead POOL_OVERHEAD |
Functions | |
| PVOID | MmSqueezeBadTags (IN SIZE_T NumberOfBytes, IN ULONG Tag, IN POOL_TYPE PoolType, IN ULONG SpecialPoolType) |
| VOID | ExpInitializePoolDescriptor (IN PPOOL_DESCRIPTOR PoolDescriptor, IN POOL_TYPE PoolType, IN ULONG PoolIndex, IN ULONG Threshold, IN PVOID PoolLock) |
| NTSTATUS | ExpSnapShotPoolPages (IN PVOID Address, IN ULONG Size, IN OUT PSYSTEM_POOL_INFORMATION PoolInformation, IN OUT PSYSTEM_POOL_ENTRY *PoolEntryInfo, IN ULONG Length, IN OUT PULONG RequiredLength) |
| VOID | ExpInsertPoolTracker (IN ULONG Key, IN SIZE_T Size, IN POOL_TYPE PoolType) |
| VOID | ExpRemovePoolTracker (IN ULONG Key, IN ULONG Size, IN POOL_TYPE PoolType) |
| LOGICAL | ExpAddTagForBigPages (IN PVOID Va, IN ULONG Key, IN ULONG NumberOfPages) |
| ULONG | ExpFindAndRemoveTagBigPages (IN PVOID Va) |
| PVOID | ExpAllocateStringRoutine (IN SIZE_T NumberOfBytes) |
| BOOLEAN | ExOkayToLockRoutine (IN PVOID Lock) |
| KIRQL | ExLockPool (IN POOL_TYPE PoolType) |
| VOID | ExUnlockPool (IN POOL_TYPE PoolType, IN KIRQL LockHandle) |
| VOID | InitializePool (IN POOL_TYPE PoolType, IN ULONG Threshold) |
| LOGICAL | ExpCheckSingleFilter (ULONG Tag, ULONG Filter) |
| PVOID | ExAllocatePool (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes) |
| PVOID | VeAllocatePoolWithTagPriority (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes, IN ULONG Tag, IN EX_POOL_PRIORITY Priority, IN PVOID CallingAddress) |
| PVOID | ExAllocatePoolWithTagPriority (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes, IN ULONG Tag, IN EX_POOL_PRIORITY Priority) |
| PVOID | ExAllocatePoolWithTag (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes, IN ULONG Tag) |
| VOID | ExInsertPoolTag (ULONG Tag, PVOID Va, SIZE_T NumberOfBytes, POOL_TYPE PoolType) |
| VOID | ExRemovePoolTag (ULONG Tag, PVOID Va, SIZE_T NumberOfBytes) |
| ULONG | ExpAllocatePoolWithQuotaHandler (IN NTSTATUS ExceptionCode, IN PVOID PoolAddress, IN LOGICAL ContinueSearch) |
| PVOID | ExAllocatePoolWithQuota (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes) |
| PVOID | ExAllocatePoolWithQuotaTag (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes, IN ULONG Tag) |
| VOID | ExFreePool (IN PVOID P) |
| VOID | ExFreePoolWithTag (IN PVOID P, IN ULONG TagToFree) |
| ULONG | ExQueryPoolBlockSize (IN PVOID PoolBlock, OUT PBOOLEAN QuotaCharged) |
| VOID | ExQueryPoolUsage (OUT PULONG PagedPoolPages, OUT PULONG NonPagedPoolPages, OUT PULONG PagedPoolAllocs, OUT PULONG PagedPoolFrees, OUT PULONG PagedPoolLookasideHits, OUT PULONG NonPagedPoolAllocs, OUT PULONG NonPagedPoolFrees, OUT PULONG NonPagedPoolLookasideHits) |
| VOID | ExReturnPoolQuota (IN PVOID P) |
| VOID | ExAllocatePoolSanityChecks (IN POOL_TYPE PoolType, IN SIZE_T NumberOfBytes) |
| VOID | ExFreePoolSanityChecks (IN PVOID P) |
Variables | |
| ULONG | ExpPoolBugCheckLine |
| PPOOL_DESCRIPTOR | ExpSessionPoolDescriptor |
| ULONG | FirstPrint |
| PPOOL_TRACKER_TABLE | PoolTrackTable |
| SIZE_T | PoolTrackTableSize |
| SIZE_T | PoolTrackTableMask |
| PPOOL_TRACKER_BIG_PAGES | PoolBigPageTable |
| SIZE_T | PoolBigPageTableSize |
| SIZE_T | PoolBigPageTableHash |
| ULONG | PoolHitTag = 0xffffff0f |
| PRTL_ALLOCATE_STRING_ROUTINE | RtlAllocateStringRoutine = ExpAllocateStringRoutine |
| PRTL_FREE_STRING_ROUTINE | RtlFreeStringRoutine = (PRTL_FREE_STRING_ROUTINE)ExFreePool |
| ULONG | ExpNumberOfPagedPools = NUMBER_OF_PAGED_POOLS |
| POOL_DESCRIPTOR | NonPagedPoolDescriptor |
| POOL_DESCRIPTOR | NonPagedPoolDescriptorMS |
| PPOOL_DESCRIPTOR | PoolVector [NUMBER_OF_POOLS] |
| PPOOL_DESCRIPTOR | ExpPagedPoolDescriptor |
| KSPIN_LOCK | NonPagedPoolLock |
| volatile ULONG | ExpPoolIndex = 1 |
| KSPIN_LOCK | ExpTaggedPoolLock |
| NPAGED_LOOKASIDE_LIST | ExpSmallNPagedPoolLookasideLists [POOL_SMALL_LISTS] |
| NPAGED_LOOKASIDE_LIST | ExpSmallPagedPoolLookasideLists [POOL_SMALL_LISTS] |
| LOGICAL | KernelVerifier |
|
|
|
|
|
Value:
Definition at line 205 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(). |
|
|
Value:
Definition at line 217 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Value:
Definition at line 229 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Value:
Definition at line 234 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Referenced by ExAllocatePoolWithTag(). |
|
|
Value:
Definition at line 173 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Definition at line 239 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Value:
Definition at line 184 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Definition at line 418 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), ExFreePoolWithTag(), and ExReturnPoolQuota(). |
|
|
Definition at line 125 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Definition at line 417 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
|
|
|
Definition at line 456 of file ex/pool.c. Referenced by ExpAddTagForBigPages(), and ExpInsertPoolTracker(). |
|
|
Definition at line 459 of file ex/pool.c. Referenced by ExpAddTagForBigPages(), and ExpInsertPoolTracker(). |
|
|
Definition at line 72 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Definition at line 73 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Definition at line 74 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Definition at line 422 of file ex/pool.c. Referenced by ExFreePoolSanityChecks(), and ExFreePoolWithTag(). |
|
|
Value:
Definition at line 500 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Value:
Definition at line 492 of file ex/pool.c. Referenced by ExAllocatePool(), ExAllocatePoolWithTag(), ExFreePool(), and ExFreePoolWithTag(). |
|
|
Definition at line 98 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExReturnPoolQuota(). |
|
|
Definition at line 420 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(). |
|
|
Definition at line 421 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Definition at line 345 of file ex/pool.c. Referenced by InitializePool(). |
|
|
|
|
|
Definition at line 41 of file ex/pool.c. Referenced by ExAllocatePoolWithQuotaTag(), and ExReturnPoolQuota(). |
|
|
Definition at line 48 of file ex/pool.c. Referenced by ExAllocatePoolWithTagPriority(). |
|
|
Definition at line 49 of file ex/pool.c. Referenced by ExAllocatePoolWithTagPriority(). |
|
|
Value:
Definition at line 128 of file ex/pool.c. Referenced by ExpInitializePoolDescriptor(). |
|
|
Value:
Definition at line 162 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Value:
Definition at line 151 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Definition at line 131 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(). |
|
|
Value:
Definition at line 142 of file ex/pool.c. Referenced by ExFreePoolWithTag(). |
|
|
Value: Definition at line 134 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(). |
|
|
Value: |
|
|
Value:
Definition at line 559 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag(). |
|
|
Value:
Definition at line 551 of file ex/pool.c. Referenced by ExAllocatePool(), ExAllocatePoolWithTag(), ExFreePool(), and ExFreePoolWithTag(). |
|
|
Definition at line 99 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and ExReturnPoolQuota(). |
|
||||||||||||
|
Definition at line 910 of file ex/pool.c.
|
|
||||||||||||
|
Definition at line 3828 of file ex/pool.c. References APC_LEVEL, BASE_POOL_TYPE_MASK, DISPATCH_LEVEL, KeBugCheckEx(), MUST_SUCCEED_POOL_TYPE_MASK, PAGE_SIZE, and PagedPool. Referenced by VeAllocatePoolWithTagPriority().
|
|
||||||||||||
|
Definition at line 2550 of file ex/pool.c.
|
|
||||||||||||||||
|
Definition at line 2607 of file ex/pool.c. References BASE_POOL_TYPE_MASK, _POOL_HEADER::BlockSize, ExAllocatePoolWithTag, ExpAllocatePoolWithQuotaHandler(), ExRaiseStatus(), FALSE, KeBugCheck(), MmSpecialPoolEnd, MmSpecialPoolStart, NtGlobalFlag, NULL, ObReferenceObject, PAGE_ALIGNED, POOL_BLOCK_SHIFT, POOL_OVERHEAD, POOL_QUOTA_ENABLED, POOL_QUOTA_FAIL_INSTEAD_OF_RAISE, POOL_QUOTA_MASK, POOL_TYPE, _POOL_HEADER::ProcessBilled, PsChargePoolQuota(), PsGetCurrentProcess, PsInitialSystemProcess, and TRUE.
|
|
||||||||||||||||
|
Definition at line 1104 of file ex/pool.c. References _GENERAL_LOOKASIDE::AllocateHits, ASSERT, ASSERT_ALLOCATE_IRQL, BASE_POOL_TYPE_MASK, _POOL_HEADER::BlockSize, BYTES_TO_PAGES, CACHE_ALIGNED_POOL_TYPE_MASK, CacheOverhead, CHECK_LIST, CHECK_LOOKASIDE_LIST, CHECK_POOL_HEADER, DECODE_POOL_INDEX, ENCODE_POOL_INDEX, ExInterlockedPopEntrySList(), ExpAddTagForBigPages(), ExpCheckSingleFilter(), ExpInsertPoolTracker(), ExpNumberOfPagedPools, ExpPagedPoolDescriptor, ExpPoolIndex, ExpSessionPoolDescriptor, ExRaiseStatus(), FALSE, HighPoolPriority, Index, Isx86FeaturePresent, KeGetCurrentPrcb, KernelVerifier, KF_CMPXCHG8B, _NPAGED_LOOKASIDE_LIST::L, _GENERAL_LOOKASIDE::ListHead, _POOL_DESCRIPTOR::ListHeads, _NPAGED_LOOKASIDE_LIST::Lock, Lock, LOCK_IF_PAGED_POOL, LOCK_POOL, LOCK_POOL_GRANULAR, _POOL_DESCRIPTOR::LockAddress, MARK_POOL_HEADER_ALLOCATED, MiAllocatePoolPages(), MiSessionPoolAllocated(), MmAllocateSpecialPool(), MmSpecialPoolTag, MmSqueezeBadTags(), MUST_SUCCEED_POOL_TYPE_MASK, NonPagedPool, NonPagedPoolLock, NonPagedPoolMustSucceed, NULL, PAGE_END, PAGE_SIZE, PagedPool, PERFINFO_ADDPOOLPAGE, PERFINFO_BIGPOOLALLOC, PERFINFO_EXALLOCATEPOOLWITHTAG_DECL, PERFINFO_POOLALLOC, PERFINFO_POOLALLOC_ADDR, POOL_BLOCK_SHIFT, POOL_BUDDY_MAX, POOL_DRIVER_MASK, POOL_LIST_HEADS, POOL_OVERHEAD, POOL_QUOTA_MASK, POOL_RAISE_IF_ALLOCATION_FAILURE, POOL_SMALL_LISTS, POOL_SMALLEST_BLOCK, POOL_TYPE, POOL_VERIFIER_MASK, PoolBigPageTable, _POOL_DESCRIPTOR::PoolIndex, _POOL_HEADER::PoolTag, PoolTrackTable, _POOL_HEADER::PoolType, PoolVector, PPOOL_BLOCK, PPOOL_HEADER, _POOL_HEADER::PreviousSize, PrivateInsertHeadList, PrivateInsertTailList, PrivateIsListEmpty, PrivateRemoveHeadList, ROUND_TO_PAGES, RtlGetCallersAddress(), _POOL_DESCRIPTOR::RunningAllocs, SESSION_POOL_MASK, _GENERAL_LOOKASIDE::TotalAllocates, _POOL_DESCRIPTOR::TotalBigPages, _POOL_DESCRIPTOR::TotalPages, TRUE, UNLOCK_IF_PAGED_POOL, UNLOCK_POOL, UNLOCK_POOL_GRANULAR, and VeAllocatePoolWithTagPriority().
|
|
||||||||||||||||||||
|
Definition at line 993 of file ex/pool.c. References BASE_POOL_TYPE_MASK, ExAllocatePoolWithTag, ExpSessionPoolDescriptor, FALSE, HighPoolPriority, MmAllocateSpecialPool(), MmResourcesAvailable(), MUST_SUCCEED_POOL_TYPE_MASK, NULL, POOL_BUDDY_MAX, POOL_SPECIAL_POOL_BIT, POOL_SPECIAL_POOL_UNDERRUN_BIT, POOL_VERIFIER_MASK, and SESSION_POOL_MASK. Referenced by IovAllocateIrp(), IovpProtectedIrpAllocate(), VeAllocatePoolWithTagPriority(), VerifierAllocatePoolWithTagPriority(), and ViReservePoolAllocation().
|
|
|
Definition at line 2751 of file ex/pool.c. References ExFreePoolWithTag.
|
|
|
Definition at line 3892 of file ex/pool.c. References APC_LEVEL, BASE_POOL_TYPE_MASK, _POOL_HEADER::BlockSize, BYTE_OFFSET, DISPATCH_LEVEL, ExpCheckForResource(), ExpCheckForWorker(), IS_POOL_HEADER_MARKED_ALLOCATED, KeBugCheckEx(), KeCheckForTimer(), MmDeterminePoolType(), MmSpecialPoolEnd, MmSpecialPoolStart, NULL, PAGE_ALIGNED, PAGE_SIZE, PagedPool, POOL_BLOCK_SHIFT, POOL_OVERHEAD, POOL_TYPE, POOL_TYPE_MASK, _POOL_HEADER::PoolType, and _POOL_HEADER::Ulong1. Referenced by VerifierFreePoolWithTag().
|
|
||||||||||||
|
Definition at line 2760 of file ex/pool.c. References ASSERT, ASSERT_FREE_IRQL, ASSERT_POOL_NOT_FREE, ASSERT_POOL_TYPE_NOT_ZERO, BASE_POOL_TYPE_MASK, _POOL_HEADER::BlockSize, CHECK_LIST, CHECK_LOOKASIDE_LIST, CHECK_POOL_HEADER, DbgPrint, DECODE_POOL_INDEX, DecodeLink, _GENERAL_LOOKASIDE::Depth, ENCODE_POOL_INDEX, ExInterlockedPushEntrySList(), ExpFindAndRemoveTagBigPages(), ExpRemovePoolTracker(), ExpSessionPoolDescriptor, ExQueryDepthSList, FALSE, FREE_CHECK_ERESOURCE, FREE_CHECK_KTIMER, FREE_CHECK_WORKER, _GENERAL_LOOKASIDE::FreeHits, Index, IS_POOL_HEADER_MARKED_ALLOCATED, Isx86FeaturePresent, KeBugCheckEx(), KeGetCurrentPrcb, KF_CMPXCHG8B, _NPAGED_LOOKASIDE_LIST::L, _GENERAL_LOOKASIDE::ListHead, _POOL_DESCRIPTOR::ListHeads, _NPAGED_LOOKASIDE_LIST::Lock, LOCK_IF_PAGED_POOL, LOCK_POOL, MARK_POOL_HEADER_FREED, MiFreePoolPages(), MiSessionPoolFreed(), MmDeterminePoolType(), MmFreeSpecialPool(), MmSpecialPoolEnd, MmSpecialPoolStart, NonPagedPool, NonPagedPoolMustSucceed, NULL, ObDereferenceObject, PAGE_ALIGNED, PAGE_END, PAGE_SHIFT, PAGE_SIZE, PagedPool, PagedPoolSession, PERFINFO_EXFREEPOOLWITHTAG_DECL, PERFINFO_FREEPOOL, PERFINFO_FREEPOOLPAGE, POOL_BLOCK_SHIFT, POOL_OVERHEAD, POOL_QUOTA_MASK, POOL_SMALL_LISTS, POOL_TYPE, POOL_TYPE_MASK, POOL_VERIFIER_MASK, _POOL_DESCRIPTOR::PoolIndex, _POOL_HEADER::PoolTag, PoolTrackTable, _POOL_HEADER::PoolType, PoolVector, _POOL_HEADER::PreviousSize, PrivateInsertHeadList, PrivateInsertTailList, PrivateRemoveEntryList, _POOL_HEADER::ProcessBilled, PROTECTED_POOL, PsReturnPoolQuota(), _POOL_DESCRIPTOR::RunningDeAllocs, SESSION_POOL_MASK, _POOL_DESCRIPTOR::TotalBigPages, _GENERAL_LOOKASIDE::TotalFrees, _POOL_DESCRIPTOR::TotalPages, TRUE, UNLOCK_IF_PAGED_POOL, UNLOCK_POOL, and VerifierFreeTrackedPool().
|
|
||||||||||||||||||||
|
Definition at line 1893 of file ex/pool.c. References ASSERT, BYTES_TO_PAGES, ExpAddTagForBigPages(), ExpInsertPoolTracker(), FALSE, NonPagedPool, NULL, PAGE_SIZE, PoolBigPageTable, PoolTrackTable, and SESSION_POOL_MASK. Referenced by MiFindContiguousMemory().
|
|
|
Definition at line 506 of file ex/pool.c.
|
|
|
Definition at line 397 of file ex/pool.c. References FALSE, Lock, and TRUE.
|
|
||||||||||||||||
|
Definition at line 2324 of file ex/pool.c. References ASSERT, ExpInsertPoolTracker(), ExpLockNonPagedPool, ExpRemovePoolTracker(), ExpTaggedPoolLock, ExpUnlockNonPagedPool, FALSE, FirstPrint, _POOL_TRACKER_BIG_PAGES::Key, Key, MiAllocatePoolPages(), MiFreePoolPages(), NonPagedPool, NULL, _POOL_TRACKER_BIG_PAGES::NumberOfPages, PAGE_SHIFT, PAGE_SIZE, PoolBigPageTable, PoolBigPageTableHash, PoolBigPageTableSize, ROUND_TO_PAGES, TRUE, and _POOL_TRACKER_BIG_PAGES::Va. Referenced by ExAllocatePoolWithTag(), and ExInsertPoolTag().
|
|
||||||||||||||||
|
Definition at line 2502 of file ex/pool.c. References ASSERT, EXCEPTION_CONTINUE_SEARCH, EXCEPTION_EXECUTE_HANDLER, and ExFreePool().
|
|
|
Definition at line 389 of file ex/pool.c. References ExAllocatePoolWithTag, and PagedPool.
|
|
||||||||||||
|
Definition at line 853 of file ex/pool.c. References FALSE, Filter, PROTECTED_POOL, and TRUE. Referenced by ExAllocatePoolWithTag().
|
|
|
Definition at line 2461 of file ex/pool.c. References ASSERT, ExpTaggedPoolLock, FALSE, FirstPrint, _POOL_TRACKER_BIG_PAGES::Key, PAGE_SHIFT, PoolBigPageTable, PoolBigPageTableHash, PoolBigPageTableSize, TRUE, and _POOL_TRACKER_BIG_PAGES::Va. Referenced by ExFreePoolWithTag(), and ExRemovePoolTag().
|
|
||||||||||||||||||||||||
|
Definition at line 609 of file ex/pool.c. References ExpSessionPoolDescriptor, Index, MiSessionPoolVector(), NULL, PagedPoolSession, POOL_LIST_HEADS, and PrivateInitializeListHead.
|
|
||||||||||||||||
|
Definition at line 2000 of file ex/pool.c. References ASSERT, BASE_POOL_TYPE_MASK, ExpLockNonPagedPool, ExpRemovePoolTracker(), ExpTaggedPoolLock, ExpUnlockNonPagedPool, FALSE, Index, _POOL_TRACKER_TABLE::Key, Key, MiAllocatePoolPages(), MiFreePoolPages(), _POOL_TRACKER_TABLE::NonPagedAllocs, _POOL_TRACKER_TABLE::NonPagedBytes, NonPagedPool, NULL, PAGE_SIZE, _POOL_TRACKER_TABLE::PagedAllocs, _POOL_TRACKER_TABLE::PagedBytes, PagedPool, PoolHitTag, PoolTrackTable, PoolTrackTableMask, PoolTrackTableSize, PROTECTED_POOL, ROUND_TO_PAGES, SESSION_POOL_MASK, Size, TRUE, and USHORT. Referenced by ExAllocatePoolWithTag(), ExInsertPoolTag(), ExpAddTagForBigPages(), and InitializePool().
|
|
||||||||||||||||
|
Definition at line 2231 of file ex/pool.c. References BASE_POOL_TYPE_MASK, ExpTaggedPoolLock, Index, _POOL_TRACKER_TABLE::Key, Key, _POOL_TRACKER_TABLE::NonPagedBytes, _POOL_TRACKER_TABLE::NonPagedFrees, _POOL_TRACKER_TABLE::PagedBytes, _POOL_TRACKER_TABLE::PagedFrees, PagedPool, PoolHitTag, PoolTrackTable, PoolTrackTableMask, PoolTrackTableSize, PROTECTED_POOL, and Size. Referenced by ExFreePoolWithTag(), ExpAddTagForBigPages(), ExpInsertPoolTracker(), and ExRemovePoolTag().
|
|
||||||||||||||||||||||||||||
|
|
|
||||||||||||
|
Definition at line 3328 of file ex/pool.c. References _POOL_HEADER::BlockSize, FALSE, MmQuerySpecialPoolBlockSize(), MmSpecialPoolEnd, MmSpecialPoolStart, NULL, PAGE_ALIGNED, PAGE_SIZE, POOL_BLOCK_SHIFT, POOL_OVERHEAD, PoolTrackTable, and _POOL_HEADER::ProcessBilled. Referenced by HMAllocObject(), and HMFreeObject().
|
|
||||||||||||||||||||||||||||||||||||
|
Definition at line 3405 of file ex/pool.c.
|
|
||||||||||||||||
|
Definition at line 1951 of file ex/pool.c. References ExpFindAndRemoveTagBigPages(), ExpRemovePoolTracker(), NonPagedPool, NULL, PAGE_SIZE, PoolBigPageTable, and PoolTrackTable.
|
|
|
Definition at line 3480 of file ex/pool.c. References BASE_POOL_TYPE_MASK, _POOL_HEADER::BlockSize, DECODE_POOL_INDEX, LOCK_POOL_GRANULAR, MmSpecialPoolEnd, MmSpecialPoolStart, NULL, ObDereferenceObject, PagedPool, POOL_BLOCK_SHIFT, POOL_OVERHEAD, POOL_QUOTA_ENABLED, POOL_QUOTA_MASK, POOL_TYPE, POOL_TYPE_MASK, _POOL_HEADER::PoolTag, _POOL_HEADER::PoolType, PoolVector, _POOL_HEADER::ProcessBilled, PsReturnPoolQuota(), and UNLOCK_POOL_GRANULAR. Referenced by IopFreeIrp(), and IopFreeMiniPacket().
|
|
||||||||||||
|
Definition at line 565 of file ex/pool.c.
|
|
||||||||||||
|
DBG DBG Definition at line 677 of file ex/pool.c.
|
|
||||||||||||||||||||
|
Definition at line 3325 of file allocpag.c. References _MI_BAD_TAGS::Allocations, _MI_BAD_TAGS::AllOthers, _MI_BAD_TAGS::Enabled, MiBadTags, MmAllocateSpecialPool(), NULL, _MI_BAD_TAGS::RandomizerEnabled, and _MI_BAD_TAGS::TargetChar.
|
|
||||||||||||||||||||||||
|
Definition at line 1812 of file verifier.c. References ASSERT, BASE_POOL_TYPE_MASK, EX_POOL_PRIORITY, ExAllocatePoolSanityChecks(), ExAllocatePoolWithTagPriority(), ExRaiseStatus(), FALSE, _MI_VERIFIER_DRIVER_ENTRY::Flags, LowPoolPrioritySpecialPoolOverrun, LowPoolPrioritySpecialPoolUnderrun, MI_ROUND_TO_SIZE, MiHydra, MmSpecialPoolCatchOverruns, MmVerifierData, MUST_SUCCEED_POOL_TYPE_MASK, NonPagedPool, NULL, PAGE_SIZE, POOL_RAISE_IF_ALLOCATION_FAILURE, POOL_VERIFIER_MASK, SESSION_POOL_MASK, TRUE, VI_VERIFYING_DIRECTLY, ViCancelPoolAllocation(), ViInjectResourceFailure(), ViLocateVerifierEntry(), ViPostPoolAllocation(), and ViReservePoolAllocation().
|
|
|
Definition at line 429 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), ExQueryPoolUsage(), and InitializePool(). |
|
|
Definition at line 452 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), and InitializePool(). |
|
|
|
|
|
Definition at line 462 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(). |
|
|
Definition at line 349 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), ExAllocatePoolWithTagPriority(), ExFreePoolWithTag(), and ExpInitializePoolDescriptor(). |
|
|
|
|
|
|
|
|
Definition at line 463 of file ex/pool.c. Referenced by ExpAddTagForBigPages(), ExpFindAndRemoveTagBigPages(), ExpGetPoolTagInfo(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), and InitializePool(). |
|
|
Definition at line 350 of file ex/pool.c. Referenced by ExpAddTagForBigPages(), ExpFindAndRemoveTagBigPages(), and KiDumpParameterImages(). |
|
|
|
Definition at line 440 of file ex/pool.c. Referenced by ExLockPool(), InitializePool(), MiAllocatePoolPages(), and MiFindContiguousMemory(). |
|
|
Definition at line 441 of file ex/pool.c. Referenced by InitializePool(). |
|
|
Definition at line 454 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), ExUnlockPool(), and InitializePool(). |
|
|
Definition at line 356 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), ExInsertPoolTag(), ExpAddTagForBigPages(), ExpFindAndRemoveTagBigPages(), ExRemovePoolTag(), and InitializePool(). |
|
|
Definition at line 358 of file ex/pool.c. Referenced by ExpAddTagForBigPages(), ExpFindAndRemoveTagBigPages(), and InitializePool(). |
|
|
Definition at line 357 of file ex/pool.c. Referenced by ExpAddTagForBigPages(), ExpFindAndRemoveTagBigPages(), and InitializePool(). |
|
|
Definition at line 360 of file ex/pool.c. Referenced by ExpInsertPoolTracker(), and ExpRemovePoolTracker(). |
|
|
Definition at line 352 of file ex/pool.c. Referenced by ExAllocatePoolWithTag(), ExFreePoolWithTag(), ExInsertPoolTag(), ExpGetPoolTagInfo(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExQueryPoolBlockSize(), ExRemovePoolTag(), and InitializePool(). |
|
|
Definition at line 354 of file ex/pool.c. Referenced by ExpInsertPoolTracker(), ExpRemovePoolTracker(), and InitializePool(). |
|
|
Definition at line 353 of file ex/pool.c. Referenced by ExpGetPoolTagInfo(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), and InitializePool(). |
|
|
Definition at line 451 of file ex/pool.c. Referenced by CheckPool(), DumpPool(), ExAllocatePool(), ExAllocatePoolWithTag(), ExFreePool(), ExFreePoolWithTag(), ExLockPool(), ExQueryPoolUsage(), ExReturnPoolQuota(), ExUnlockPool(), and InitializePool(). |
|
|
Definition at line 410 of file ex/pool.c. Referenced by PsLocateSystemDll(), RtlpQueryRegistryDirect(), and RtlStringFromGUID(). |
|
|
|
1.3.7