|
ReactOS 0.4.16-dev-1946-g52006dd
|

Go to the source code of this file.
Classes | |
| struct | _POOL_DPC_CONTEXT |
Macros | |
| #define | NDEBUG |
| #define | MODULE_INVOLVED_IN_ARM3 |
| #define | POOL_BIG_TABLE_ENTRY_FREE 0x1 |
| #define | POOL_BIG_TABLE_USE_RATE 4 |
| #define | POOL_ENTRY(x) (PPOOL_HEADER)((ULONG_PTR)(x) - sizeof(POOL_HEADER)) |
| #define | POOL_FREE_BLOCK(x) (PLIST_ENTRY)((ULONG_PTR)(x) + sizeof(POOL_HEADER)) |
| #define | POOL_BLOCK(x, i) (PPOOL_HEADER)((ULONG_PTR)(x) + ((i) * POOL_BLOCK_SIZE)) |
| #define | POOL_NEXT_BLOCK(x) POOL_BLOCK((x), (x)->BlockSize) |
| #define | POOL_PREV_BLOCK(x) POOL_BLOCK((x), -((x)->PreviousSize)) |
Typedefs | |
| typedef struct _POOL_DPC_CONTEXT | POOL_DPC_CONTEXT |
| typedef struct _POOL_DPC_CONTEXT * | PPOOL_DPC_CONTEXT |
| #define POOL_BLOCK | ( | x, | |
| i | |||
| ) | (PPOOL_HEADER)((ULONG_PTR)(x) + ((i) * POOL_BLOCK_SIZE)) |
| #define POOL_ENTRY | ( | x | ) | (PPOOL_HEADER)((ULONG_PTR)(x) - sizeof(POOL_HEADER)) |
| #define POOL_FREE_BLOCK | ( | x | ) | (PLIST_ENTRY)((ULONG_PTR)(x) + sizeof(POOL_HEADER)) |
| #define POOL_NEXT_BLOCK | ( | x | ) | POOL_BLOCK((x), (x)->BlockSize) |
| #define POOL_PREV_BLOCK | ( | x | ) | POOL_BLOCK((x), -((x)->PreviousSize)) |
| typedef struct _POOL_DPC_CONTEXT POOL_DPC_CONTEXT |
| typedef struct _POOL_DPC_CONTEXT * PPOOL_DPC_CONTEXT |
| _IRQL_requires_ | ( | DISPATCH_LEVEL | ) |
Definition at line 1459 of file expool.c.
Definition at line 2465 of file expool.c.
| PVOID NTAPI ExAllocatePoolWithQuotaTag | ( | IN POOL_TYPE | PoolType, |
| IN SIZE_T | NumberOfBytes, | ||
| IN ULONG | Tag | ||
| ) |
Definition at line 2987 of file expool.c.
Definition at line 1904 of file expool.c.
| PVOID NTAPI ExAllocatePoolWithTagPriority | ( | IN POOL_TYPE | PoolType, |
| IN SIZE_T | NumberOfBytes, | ||
| IN ULONG | Tag, | ||
| IN EX_POOL_PRIORITY | Priority | ||
| ) |
Definition at line 2963 of file expool.c.
Referenced by _RxAllocatePoolWithTag(), InitializeMemoryManagement(), and MyAllocatePool().
Definition at line 2494 of file expool.c.
| NTSTATUS NTAPI ExGetPoolTagInfo | ( | IN PSYSTEM_POOLTAG_INFORMATION | SystemInformation, |
| IN ULONG | SystemInformationLength, | ||
| IN OUT PULONG ReturnLength | OPTIONAL | ||
| ) |
Definition at line 1356 of file expool.c.
Referenced by QSI_DEF().
| VOID NTAPI ExInitializePoolDescriptor | ( | IN PPOOL_DESCRIPTOR | PoolDescriptor, |
| IN POOL_TYPE | PoolType, | ||
| IN ULONG | PoolIndex, | ||
| IN ULONG | Threshold, | ||
| IN PVOID | PoolLock | ||
| ) |
Definition at line 969 of file expool.c.
Referenced by InitializePool(), and MiInitializeSessionPool().
| FORCEINLINE KIRQL ExLockPool | ( | IN PPOOL_DESCRIPTOR | Descriptor | ) |
Definition at line 1273 of file expool.c.
Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag().
| BOOLEAN NTAPI ExpAddTagForBigPages | ( | IN PVOID | Va, |
| IN ULONG | Key, | ||
| IN ULONG | NumberOfPages, | ||
| IN POOL_TYPE | PoolType | ||
| ) |
Definition at line 1581 of file expool.c.
Referenced by ExAllocatePoolWithTag().
Definition at line 296 of file expool.c.
Definition at line 376 of file expool.c.
Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag().
| VOID NTAPI ExpCheckPoolHeader | ( | IN PPOOL_HEADER | Entry | ) |
Definition at line 193 of file expool.c.
Referenced by ExpCheckPoolAllocation(), and ExpCheckPoolBlocks().
| FORCEINLINE VOID ExpCheckPoolIrqlLevel | ( | IN POOL_TYPE | PoolType, |
| IN SIZE_T | NumberOfBytes, | ||
| IN PVOID | Entry | ||
| ) |
Definition at line 416 of file expool.c.
Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag().
| VOID NTAPI ExpCheckPoolLinks | ( | IN PLIST_ENTRY | ListHead | ) |
Definition at line 99 of file expool.c.
Referenced by ExAllocatePoolWithTag(), ExFreePoolWithTag(), ExpInsertPoolHeadList(), and ExpInsertPoolTailList().
Definition at line 441 of file expool.c.
Referenced by ExpInsertPoolTracker(), ExpRemovePoolTracker(), and ExpSeedHotTags().
| FORCEINLINE ULONG ExpComputePartialHashForAddress | ( | IN PVOID | BaseAddress | ) |
Definition at line 457 of file expool.c.
Referenced by _IRQL_requires_(), ExpAddTagForBigPages(), and ExpFindAndRemoveTagBigPages().
| PLIST_ENTRY NTAPI ExpDecodePoolLink | ( | IN PLIST_ENTRY | Link | ) |
Definition at line 85 of file expool.c.
Referenced by ExFreePoolWithTag(), ExpCheckPoolLinks(), ExpInsertPoolHeadList(), ExpInsertPoolTailList(), ExpIsPoolListEmpty(), ExpRemovePoolEntryList(), ExpRemovePoolHeadList(), and ExpRemovePoolTailList().
| PLIST_ENTRY NTAPI ExpEncodePoolLink | ( | IN PLIST_ENTRY | Link | ) |
Definition at line 92 of file expool.c.
Referenced by ExpInitializePoolListHead(), ExpInsertPoolHeadList(), ExpInsertPoolTailList(), ExpRemovePoolEntryList(), ExpRemovePoolHeadList(), and ExpRemovePoolTailList().
| ULONG NTAPI ExpFindAndRemoveTagBigPages | ( | IN PVOID | Va, |
| OUT PULONG_PTR | BigPages, | ||
| IN POOL_TYPE | PoolType | ||
| ) |
Definition at line 1682 of file expool.c.
Referenced by ExFreePoolWithTag().
| VOID NTAPI ExpGetPoolTagInfoTarget | ( | IN PKDPC | Dpc, |
| IN PVOID | DeferredContext, | ||
| IN PVOID | SystemArgument1, | ||
| IN PVOID | SystemArgument2 | ||
| ) |
Definition at line 1321 of file expool.c.
Referenced by ExGetPoolTagInfo().
| VOID NTAPI ExpInitializePoolListHead | ( | IN PLIST_ENTRY | ListHead | ) |
Definition at line 114 of file expool.c.
Referenced by ExInitializePoolDescriptor().
| VOID NTAPI ExpInsertPoolHeadList | ( | IN PLIST_ENTRY | ListHead, |
| IN PLIST_ENTRY | Entry | ||
| ) |
Definition at line 178 of file expool.c.
Referenced by ExFreePoolWithTag().
| VOID NTAPI ExpInsertPoolTailList | ( | IN PLIST_ENTRY | ListHead, |
| IN PLIST_ENTRY | Entry | ||
| ) |
Definition at line 163 of file expool.c.
Referenced by ExAllocatePoolWithTag().
Definition at line 851 of file expool.c.
Referenced by _IRQL_requires_(), ExAllocatePoolWithTag(), and InitializePool().
| BOOLEAN NTAPI ExpIsPoolListEmpty | ( | IN PLIST_ENTRY | ListHead | ) |
Definition at line 121 of file expool.c.
Referenced by ExAllocatePoolWithTag().
| VOID NTAPI ExpRemovePoolEntryList | ( | IN PLIST_ENTRY | Entry | ) |
Definition at line 128 of file expool.c.
Referenced by ExFreePoolWithTag().
| PLIST_ENTRY NTAPI ExpRemovePoolHeadList | ( | IN PLIST_ENTRY | ListHead | ) |
Definition at line 139 of file expool.c.
Referenced by ExAllocatePoolWithTag().
| PLIST_ENTRY NTAPI ExpRemovePoolTailList | ( | IN PLIST_ENTRY | ListHead | ) |
Definition at line 760 of file expool.c.
Referenced by _IRQL_requires_(), and ExFreePoolWithTag().
Definition at line 640 of file expool.c.
Referenced by InitializePool().
| VOID NTAPI 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 | ||
| ) |
Definition at line 1768 of file expool.c.
Referenced by QSI_DEF().
Definition at line 1852 of file expool.c.
Referenced by IoFreeIrp().
| FORCEINLINE VOID ExUnlockPool | ( | IN PPOOL_DESCRIPTOR | Descriptor, |
| IN KIRQL | OldIrql | ||
| ) |
Definition at line 1297 of file expool.c.
Referenced by ExAllocatePoolWithTag(), and ExFreePoolWithTag().
Definition at line 1020 of file expool.c.
Referenced by MiBuildPagedPool(), and MiInitMachineDependent().
| ULONG ExpBigTableExpansionFailed |
Definition at line 48 of file expool.c.
Referenced by ExpAddTagForBigPages().
| KSPIN_LOCK ExpLargePoolTableLock |
Definition at line 54 of file expool.c.
Referenced by _IRQL_requires_(), ExpAddTagForBigPages(), ExpCheckPoolAllocation(), and ExpFindAndRemoveTagBigPages().
| ULONG ExpNumberOfPagedPools |
Definition at line 41 of file expool.c.
Referenced by ExQueryPoolUsage().
| ULONG ExPoolFailures |
Definition at line 57 of file expool.c.
Referenced by ExAllocatePoolWithTag().
| PPOOL_DESCRIPTOR ExpPagedPoolDescriptor[16+1] |
Definition at line 43 of file expool.c.
Referenced by ExQueryPoolUsage(), and InitializePool().
| PKGUARDED_MUTEX ExpPagedPoolMutex |
Definition at line 45 of file expool.c.
Referenced by InitializePool().
| ULONG ExpPoolBigEntriesInUse |
Definition at line 55 of file expool.c.
Referenced by _IRQL_requires_(), ExpAddTagForBigPages(), and ExpFindAndRemoveTagBigPages().
| ULONG ExpPoolFlags |
Definition at line 56 of file expool.c.
Referenced by ExAllocatePoolWithQuotaTag(), ExAllocatePoolWithTag(), ExFreePoolWithTag(), ExReturnPoolQuota(), and MiInitializeSpecialPool().
| KSPIN_LOCK ExpTaggedPoolLock |
Definition at line 51 of file expool.c.
Referenced by ExpInsertPoolTracker(), and InitializePool().
| BOOLEAN ExStopBadTags |
Definition at line 53 of file expool.c.
Referenced by ExpInsertPoolTracker().
| ULONGLONG MiLastPoolDumpTime |
Definition at line 58 of file expool.c.
Referenced by ExAllocatePoolWithTag().
| POOL_DESCRIPTOR NonPagedPoolDescriptor |
Definition at line 42 of file expool.c.
Referenced by ExAllocatePoolWithTag(), ExQueryPoolUsage(), and InitializePool().
| PPOOL_TRACKER_BIG_PAGES PoolBigPageTable |
Definition at line 50 of file expool.c.
Referenced by _IRQL_requires_(), ExpAddTagForBigPages(), ExpCheckPoolAllocation(), ExpFindAndRemoveTagBigPages(), and InitializePool().
| SIZE_T PoolBigPageTableHash |
Definition at line 47 of file expool.c.
Referenced by _IRQL_requires_(), ExpAddTagForBigPages(), ExpFindAndRemoveTagBigPages(), and InitializePool().
| SIZE_T PoolBigPageTableSize |
Definition at line 47 of file expool.c.
Referenced by _IRQL_requires_(), ExpAddTagForBigPages(), ExpCheckPoolAllocation(), ExpFindAndRemoveTagBigPages(), and InitializePool().
| ULONG PoolHitTag |
Definition at line 52 of file expool.c.
Referenced by ExpInsertPoolTracker(), and ExpRemovePoolTracker().
| PPOOL_TRACKER_TABLE PoolTrackTable |
Definition at line 49 of file expool.c.
Referenced by ExpGetPoolTagInfoTarget(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExpSeedHotTags(), and InitializePool().
| SIZE_T PoolTrackTableMask |
Definition at line 46 of file expool.c.
Referenced by ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExpSeedHotTags(), and InitializePool().
| SIZE_T PoolTrackTableSize |
Definition at line 46 of file expool.c.
Referenced by ExGetPoolTagInfo(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExpSeedHotTags(), and InitializePool().
| PPOOL_DESCRIPTOR PoolVector[2] |
Definition at line 44 of file expool.c.
Referenced by ExAllocatePoolWithTag(), ExFreePoolWithTag(), and InitializePool().