#include <ntos.h>#include <NtIoLogc.h>#include <FsRtl.h>#include <stdlib.h>#include <string.h>#include <limits.h>Go to the source code of this file.
Classes | |
| struct | _VACB_LEVEL_REFERENCE |
| struct | _VACB |
| struct | _PRIVATE_CACHE_MAP |
| struct | _SHARED_CACHE_MAP |
| struct | _SHARED_CACHE_MAP_LIST_CURSOR |
| struct | _BITMAP_RANGE |
| struct | _MBCB |
| struct | _BCB |
| struct | _OBCB |
| struct | _DEFERRED_WRITE |
| struct | _LAZY_WRITER |
| struct | _WORK_QUEUE_ENTRY |
| struct | _MDL_WRITE |
Defines | |
| #define | CcAcquireMasterLock(OldIrql) ExAcquireSpinLock( &CcMasterSpinLock, OldIrql ) |
| #define | CcReleaseMasterLock(OldIrql) ExReleaseSpinLock( &CcMasterSpinLock, OldIrql ) |
| #define | CcAcquireMasterLockAtDpcLevel() ExAcquireSpinLockAtDpcLevel( &CcMasterSpinLock ) |
| #define | CcReleaseMasterLockFromDpcLevel() ExReleaseSpinLockFromDpcLevel( &CcMasterSpinLock ) |
| #define | CcAcquireVacbLock(OldIrql) ExAcquireSpinLock( &CcVacbSpinLock, OldIrql ) |
| #define | CcReleaseVacbLock(OldIrql) ExReleaseSpinLock( &CcVacbSpinLock, OldIrql ) |
| #define | CcAcquireVacbLockAtDpcLevel() ExAcquireSpinLockAtDpcLevel( &CcVacbSpinLock ) |
| #define | CcReleaseVacbLockFromDpcLevel() ExReleaseSpinLockFromDpcLevel( &CcVacbSpinLock ) |
| #define | FsRtlAllocatePool(a, b) FsRtlAllocatePoolWithTag(a,b,' cC') |
| #define | FsRtlAllocatePoolWithQuota(a, b) FsRtlAllocatePoolWithQuotaTag(a,b,' cC') |
| #define | ExAllocatePool(a, b) ExAllocatePoolWithTag(a,b,' cC') |
| #define | ExAllocatePoolWithQuota(a, b) ExAllocatePoolWithQuotaTag(a,b,' cC') |
| #define | CACHE_NTC_SHARED_CACHE_MAP (0x2FF) |
| #define | CACHE_NTC_PRIVATE_CACHE_MAP (0x2FE) |
| #define | CACHE_NTC_BCB (0x2FD) |
| #define | CACHE_NTC_DEFERRED_WRITE (0x2FC) |
| #define | CACHE_NTC_MBCB (0x2FB) |
| #define | CACHE_NTC_OBCB (0x2FA) |
| #define | CACHE_NTC_MBCB_GRANDE (0x2F9) |
| #define | CACHE_BUG_CHECK_CACHEDAT (0x00010000) |
| #define | CACHE_BUG_CHECK_CACHESUB (0x00020000) |
| #define | CACHE_BUG_CHECK_COPYSUP (0x00030000) |
| #define | CACHE_BUG_CHECK_FSSUP (0x00040000) |
| #define | CACHE_BUG_CHECK_LAZYRITE (0x00050000) |
| #define | CACHE_BUG_CHECK_LOGSUP (0x00060000) |
| #define | CACHE_BUG_CHECK_MDLSUP (0x00070000) |
| #define | CACHE_BUG_CHECK_PINSUP (0x00080000) |
| #define | CACHE_BUG_CHECK_VACBSUP (0x00090000) |
| #define | CcBugCheck(A, B, C) { KeBugCheckEx(CACHE_MANAGER, BugCheckFileId | __LINE__, A, B, C ); } |
| #define | DEFAULT_CREATE_MODULO ((ULONG)(0x00100000)) |
| #define | DEFAULT_EXTEND_MODULO ((ULONG)(0x00100000)) |
| #define | SEQUENTIAL_MAP_LIMIT ((ULONG)(0x00080000)) |
| #define | MAX_READ_AHEAD (8 * 1024 * 1024) |
| #define | MAX_WRITE_BEHIND (MM_MAXIMUM_DISK_IO_SIZE) |
| #define | WRITE_CHARGE_THRESHOLD (64 * PAGE_SIZE) |
| #define | MAX_ZERO_TRANSFER (PAGE_SIZE * 128) |
| #define | MIN_ZERO_TRANSFER (0x10000) |
| #define | MAX_ZEROS_IN_CACHE (0x10000) |
| #define | VACB_LEVEL_SHIFT (7) |
| #define | VACB_LEVEL_BLOCK_SIZE ((1 << VACB_LEVEL_SHIFT) * sizeof(PVOID)) |
| #define | VACB_LAST_INDEX_FOR_LEVEL ((1 << VACB_LEVEL_SHIFT) - 1) |
| #define | VACB_SIZE_OF_FIRST_LEVEL (1 << (VACB_OFFSET_SHIFT + VACB_LEVEL_SHIFT)) |
| #define | VACB_NUMBER_OF_LEVELS (((63 - VACB_OFFSET_SHIFT)/VACB_LEVEL_SHIFT) + 1) |
| #define | MBCB_BITMAP_BLOCK_SIZE (VACB_LEVEL_BLOCK_SIZE) |
| #define | MBCB_BITMAP_RANGE (MBCB_BITMAP_BLOCK_SIZE * 8 * PAGE_SIZE) |
| #define | MBCB_BITMAP_INITIAL_SIZE (2 * sizeof(BITMAP_RANGE)) |
| #define | BEGIN_BCB_LIST_ARRAY (0x200000) |
| #define | SIZE_PER_BCB_LIST (VACB_MAPPING_GRANULARITY * 2) |
| #define | BCB_LIST_SHIFT (VACB_OFFSET_SHIFT + 1) |
| #define | GetBcbListHead(SCM, OFF, FAILSUCC) |
| #define | CcLockVacbLevel(SCM, OFF) |
| #define | CcUnlockVacbLevel(SCM, OFF) |
| #define | NOISE_BITS (0x7) |
| #define | LAZY_WRITER_IDLE_DELAY ((LONG)(10000000)) |
| #define | LAZY_WRITER_COLLISION_DELAY ((LONG)(1000000)) |
| #define | LAZY_WRITER_MAX_AGE_TARGET ((ULONG)(8)) |
| #define | CC_REQUEUE 35422 |
| #define | mm (0x100) |
| #define | FlagOn(F, SF) |
| #define | BooleanFlagOn(F, SF) |
| #define | SetFlag(F, SF) |
| #define | ClearFlag(F, SF) |
| #define | QuadAlign(P) |
| #define | CcAddToLog(LOG, ACTION, REASON) |
| #define | PREALLOCATED_VACBS (4) |
| #define | VACB_SPECIAL_REFERENCE ((PVACB) ~0) |
| #define | VACB_SPECIAL_DEREFERENCE ((PVACB) ~1) |
| #define | VACB_SPECIAL_FIRST_VALID VACB_SPECIAL_DEREFERENCE |
| #define | CcIncrementOpenCount(SCM, REASON) |
| #define | CcDecrementOpenCount(SCM, REASON) |
| #define | DISABLE_READ_AHEAD 0x0001 |
| #define | DISABLE_WRITE_BEHIND 0x0002 |
| #define | PIN_ACCESS 0x0004 |
| #define | TRUNCATE_REQUIRED 0x0010 |
| #define | WRITE_QUEUED 0x0020 |
| #define | ONLY_SEQUENTIAL_ONLY_SEEN 0x0040 |
| #define | ACTIVE_PAGE_IS_DIRTY 0x0080 |
| #define | BEING_CREATED 0x0100 |
| #define | MODIFIED_WRITE_DISABLED 0x0200 |
| #define | LAZY_WRITE_OCCURRED 0x0400 |
| #define | IS_CURSOR 0x0800 |
| #define | RANDOM_ACCESS_SEEN 0x1000 |
| #define | GetActiveVacb(SCM, IRQ, V, P, D) |
| #define | GetActiveVacbAtDpcLevel(SCM, V, P, D) |
| #define | SetActiveVacb(SCM, IRQ, V, P, D) |
| #define | ZERO_FIRST_PAGE 1 |
| #define | ZERO_MIDDLE_PAGES 2 |
| #define | ZERO_LAST_PAGE 4 |
| #define | CcAllocateWorkQueueEntry() (PWORK_QUEUE_ENTRY)ExAllocateFromPPNPagedLookasideList(LookasideTwilightList) |
| #define | CcFreeWorkQueueEntry(_entry_) ExFreeToPPNPagedLookasideList(LookasideTwilightList, (_entry_)) |
| #define | try_return(S) { S; goto try_exit; } |
| #define | DebugTrace(INDENT, LEVEL, X, Y) {NOTHING;} |
| #define | DebugTrace2(INDENT, LEVEL, X, Y, Z) {NOTHING;} |
| #define | DebugDump(STR, LEVEL, PTR) {NOTHING;} |
Typedefs | |
| typedef _VACB_LEVEL_REFERENCE | VACB_LEVEL_REFERENCE |
| typedef _VACB_LEVEL_REFERENCE * | PVACB_LEVEL_REFERENCE |
| typedef _VACB | VACB |
| typedef _VACB * | PVACB |
| typedef _PRIVATE_CACHE_MAP | PRIVATE_CACHE_MAP |
| typedef PRIVATE_CACHE_MAP * | PPRIVATE_CACHE_MAP |
| typedef _SHARED_CACHE_MAP | SHARED_CACHE_MAP |
| typedef SHARED_CACHE_MAP * | PSHARED_CACHE_MAP |
| typedef _SHARED_CACHE_MAP_LIST_CURSOR | SHARED_CACHE_MAP_LIST_CURSOR |
| typedef _SHARED_CACHE_MAP_LIST_CURSOR * | PSHARED_CACHE_MAP_LIST_CURSOR |
| typedef _BITMAP_RANGE | BITMAP_RANGE |
| typedef _BITMAP_RANGE * | PBITMAP_RANGE |
| typedef _MBCB | MBCB |
| typedef MBCB * | PMBCB |
| typedef _BCB | BCB |
| typedef BCB * | PBCB |
| typedef _OBCB | OBCB |
| typedef OBCB * | POBCB |
| typedef _DEFERRED_WRITE | DEFERRED_WRITE |
| typedef _DEFERRED_WRITE * | PDEFERRED_WRITE |
| typedef _LAZY_WRITER | LAZY_WRITER |
| typedef enum _WORKER_FUNCTION | WORKER_FUNCTION |
| typedef _WORK_QUEUE_ENTRY | WORK_QUEUE_ENTRY |
| typedef _WORK_QUEUE_ENTRY * | PWORK_QUEUE_ENTRY |
| typedef _MDL_WRITE | MDL_WRITE |
| typedef _MDL_WRITE * | PMDL_WRITE |
Enumerations | |
| enum | _WORKER_FUNCTION { Noop = 0, ReadAhead, WriteBehind, LazyWriteScan, EventSet } |
| enum | UNMAP_ACTIONS { UNPIN, UNREF, SET_CLEAN } |
Functions | |
| VOID | CcPostDeferredWrites () |
| BOOLEAN | CcPinFileData (IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN BOOLEAN ReadOnly, IN BOOLEAN WriteOnly, IN ULONG Flags, OUT PBCB *Bcb, OUT PVOID *BaseAddress, OUT PLARGE_INTEGER BeyondLastByte) |
| VOID FASTCALL | CcUnpinFileData (IN OUT PBCB Bcb, IN BOOLEAN ReadOnly, IN UNMAP_ACTIONS UnmapAction) |
| VOID FASTCALL | CcDeallocateBcb (IN PBCB Bcb) |
| VOID FASTCALL | CcPerformReadAhead (IN PFILE_OBJECT FileObject) |
| VOID | CcSetDirtyInMask (IN PSHARED_CACHE_MAP SharedCacheMap, IN PLARGE_INTEGER FileOffset, IN ULONG Length) |
| VOID FASTCALL | CcWriteBehind (IN PSHARED_CACHE_MAP SharedCacheMap, IN PIO_STATUS_BLOCK IoStatus) |
| BOOLEAN | CcMapAndRead (IN PSHARED_CACHE_MAP SharedCacheMap, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN ULONG ZeroFlags, IN BOOLEAN Wait, IN PVOID BaseAddress) |
| VOID | CcFreeActiveVacb (IN PSHARED_CACHE_MAP SharedCacheMap, IN PVACB ActiveVacb OPTIONAL, IN ULONG ActivePage, IN ULONG PageIsDirty) |
| VOID | CcMapAndCopy (IN PSHARED_CACHE_MAP SharedCacheMap, IN PVOID UserBuffer, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN ULONG ZeroFlags, IN BOOLEAN WriteThrough) |
| VOID | CcScanDpc (IN PKDPC Dpc, IN PVOID DeferredContext, IN PVOID SystemArgument1, IN PVOID SystemArgument2) |
| VOID | CcScheduleLazyWriteScan () |
| VOID | CcStartLazyWriter (IN PVOID NotUsed) |
| VOID FASTCALL | CcPostWorkQueue (IN PWORK_QUEUE_ENTRY WorkQueueEntry, IN PLIST_ENTRY WorkQueue) |
| VOID | CcWorkerThread (PVOID ExWorkQueueItem) |
| VOID FASTCALL | CcDeleteSharedCacheMap (IN PSHARED_CACHE_MAP SharedCacheMap, IN KIRQL ListIrql, IN ULONG ReleaseFile) |
| LONG | CcCopyReadExceptionFilter (IN PEXCEPTION_POINTERS ExceptionPointer, IN PNTSTATUS ExceptionCode) |
| LONG | CcExceptionFilter (IN NTSTATUS ExceptionCode) |
| VOID | CcInitializeVacbs () |
| PVOID | CcGetVirtualAddressIfMapped (IN PSHARED_CACHE_MAP SharedCacheMap, IN LONGLONG FileOffset, OUT PVACB *Vacb, OUT PULONG ReceivedLength) |
| PVOID | CcGetVirtualAddress (IN PSHARED_CACHE_MAP SharedCacheMap, IN LARGE_INTEGER FileOffset, OUT PVACB *Vacb, OUT PULONG ReceivedLength) |
| VOID FASTCALL | CcFreeVirtualAddress (IN PVACB Vacb) |
| VOID | CcReferenceFileOffset (IN PSHARED_CACHE_MAP SharedCacheMap, IN LARGE_INTEGER FileOffset) |
| VOID | CcDereferenceFileOffset (IN PSHARED_CACHE_MAP SharedCacheMap, IN LARGE_INTEGER FileOffset) |
| VOID | CcWaitOnActiveCount (IN PSHARED_CACHE_MAP SharedCacheMap) |
| VOID FASTCALL | CcCreateVacbArray (IN PSHARED_CACHE_MAP SharedCacheMap, IN LARGE_INTEGER NewSectionSize) |
| VOID | CcExtendVacbArray (IN PSHARED_CACHE_MAP SharedCacheMap, IN LARGE_INTEGER NewSectionSize) |
| BOOLEAN FASTCALL | CcUnmapVacbArray (IN PSHARED_CACHE_MAP SharedCacheMap, IN PLARGE_INTEGER FileOffset OPTIONAL, IN ULONG Length, IN BOOLEAN UnmapBehind) |
| VOID | CcAdjustVacbLevelLockCount (IN PSHARED_CACHE_MAP SharedCacheMap, IN LONGLONG FileOffset, IN LONG Adjustment) |
| PLIST_ENTRY | CcGetBcbListHeadLargeOffset (IN PSHARED_CACHE_MAP SharedCacheMap, IN LONGLONG FileOffset, IN BOOLEAN FailToSuccessor) |
| ULONG | CcPrefillVacbLevelZone (IN ULONG NumberNeeded, OUT PKIRQL OldIrql, IN ULONG NeedBcbListHeads) |
| VOID | CcDrainVacbLevelZone () |
| _inline PVACB * | CcAllocateVacbLevel (IN BOOLEAN AllocatingBcbListHeads) |
| _inline VOID | CcDeallocateVacbLevel (IN PVACB *Entry, IN BOOLEAN DeallocatingBcbListHeads) |
| _inline PVACB_LEVEL_REFERENCE | VacbLevelReference (IN PSHARED_CACHE_MAP SharedCacheMap, IN PVACB *VacbArray, IN ULONG Level) |
| _inline ULONG | IsVacbLevelReferenced (IN PSHARED_CACHE_MAP SharedCacheMap, IN PVACB *VacbArray, IN ULONG Level) |
Variables | |
| PFN_COUNT | MmAvailablePages |
| KSPIN_LOCK | CcMasterSpinLock |
| KSPIN_LOCK | CcBcbSpinLock |
| LIST_ENTRY | CcCleanSharedCacheMapList |
| SHARED_CACHE_MAP_LIST_CURSOR | CcDirtySharedCacheMapList |
| SHARED_CACHE_MAP_LIST_CURSOR | CcLazyWriterCursor |
| NPAGED_LOOKASIDE_LIST | CcTwilightLookasideList |
| KSPIN_LOCK | CcWorkQueueSpinlock |
| ULONG | CcNumberWorkerThreads |
| ULONG | CcNumberActiveWorkerThreads |
| LIST_ENTRY | CcIdleWorkerThreadList |
| LIST_ENTRY | CcExpressWorkQueue |
| LIST_ENTRY | CcRegularWorkQueue |
| LIST_ENTRY | CcPostTickWorkQueue |
| BOOLEAN | CcQueueThrottle |
| ULONG | CcIdleDelayTick |
| LARGE_INTEGER | CcNoDelay |
| LARGE_INTEGER | CcFirstDelay |
| LARGE_INTEGER | CcIdleDelay |
| LARGE_INTEGER | CcCollisionDelay |
| LARGE_INTEGER | CcTargetCleanDelay |
| LAZY_WRITER | LazyWriter |
| KSPIN_LOCK | CcVacbSpinLock |
| ULONG | CcNumberVacbs |
| PVACB | CcVacbs |
| PVACB | CcBeyondVacbs |
| LIST_ENTRY | CcVacbLru |
| KSPIN_LOCK | CcDeferredWriteSpinLock |
| LIST_ENTRY | CcDeferredWrites |
| ULONG | CcDirtyPageThreshold |
| ULONG | CcDirtyPageTarget |
| ULONG | CcDirtyPagesLastScan |
| ULONG | CcPagesYetToWrite |
| ULONG | CcPagesWrittenLastTime |
| ULONG | CcAvailablePagesThreshold |
| ULONG | CcTotalDirtyPages |
| ULONG | CcTune |
| LONG | CcAggressiveZeroCount |
| LONG | CcAggressiveZeroThreshold |
| ULONG | CcLazyWriteHotSpots |
| MM_SYSTEMSIZE | CcCapturedSystemSize |
| ULONG | CcMaxVacbLevelsSeen |
| ULONG | CcVacbLevelEntries |
| PVACB * | CcVacbLevelFreeList |
| ULONG | CcVacbLevelWithBcbsEntries |
| PVACB * | CcVacbLevelWithBcbsFreeList |
|
|
Definition at line 1065 of file cc.h. Referenced by CcCopyWrite(), CcFastCopyWrite(), CcFreeActiveVacb(), and CcMapAndCopy(). |
|
|
|
|
|
Definition at line 385 of file cc.h. Referenced by CcCreateVacbArray(), and CcExtendVacbArray(). |
|
|
Definition at line 1071 of file cc.h. Referenced by CcInitializeCacheMap(). |
|
|
Value:
Definition at line 501 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcCanIWrite(), CcCopyWrite(), CcDeferWrite(), CcFastCopyWrite(), CcPinMappedData(), CcReleaseByteRangeFromWrite(), FsRtlPrivateCheckWaitingLocks(), FsRtlProcessFileLock(), UdfCommonCreate(), UdfCommonRead(), UdfEnumerateIndex(), UdfIllegalFcbAccess(), UdfInitializeEnumeration(), UdfNotifyChangeDirectory(), and UdfQueryAlternateNameInfo(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 156 of file cc.h. Referenced by CcCanIWrite(), and CcDeferWrite(). |
|
|
Definition at line 157 of file cc.h. Referenced by CcSetDirtyInMask(). |
|
|
Definition at line 159 of file cc.h. Referenced by CcSetDirtyInMask(). |
|
|
Definition at line 158 of file cc.h. Referenced by CcAllocateObcb(), CcRemapBcb(), CcSetBcbOwnerPointer(), CcSetDirtyPinnedData(), CcUnpinData(), and CcUnpinDataForThread(). |
|
|
Definition at line 154 of file cc.h. Referenced by CcInitializeCacheMap(). |
|
|
Definition at line 153 of file cc.h. Referenced by CcInitializeCacheMap(), and CcUnpinFileData(). |
|
|
Definition at line 442 of file cc.h. Referenced by CcFlushCache(), CcWorkerThread(), and CcWriteBehind(). |
|
|
|
Definition at line 70 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcDeleteMbcb(), CcGetFlushedValidData(), CcGetVacbMiss(), CcSetDirtyInMask(), CcSetDirtyPinnedData(), CcUnpinFileData(), and CcWriteBehind(). |
|
|
Definition at line 76 of file cc.h. Referenced by CcDereferenceFileOffset(), CcDrainVacbLevelZone(), CcExtendVacbArray(), CcFreeVirtualAddress(), CcGetVacbMiss(), CcGetVirtualAddress(), CcGetVirtualAddressIfMapped(), CcMapAndCopy(), CcPrefillVacbLevelZone(), CcRemapBcb(), CcUnmapVacbArray(), and CcWaitOnActiveCount(). |
|
|
Definition at line 82 of file cc.h. Referenced by CcAllocateInitializeBcb(), CcDeleteMbcb(), CcExtendVacbArray(), CcSetDirtyInMask(), and CcUnpinFileData(). |
|
|
|
|
|
Definition at line 1847 of file cc.h. Referenced by CcLazyWriteScan(), CcScanDpc(), CcScheduleReadAhead(), and CcWaitForCurrentLazyWriterActivity(). |
|
|
Definition at line 185 of file cc.h. Referenced by CcAllocateInitializeBcb(), CcInitializeCacheManager(), CcLazyWriteScan(), and CcUnpinFileData(). |
|
|
Value:
Definition at line 1010 of file cc.h. Referenced by CcFlushCache(), CcGetDirtyPages(), CcGetFlushedValidData(), CcGetVacbMiss(), CcInitializeCacheMap(), CcMdlWriteComplete2(), CcPerformReadAhead(), CcPurgeCacheSection(), CcSetFileSizes(), CcUninitializeCacheMap(), CcWriteBehind(), and CcZeroEndOfLastPage(). |
|
|
Definition at line 1850 of file cc.h. Referenced by CcWorkerThread(). |
|
|
Value:
Definition at line 1003 of file cc.h. Referenced by CcFlushCache(), CcGetDirtyPages(), CcGetFlushedValidData(), CcGetVacbMiss(), CcInitializeCacheMap(), CcPrepareMdlWrite(), CcPurgeCacheSection(), CcScheduleReadAhead(), CcSetFileSizes(), CcWriteBehind(), and CcZeroEndOfLastPage(). |
|
|
Value:
Definition at line 403 of file cc.h. Referenced by CcAllocateInitializeBcb(). |
|
|
|
Definition at line 73 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcDeleteMbcb(), CcGetVacbMiss(), CcSetDirtyInMask(), CcSetDirtyPinnedData(), CcUnpinFileData(), and CcWriteBehind(). |
|
|
Definition at line 79 of file cc.h. Referenced by CcDereferenceFileOffset(), CcDrainVacbLevelZone(), CcExtendVacbArray(), CcFreeVirtualAddress(), CcGetVacbMiss(), CcGetVirtualAddress(), CcGetVirtualAddressIfMapped(), CcMapAndCopy(), CcPrefillVacbLevelZone(), CcReferenceFileOffset(), CcRemapBcb(), CcSetDirtyInMask(), CcUnmapVacbArray(), and CcWaitOnActiveCount(). |
|
|
Definition at line 85 of file cc.h. Referenced by CcAllocateInitializeBcb(), CcDeleteMbcb(), CcExtendVacbArray(), CcSetDirtyInMask(), and CcUnpinFileData(). |
|
|
Value:
Definition at line 409 of file cc.h. Referenced by CcDeleteSharedCacheMap(), and CcUnpinFileData(). |
|
|
|
|
|
|
|
Definition at line 2292 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcFindBcb(), CcFlushCache(), CcGetVacbMiss(), CcInitializeCacheMap(), CcMapAndCopy(), CcMdlRead(), CcPinFileData(), CcPrepareMdlWrite(), CcPurgeCacheSection(), CcReleaseByteRangeFromWrite(), CcScheduleReadAhead(), CcSetFileSizes(), CcSetValidData(), CcUninitializeCacheMap(), CcUnmapAndPurge(), and CcUnpinRepinnedBcb(). |
|
|
Definition at line 192 of file cc.h. Referenced by CcInitializeCacheMap(). |
|
|
Definition at line 193 of file cc.h. Referenced by CcSetFileSizes(). |
|
|
Definition at line 1025 of file cc.h. Referenced by CcScheduleReadAhead(), and CcSetAdditionalCacheAttributes(). |
|
|
Definition at line 1031 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcAllocateInitializeBcb(), CcReleaseByteRangeFromWrite(), CcSetAdditionalCacheAttributes(), and CcSetDirtyPinnedData(). |
|
|
|
|
|
Definition at line 120 of file cc.h. Referenced by FsRtlInitSystem(), and LfsAllocateLfcb(). |
|
|
|
|
|
Value:
Definition at line 1577 of file cc.h. Referenced by CcCopyRead(), CcCopyWrite(), CcFastCopyRead(), CcFastCopyWrite(), CcMdlRead(), CcPinFileData(), and CcPrepareMdlWrite(). |
|
|
Value:
Definition at line 1588 of file cc.h. Referenced by CcDeleteSharedCacheMap(), CcFlushCache(), CcGetVacbMiss(), CcPurgeCacheSection(), CcSetFileSizes(), CcUninitializeCacheMap(), CcWriteBehind(), and CcZeroEndOfLastPage(). |
|
|
Value:
Definition at line 389 of file cc.h. Referenced by CcFindBcb(). |
|
|
Definition at line 1090 of file cc.h. Referenced by CcGetDirtyPages(), CcInitializeCacheManager(), CcIsThereDirtyData(), and CcLazyWriteScan(). |
|
|
Definition at line 1083 of file cc.h. Referenced by CcFlushCache(), and CcWriteBehind(). |
|
|
|
|
|
Definition at line 429 of file cc.h. Referenced by CcInitializeCacheManager(). |
|
|
Definition at line 436 of file cc.h. Referenced by CcLazyWriteScan(). |
|
|
Definition at line 217 of file cc.h. Referenced by CcPerformReadAhead(). |
|
|
Definition at line 223 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), and CcLazyWriteScan(). |
|
|
Definition at line 288 of file cc.h. Referenced by CcZeroData(). |
|
|
Definition at line 290 of file cc.h. Referenced by CcZeroData(). |
|
|
Definition at line 351 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcDeleteMbcb(), and CcFindBitmapRangeToDirty(). |
|
|
Definition at line 364 of file cc.h. Referenced by CcSetDirtyInMask(). |
|
|
Definition at line 358 of file cc.h. Referenced by CcSetDirtyInMask(). |
|
|
Definition at line 289 of file cc.h. Referenced by CcZeroData(). |
|
|
Definition at line 462 of file cc.h. Referenced by CcFlushCache(), CcGetVacbMiss(), CcInitializeCacheMap(), CcMdlRead(), CcMdlReadComplete2(), CcMdlWriteComplete2(), CcPrepareMdlWrite(), CcPurgeCacheSection(), CcSetFileSizes(), CcUninitializeCacheMap(), CcUnmapAndPurge(), and CcUnmapVacb(). |
|
|
|
Definition at line 423 of file cc.h. Referenced by CcScheduleReadAhead(). |
|
|
Definition at line 1059 of file cc.h. Referenced by CcInitializeCacheMap(), and CcUnmapVacb(). |
|
|
Definition at line 1038 of file cc.h. Referenced by CcFlushCache(), CcInitializeCacheMap(), CcPinFileData(), CcSetFileSizes(), CcUninitializeCacheMap(), and CcWriteBehind(). |
|
|
Definition at line 571 of file cc.h. Referenced by CcCreateVacbArray(). |
|
|
Value:
Definition at line 513 of file cc.h. Referenced by CcSetDirtyInMask(), LfsIsRestartAreaValid(), LfsIsRestartPageHeaderValid(), LfsUpdateLfcbFromNoRestart(), LfsUpdateLfcbFromRestart(), LfsWriteLogRecordIntoLogPage(), and UdfQueryDirectory(). |
|
|
Definition at line 1098 of file cc.h. Referenced by CcGetVacbMiss(), and CcInitializeCacheMap(). |
|
|
Definition at line 200 of file cc.h. Referenced by CcGetVacbMiss(). |
|
|
Definition at line 1619 of file cc.h. Referenced by CcCopyRead(), CcCopyWrite(), CcFastCopyRead(), CcFastCopyWrite(), and CcMapAndCopy(). |
|
|
|
Definition at line 386 of file cc.h. Referenced by CcCreateVacbArray(), CcExtendVacbArray(), and CcFindBcb(). |
|
|
Definition at line 1045 of file cc.h. Referenced by CcInitializeCacheMap(), CcUninitializeCacheMap(), and CcUnmapAndPurge(). |
|
|
|
Definition at line 321 of file cc.h. Referenced by CcCalculateVacbLevelLockCount(), CcGetBcbListHeadLargeOffset(), and CcSetVacbLargeOffset(). |
|
|
Definition at line 315 of file cc.h. Referenced by CcAllocateVacbLevel(), CcCreateVacbArray(), CcExtendVacbArray(), CcGetBcbListHeadLargeOffset(), CcPrefillVacbLevelZone(), CcSetVacbLargeOffset(), and VacbLevelReference(). |
|
|
Definition at line 307 of file cc.h. Referenced by CcAdjustVacbLevelLockCount(), CcCreateVacbArray(), CcExtendVacbArray(), CcGetBcbListHeadLargeOffset(), CcGetVacbLargeOffset(), and CcSetVacbLargeOffset(). |
|
|
Definition at line 334 of file cc.h. Referenced by CcCreateVacbArray(), CcExtendVacbArray(), CcGetBcbListHeadLargeOffset(), and CcSetVacbLargeOffset(). |
|
|
Definition at line 327 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcAdjustVacbLevelLockCount(), CcAllocateInitializeBcb(), CcDeleteSharedCacheMap(), CcDereferenceFileOffset(), CcExtendVacbArray(), CcGetBcbListHeadLargeOffset(), CcGetVacbLargeOffset(), CcGetVacbMiss(), CcReferenceFileOffset(), CcSetVacbLargeOffset(), and SetVacb(). |
|
|
Definition at line 629 of file cc.h. Referenced by CcAdjustVacbLevelLockCount(), CcDereferenceFileOffset(), and CcSetVacbLargeOffset(). |
|
|
Definition at line 631 of file cc.h. Referenced by CcSetVacbLargeOffset(), and SetVacb(). |
|
|
Definition at line 628 of file cc.h. Referenced by CcReferenceFileOffset(). |
|
|
Definition at line 280 of file cc.h. Referenced by CcCanIWrite(), and CcLazyWriteScan(). |
|
|
Definition at line 1051 of file cc.h. Referenced by CcDeleteSharedCacheMap(), CcFlushCache(), CcGetFlushedValidData(), CcGetVacbMiss(), CcInitializeCacheMap(), CcIsThereDirtyData(), CcLazyWriteScan(), CcMdlWriteComplete2(), CcPerformReadAhead(), CcPurgeCacheSection(), CcSetFileSizes(), CcUninitializeCacheMap(), CcWriteBehind(), and CcZeroEndOfLastPage(). |
|
|
Definition at line 1798 of file cc.h. Referenced by CcCopyWrite(), CcFastCopyWrite(), CcMapAndCopy(), CcMapAndRead(), CcPinFileData(), and CcPrepareMdlWrite(). |
|
|
Definition at line 1800 of file cc.h. Referenced by CcCopyWrite(), CcFastCopyWrite(), CcMapAndCopy(), CcMapAndRead(), CcPinFileData(), and CcPrepareMdlWrite(). |
|
|
Definition at line 1799 of file cc.h. Referenced by CcCopyWrite(), CcFastCopyWrite(), CcMapAndCopy(), CcMapAndRead(), CcPinFileData(), and CcPrepareMdlWrite(). |
|
|
Referenced by CcExtendVacbArray(), and CcFindBcb(). |
|
|
Referenced by CcFindBitmapRangeToDirty(). |
|
|
Referenced by CcDeferWrite(). |
|
|
|
|
|
|
|
|
|
|
|
Referenced by CcAllocateObcb(). |
|
|
Definition at line 1340 of file cc.h. Referenced by UdfLookupPsnOfExtent(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 1374 of file cc.h. Referenced by CcSetDirtyPinnedData(). |
|
|
Definition at line 717 of file cc.h. Referenced by CcSetReadAheadGranularity(). |
|
|
Referenced by CcInitializeCacheMap(). |
|
|
|
|
|
|
|
|
Referenced by CcAllocateVacbLevel(), CcDeallocateVacbLevel(), and CcUnpinFileData(). |
|
|
Referenced by IsVacbLevelReferenced(), ReferenceVacbLevel(), and VacbLevelReference(). |
|
|
Referenced by CcScheduleReadAhead(). |
|
|
Referenced by CcInitializeCacheMap(). |
|
|
|
|
|
Referenced by CcInitializeVacbs(). |
|
|
Referenced by CcCreateVacbArray(), and CcPrefillVacbLevelZone(). |
|
|
Referenced by CcInitializeCacheManager(). |
|
|
|
|
|
Definition at line 1482 of file cc.h.
|
|
|
Definition at line 1758 of file cc.h.
|
|
||||||||||||||||
|
Definition at line 2335 of file vacbsup.c. References ASSERT, CcSetVacbLargeOffset(), FALSE, IsVacbLevelReferenced(), ReferenceVacbLevel(), TRUE, VACB_LEVEL_SHIFT, VACB_OFFSET_SHIFT, VACB_SIZE_OF_FIRST_LEVEL, and VACB_SPECIAL_DEREFERENCE.
|
|
|
Definition at line 2048 of file cc.h. References ASSERT, CcVacbLevelEntries, CcVacbLevelFreeList, CcVacbLevelWithBcbsEntries, CcVacbLevelWithBcbsFreeList, NULL, PVACB, and VACB_LEVEL_BLOCK_SIZE. Referenced by CcExtendVacbArray(), CcSetDirtyInMask(), and CcSetVacbLargeOffset().
|
|
||||||||||||
|
Definition at line 1747 of file copysup.c. References ASSERT, EXCEPTION_EXECUTE_HANDLER, NT_SUCCESS, and NTSTATUS(). Referenced by CcCopyRead(), CcCopyWrite(), CcFastCopyRead(), CcFastCopyWrite(), and CcMapAndCopy().
|
|
||||||||||||
|
Definition at line 1208 of file vacbsup.c. References ASSERT, BEGIN_BCB_LIST_ARRAY, CcMaxVacbLevelsSeen, ExAllocatePoolWithTag, ExRaiseStatus(), FALSE, FlagOn, MODIFIED_WRITE_DISABLED, NonPagedPool, NULL, PAGE_SIZE, PREALLOCATED_VACBS, SIZE_PER_BCB_LIST, SizeOfVacbArray, TRUE, VACB_LEVEL_BLOCK_SIZE, VACB_LEVEL_REFERENCE, VACB_LEVEL_SHIFT, VACB_MAPPING_GRANULARITY, VACB_NUMBER_OF_LEVELS, and VACB_OFFSET_SHIFT. Referenced by CcInitializeCacheMap().
|
|
|
Definition at line 5694 of file cachesub.c. References _LAZY_WRITER::BcbZone, CACHE_NTC_BCB, CcBcbSpinLock, ExDeleteResource, ExFreePool(), ExFreeToZone, and LazyWriter. Referenced by CcDeleteMbcb(), CcDeleteSharedCacheMap(), and CcUnpinFileData().
|
|
||||||||||||
|
Definition at line 2070 of file cc.h. References CcVacbLevelEntries, CcVacbLevelFreeList, CcVacbLevelWithBcbsEntries, CcVacbLevelWithBcbsFreeList, PVACB, and VOID(). Referenced by CcDeleteMbcb(), CcExtendVacbArray(), CcSetDirtyInMask(), and CcSetVacbLargeOffset().
|
|
||||||||||||||||
|
Definition at line 1517 of file fssup.c. References ASSERT, _BCB::BaseAddress, _BCB::BcbLinks, _BCB::ByteLength, CACHE_NTC_BCB, CcAcquireMasterLock, CcBcbSpinLock, CcDeallocateBcb(), CcDeleteMbcb(), CcFreeActiveVacb(), CcFreeVirtualAddress(), CcReleaseMasterLock, CcTotalDirtyPages, CcUnlockVacbLevel, CcUnmapAndPurge(), CcWaitOnActiveCount(), DebugTrace, _BCB::Dirty, _CACHE_UNINITIALIZE_EVENT::Event, ExFreePool(), FALSE, _BCB::FileOffset, FsRtlReleaseFile(), GetActiveVacbAtDpcLevel, IsVacbLevelReferenced(), KeSetEvent(), me, _CACHE_UNINITIALIZE_EVENT::Next, _BCB::NodeTypeCode, NULL, ObDereferenceObject, PAGE_SHIFT, _BCB::PinCount, _FILE_OBJECT::SectionObjectPointer, SetFlag, _SECTION_OBJECT_POINTERS::SharedCacheMap, _BCB::Vacb, VACB_SIZE_OF_FIRST_LEVEL, and WRITE_QUEUED. Referenced by CcInitializeCacheMap(), CcUninitializeCacheMap(), and CcWriteBehind().
|
|
||||||||||||
|
Definition at line 1007 of file vacbsup.c. References ASSERT, CcAcquireVacbLock, CcReleaseVacbLock, DISPATCH_LEVEL, SetVacb(), VACB_SIZE_OF_FIRST_LEVEL, and VACB_SPECIAL_DEREFERENCE. Referenced by CcPinFileData().
|
|
|
Definition at line 2044 of file vacbsup.c. References CcAcquireVacbLock, CcMaxVacbLevelsSeen, CcReleaseVacbLock, CcVacbLevelEntries, CcVacbLevelFreeList, CcVacbLevelWithBcbsEntries, CcVacbLevelWithBcbsFreeList, ExFreePool(), and NULL. Referenced by CcDeleteMbcb(), CcGetVacbMiss(), and CcUnmapVacbArray().
|
|
|
Definition at line 619 of file lazyrite.c. References DebugTrace, EXCEPTION_CONTINUE_SEARCH, EXCEPTION_EXECUTE_HANDLER, and FsRtlIsNtstatusExpected(). Referenced by CcAcquireByteRangeForWrite(), CcFlushCache(), CcLazyWriteScan(), and CcWorkerThread().
|
|
||||||||||||
|
Definition at line 1377 of file vacbsup.c. References ASSERT, BCB, BEGIN_BCB_LIST_ARRAY, CcAcquireVacbLock, CcAcquireVacbLockAtDpcLevel, CcAllocateVacbLevel(), CcCalculateVacbLevelLockCount(), CcDeallocateVacbLevel(), CcMaxVacbLevelsSeen, CcPrefillVacbLevelZone(), CcReleaseVacbLock, CcReleaseVacbLockFromDpcLevel, CcVacbLevelEntries, ExFreePool(), ExRaiseStatus(), FALSE, FlagOn, FsRtlAllocatePoolWithTag, IsVacbLevelReferenced(), MODIFIED_WRITE_DISABLED, NonPagedPool, NULL, Offset, PAGE_SIZE, ReferenceVacbLevel(), SIZE_PER_BCB_LIST, SizeOfVacbArray, TRUE, VACB_LEVEL_BLOCK_SIZE, VACB_LEVEL_SHIFT, VACB_NUMBER_OF_LEVELS, VACB_OFFSET_SHIFT, and VACB_SIZE_OF_FIRST_LEVEL. Referenced by CcInitializeCacheMap(), and CcSetFileSizes().
|
|
||||||||||||||||||||
|
Definition at line 5885 of file cachesub.c. References ACTIVE_PAGE_IS_DIRTY, CcAcquireMasterLock, CcFreeVirtualAddress(), CcReleaseMasterLock, CcSetDirtyInMask(), CcTotalDirtyPages, ClearFlag, FlagOn, MmUnlockCachedPage(), NULL, PAGE_SHIFT, PAGE_SIZE, and VACB_MAPPING_GRANULARITY. Referenced by CcCopyRead(), CcCopyWrite(), CcDeleteSharedCacheMap(), CcFastCopyRead(), CcFastCopyWrite(), CcFlushCache(), CcGetVacbMiss(), CcMapAndCopy(), CcMdlRead(), CcPinFileData(), CcPrepareMdlWrite(), CcPurgeCacheSection(), CcSetFileSizes(), CcUninitializeCacheMap(), CcWriteBehind(), and CcZeroEndOfLastPage().
|
|
|
Definition at line 862 of file vacbsup.c. References CcAcquireVacbLock, CcMoveVacbToReuseHead, CcMoveVacbToReuseTail, CcReleaseVacbLock, CheckedDec, FALSE, KeSetEvent(), NULL, _SHARED_CACHE_MAP::VacbActiveCount, and _SHARED_CACHE_MAP::WaitOnActiveCount. Referenced by CcCopyRead(), CcDeleteSharedCacheMap(), CcFastCopyRead(), CcFlushCache(), CcFreeActiveVacb(), CcMapAndCopy(), CcMdlRead(), CcPerformReadAhead(), CcPinFileData(), CcPinMappedData(), CcPrepareMdlWrite(), CcPurgeAndClearCacheSection(), and CcUnpinFileData().
|
|
||||||||||||||||
|
Definition at line 2107 of file vacbsup.c. References ASSERT, Index, NULL, TRUE, VACB_LAST_INDEX_FOR_LEVEL, VACB_LEVEL_BLOCK_SIZE, VACB_LEVEL_SHIFT, VACB_NUMBER_OF_LEVELS, VACB_OFFSET_SHIFT, and VACB_SIZE_OF_FIRST_LEVEL. Referenced by CcSetVacbLargeOffset().
|
|
||||||||||||||||||||
|
|
|
||||||||||||||||||||
|
Definition at line 230 of file vacbsup.c. References ASSERT, CcAcquireVacbLock, CcMoveVacbToReuseTail, CcReleaseVacbLock, DISPATCH_LEVEL, GetVacb, NULL, and VACB_MAPPING_GRANULARITY. Referenced by CcFlushCache().
|
|
|
Definition at line 188 of file vacbsup.c. References CcBeyondVacbs, CcNumberVacbs, CcVacbLru, CcVacbs, CcVacbSpinLock, FsRtlAllocatePoolWithTag, KeInitializeSpinLock(), _VACB::LruList, MmSizeOfSystemCacheInPages, NonPagedPool, PAGE_SHIFT, VACB, and VACB_OFFSET_SHIFT. Referenced by CcInitializeCacheManager().
|
|
||||||||||||||||||||||||||||
|
Definition at line 6024 of file cachesub.c. References ACTIVE_PAGE_IS_DIRTY, ASSERT, _VACB::BaseAddress, CcAcquireVacbLock, CcCopyReadExceptionFilter(), CcFreeActiveVacb(), CcFreeVirtualAddress(), CcGetVirtualAddress(), CcMaxDirtyWrite, CcReleaseVacbLock, CcSetDirtyInMask(), DebugTrace, DebugTrace2, ExRaiseStatus(), FlagOn, FsRtlNormalizeNtstatus(), me, MmCopyToCachedPage(), MmFlushSection(), MmResetPageFaultReadAhead, MmSavePageFaultReadAhead, MmSetAddressRangeModified(), MmSetPageFaultReadAhead, NT_SUCCESS, NTSTATUS(), NULL, _VACB::Overlay, PAGE_SHIFT, PAGE_SIZE, PsGetCurrentThread, SetActiveVacb, Status, TRUE, try_return, ZERO_FIRST_PAGE, ZERO_LAST_PAGE, and ZERO_MIDDLE_PAGES. Referenced by CcCopyWrite(), and CcFastCopyWrite().
|
|
||||||||||||||||||||||||||||
|
Definition at line 5749 of file cachesub.c. References COMPUTE_PAGES_SPANNED, FALSE, FlagOn, MmCheckCachedPageState(), MmResetPageFaultReadAhead, MmSavePageFaultReadAhead, MmSetPageFaultReadAhead, PAGE_SIZE, PsGetCurrentThread, TRUE, try_return, ZERO_FIRST_PAGE, ZERO_LAST_PAGE, and ZERO_MIDDLE_PAGES. Referenced by CcPinFileData(), and CcPrepareMdlWrite().
|
|
|
Definition at line 1633 of file cachesub.c. References _CACHE_MANAGER_CALLBACKS::AcquireForReadAhead, _SHARED_CACHE_MAP::Callbacks, CcAcquireMasterLock, CcDecrementOpenCount, CcDirtySharedCacheMapList, CcFreeVirtualAddress(), CcGetVirtualAddress(), CcMissCounter, CcReadAheadIos, CcReleaseMasterLock, CcScheduleLazyWriteScan(), CcThrowAway, COMPUTE_PAGES_SPANNED, DebugTrace, _SHARED_CACHE_MAP::DirtyPages, FALSE, _SHARED_CACHE_MAP::FileSize, FlagOn, _SHARED_CACHE_MAP::Flags, FO_SEQUENTIAL_ONLY, _SHARED_CACHE_MAP::LazyWriteContext, LazyWriter, MAX_READ_AHEAD, me, MmCheckCachedPageState(), MmResetPageFaultReadAhead, MmSavePageFaultReadAhead, MmSetPageFaultReadAhead, NULL, ObDereferenceObject, Offset, _SHARED_CACHE_MAP::OpenCount, _LAZY_WRITER::OtherWork, PAGE_SIZE, PsGetCurrentThread, _PRIVATE_CACHE_MAP::ReadAheadActive, _PRIVATE_CACHE_MAP::ReadAheadEnabled, _PRIVATE_CACHE_MAP::ReadAheadLength, _PRIVATE_CACHE_MAP::ReadAheadOffset, _PRIVATE_CACHE_MAP::ReadAheadSpinLock, _CACHE_MANAGER_CALLBACKS::ReleaseFromReadAhead, _LAZY_WRITER::ScanActive, _SHARED_CACHE_MAP_LIST_CURSOR::SharedCacheMapLinks, _SHARED_CACHE_MAP::SharedCacheMapLinks, TRUE, try_return, and WRITE_QUEUED. Referenced by CcWorkerThread().
|
|
||||||||||||||||||||||||||||||||||||||||
|
Definition at line 116 of file cachesub.c. References ASSERT, _BCB::BaseAddress, _SHARED_CACHE_MAP::BcbSpinLock, _BCB::BeyondLastByte, _BCB::ByteLength, CcAllocateInitializeBcb(), CcDereferenceFileOffset(), CcFindBcb(), CcFreeActiveVacb(), CcFreeVirtualAddress(), CcGetVirtualAddress(), CcMapAndRead(), CcReferenceFileOffset(), CcUnpinFileData(), DebugTrace, DebugTrace2, ExAcquireResourceExclusive, ExAcquireSharedStarveExclusive(), ExRaiseStatus(), FALSE, _BCB::FileOffset, FlagOn, _SHARED_CACHE_MAP::Flags, GetActiveVacb, me, MODIFIED_WRITE_DISABLED, _SHARED_CACHE_MAP::NeedToZero, NULL, PAGE_SIZE, PIN_ACCESS, PIN_EXCLUSIVE, PIN_IF_BCB, PIN_NO_READ, PIN_WAIT, _BCB::PinCount, _BCB::Resource, ROUND_TO_PAGES, _SHARED_CACHE_MAP::SectionSize, TRUE, try_return, UNPIN, _BCB::Vacb, VACB_MAPPING_GRANULARITY, _SHARED_CACHE_MAP::ValidDataGoal, VOID(), ZERO_FIRST_PAGE, ZERO_LAST_PAGE, and ZERO_MIDDLE_PAGES. Referenced by CcCopyRead(), CcCopyWrite(), CcMapData(), CcPinMappedData(), CcPinRead(), CcPreparePinWrite(), and CcZeroData().
|
|
|
Definition at line 2099 of file copysup.c. References _DEFERRED_WRITE::BytesToWrite, CcCanIWrite(), CcDeferredWrites, CcDeferredWriteSpinLock, _DEFERRED_WRITE::Context1, _DEFERRED_WRITE::Context2, _DEFERRED_WRITE::DeferredWriteLinks, _DEFERRED_WRITE::Event, ExFreePool(), FALSE, _DEFERRED_WRITE::FileObject, KeSetEvent(), _DEFERRED_WRITE::LimitModifiedPages, NULL, and _DEFERRED_WRITE::PostRoutine. Referenced by CcCanIWrite(), CcDeferWrite(), CcFlushCache(), CcLazyWriteScan(), CcUnpinRepinnedBcb(), and CcWriteBehind().
|
|
||||||||||||
|
Definition at line 662 of file lazyrite.c. References ASSERT, CcIdleWorkerThreadList, CcNumberActiveWorkerThreads, CcQueueThrottle, CcWorkQueueSpinlock, CriticalWorkQueue, DebugTrace, ExQueueWorkItem(), List, me, and NULL. Referenced by CcLazyWriteScan(), CcScanDpc(), and CcScheduleReadAhead().
|
|
||||||||||||||||
|
Definition at line 1931 of file vacbsup.c. References CcAcquireVacbLock, CcReleaseVacbLock, CcVacbLevelEntries, CcVacbLevelFreeList, CcVacbLevelWithBcbsEntries, CcVacbLevelWithBcbsFreeList, ExAllocatePoolWithTag, FALSE, NonPagedPool, NULL, TRUE, VACB_LEVEL_BLOCK_SIZE, and VACB_LEVEL_REFERENCE. Referenced by CcExtendVacbArray(), CcGetVacbMiss(), CcReferenceFileOffset(), and CcSetDirtyInMask().
|
|
||||||||||||
|
Definition at line 947 of file vacbsup.c. References ASSERT, CcMaxVacbLevelsSeen, CcPrefillVacbLevelZone(), CcReleaseVacbLock, DISPATCH_LEVEL, ExRaiseStatus(), FlagOn, MODIFIED_WRITE_DISABLED, SetVacb(), VACB_SIZE_OF_FIRST_LEVEL, and VACB_SPECIAL_REFERENCE. Referenced by CcPinFileData().
|
|
||||||||||||||||||||
|
Definition at line 99 of file lazyrite.c. References CcAllocateWorkQueueEntry, CcPostWorkQueue(), CcRegularWorkQueue, FALSE, _WORK_QUEUE_ENTRY::Function, LazyWriter, LazyWriteScan, NULL, and _LAZY_WRITER::ScanActive. Referenced by CcInitializeCacheManager().
|
|
|
Definition at line 49 of file lazyrite.c. References CcFirstDelay, CcIdleDelay, KeSetTimer(), LazyWriter, _LAZY_WRITER::ScanActive, _LAZY_WRITER::ScanDpc, _LAZY_WRITER::ScanTimer, and TRUE. Referenced by CcDeferWrite(), CcFlushCache(), CcGetFlushedValidData(), CcGetVacbMiss(), CcInitializeCacheMap(), CcLazyWriteScan(), CcMdlWriteComplete2(), CcPerformReadAhead(), CcPurgeCacheSection(), CcSetDirtyInMask(), CcSetDirtyPinnedData(), CcSetFileSizes(), CcUninitializeCacheMap(), CcWaitForCurrentLazyWriterActivity(), and CcZeroEndOfLastPage().
|
|
||||||||||||||||
|
Definition at line 2242 of file cachesub.c. References ASSERT, _BITMAP_RANGE::BasePage, _BITMAP_RANGE::Bitmap, _MBCB::BitmapRange1, _MBCB::BitmapRange2, _MBCB::BitmapRange3, _MBCB::BitmapRanges, CACHE_NTC_MBCB, CACHE_NTC_MBCB_GRANDE, CcAcquireMasterLockAtDpcLevel, CcAcquireVacbLockAtDpcLevel, CcAllocateInitializeBcb(), CcAllocateVacbLevel(), CcDeallocateVacbLevel(), CcDirtySharedCacheMapList, CcFindBitmapRangeToDirty(), CcPrefillVacbLevelZone(), CcReleaseMasterLockFromDpcLevel, CcReleaseVacbLock, CcReleaseVacbLockFromDpcLevel, CcScheduleLazyWriteScan(), CcTotalDirtyPages, _MBCB::DirtyPages, _BITMAP_RANGE::DirtyPages, FALSE, _BITMAP_RANGE::FirstDirtyPage, _BITMAP_RANGE::LastDirtyPage, LazyWriter, _BITMAP_RANGE::Links, MBCB_BITMAP_INITIAL_SIZE, MBCB_BITMAP_RANGE, _MBCB::NodeTypeCode, NULL, PAGE_SHIFT, PAGE_SIZE, QuadAlign, _MBCB::ResumeWritePage, _LAZY_WRITER::ScanActive, and _SHARED_CACHE_MAP_LIST_CURSOR::SharedCacheMapLinks. Referenced by CcFreeActiveVacb(), CcMapAndCopy(), CcMdlWriteComplete2(), CcPrepareMdlWrite(), CcPurgeAndClearCacheSection(), and CcReleaseByteRangeFromWrite().
|
|
|
|
|
||||||||||||||||||||
|
Definition at line 1784 of file vacbsup.c. References CcAcquireVacbLock, CcDrainVacbLevelZone(), CcMoveVacbToReuseHead, CcReleaseVacbLock, CcUnmapVacb(), FALSE, GetVacb, NULL, _VACB::Overlay, SetVacb(), _VACB::SharedCacheMap, TRUE, and VACB_MAPPING_GRANULARITY. Referenced by CcGetVacbMiss(), CcPurgeCacheSection(), and CcUnmapAndPurge().
|
|
||||||||||||||||
|
Definition at line 974 of file cachesub.c. References ASSERT, _SHARED_CACHE_MAP::BcbSpinLock, CACHE_NTC_BCB, CACHE_NTC_SHARED_CACHE_MAP, CcAcquireMasterLockAtDpcLevel, CcAcquireVacbLockAtDpcLevel, CcBcbSpinLock, CcBeyondVacbs, CcBugCheck, CcCleanSharedCacheMapList, CcDeallocateBcb(), CcFreeVirtualAddress(), CcPagesYetToWrite, CcReleaseMasterLockFromDpcLevel, CcReleaseVacbLockFromDpcLevel, CcTotalDirtyPages, CcUnlockVacbLevel, CcVacbs, DebugTrace, _SHARED_CACHE_MAP::DirtyPages, ExReleaseResource, FALSE, FlagOn, _SHARED_CACHE_MAP::Flags, me, MODIFIED_WRITE_DISABLED, _SHARED_CACHE_MAP::NodeTypeCode, NULL, _SHARED_CACHE_MAP::OpenCount, PAGE_SHIFT, PVACB, SET_CLEAN, _SHARED_CACHE_MAP::SharedCacheMapLinks, TRUE, UNPIN, and UNREF. Referenced by CcAcquireByteRangeForWrite(), CcCopyRead(), CcCopyWrite(), CcGetDirtyPages(), CcMapData(), CcPinFileData(), CcReleaseByteRangeFromWrite(), CcUnpinData(), CcUnpinDataForThread(), CcUnpinRepinnedBcb(), and CcZeroData().
|
|
|
Definition at line 1062 of file vacbsup.c. References CcAcquireVacbLock, CcReleaseVacbLock, Event(), ExAllocatePoolWithTag, Executive, FALSE, KeInitializeEvent, KernelMode, KeWaitForSingleObject(), NonPagedPoolMustSucceed, and NULL. Referenced by CcDeleteSharedCacheMap(), and CcPurgeCacheSection().
|
|
|
Definition at line 738 of file lazyrite.c. References ASSERT, CC_REQUEUE, CcDeferredWrites, CcExceptionFilter(), CcExpressWorkQueue, CcFreeWorkQueueEntry, CcIdleWorkerThreadList, CcLazyWriteScan(), CcNumberActiveWorkerThreads, CcPerformReadAhead(), CcQueueThrottle, CcRegularWorkQueue, CcTotalDirtyPages, CcWorkQueueSpinlock, CcWriteBehind(), DebugTrace, EventSet, FALSE, _WORK_QUEUE_ENTRY::Function, KeSetEvent(), LazyWriteScan, List, me, NT_SUCCESS, _WORK_QUEUE_ENTRY::Parameters, ReadAhead, TRUE, _WORK_QUEUE_ENTRY::WorkQueueLinks, and WriteBehind. Referenced by CcInitializeCacheManager().
|
|
||||||||||||
|
Definition at line 3880 of file cachesub.c. References CC_REQUEUE, CcAcquireMasterLock, CcAcquireMasterLockAtDpcLevel, CcDecrementOpenCount, CcDeferredWrites, CcDeleteSharedCacheMap(), CcFlushCache(), CcFreeActiveVacb(), CcGetFlushedValidData(), CcIncrementOpenCount, CcLogError(), CcNoDelay, CcPagesYetToWrite, CcPostDeferredWrites(), CcReleaseMasterLock, CcReleaseMasterLockFromDpcLevel, CcSetValidData(), ClearFlag, DbgPrint, DebugTrace, _MBCB::DirtyPages, ExAllocatePoolWithTag, ExFreePool(), FALSE, FlagOn, FsRtlAcquireFileExclusive(), FsRtlReleaseFile(), GetActiveVacbAtDpcLevel, IoRaiseInformationalHardError(), LAZY_WRITE_OCCURRED, me, NT_SUCCESS, NTSTATUS(), NULL, ObQueryNameString(), PagedPool, _MBCB::PagesToWrite, PIN_ACCESS, RetryError, Status, TRUE, and WRITE_QUEUED. Referenced by CcWorkerThread().
|
|
||||||||||||||||
|
Definition at line 2110 of file cc.h. References PVACB_LEVEL_REFERENCE, _VACB_LEVEL_REFERENCE::Reference, _VACB_LEVEL_REFERENCE::SpecialReference, and VacbLevelReference(). Referenced by CcAdjustVacbLevelLockCount(), CcDeleteSharedCacheMap(), CcExtendVacbArray(), CcSetVacbLargeOffset(), and SetVacb().
|
|
||||||||||||||||
|
Definition at line 2094 of file cc.h. References FlagOn, MODIFIED_WRITE_DISABLED, PVACB_LEVEL_REFERENCE, and VACB_LEVEL_BLOCK_SIZE. Referenced by CcCalculateVacbLevelLockCount(), IsVacbLevelReferenced(), and ReferenceVacbLevel().
|
|
|
Definition at line 2033 of file cc.h. Referenced by CcInitializeCacheManager(), and CcZeroData(). |
|
|
Definition at line 2034 of file cc.h. Referenced by CcInitializeCacheManager(), and CcZeroData(). |
|
|
|
|
|
Definition at line 1998 of file cc.h. Referenced by CcAllocateInitializeBcb(), CcDeallocateBcb(), CcDeleteSharedCacheMap(), CcInitializeCacheManager(), CcMapData(), CcPinMappedData(), CcPinRead(), CcPreparePinWrite(), and CcUnpinFileData(). |
|
|
Definition at line 2021 of file cc.h. Referenced by CcGetVacbLargeOffset(), CcInitializeVacbs(), CcRemapBcb(), and CcUnpinFileData(). |
|
|
Definition at line 2036 of file cc.h. Referenced by CcInitializeCacheManager(), and CcLazyWriteScan(). |
|
|
Definition at line 1999 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcInitializeCacheManager(), CcInitializeCacheMap(), and CcUnpinFileData(). |
|
|
Definition at line 2015 of file cc.h. Referenced by CcPurgeCacheSection(). |
|
|
Definition at line 2024 of file cc.h. Referenced by CcCanIWrite(), CcDeferWrite(), CcFlushCache(), CcInitializeCacheManager(), CcLazyWriteScan(), CcPostDeferredWrites(), CcUnpinRepinnedBcb(), CcWorkerThread(), and CcWriteBehind(). |
|
|
|
|
|
Definition at line 2027 of file cc.h. Referenced by CcLazyWriteScan(). |
|
|
Definition at line 2026 of file cc.h. Referenced by CcInitializeCacheManager(), and CcLazyWriteScan(). |
|
|
Definition at line 2025 of file cc.h. Referenced by CcCanIWrite(), and CcInitializeCacheManager(). |
|
|
Definition at line 2000 of file cc.h. Referenced by CcFlushCache(), CcGetDirtyPages(), CcGetFlushedValidData(), CcGetVacbMiss(), CcInitializeCacheManager(), CcInitializeCacheMap(), CcIsThereDirtyData(), CcMdlWriteComplete2(), CcPerformReadAhead(), CcPurgeCacheSection(), CcSetDirtyInMask(), CcSetDirtyPinnedData(), CcSetFileSizes(), CcUninitializeCacheMap(), and CcZeroEndOfLastPage(). |
|
|
Definition at line 2007 of file cc.h. Referenced by CcInitializeCacheManager(), CcScheduleReadAhead(), and CcWorkerThread(). |
|
|
Definition at line 2013 of file cc.h. Referenced by CcScheduleLazyWriteScan(). |
|
|
Definition at line 2014 of file cc.h. Referenced by CcCanIWrite(), and CcScheduleLazyWriteScan(). |
|
|
Definition at line 2011 of file cc.h. Referenced by CcFlushCache(), and CcInitializeCacheManager(). |
|
|
Definition at line 2006 of file cc.h. Referenced by CcInitializeCacheManager(), CcPostWorkQueue(), and CcWorkerThread(). |
|
|
Definition at line 2035 of file cc.h. Referenced by CcFlushCache(). |
|
|
Definition at line 2001 of file cc.h. Referenced by CcInitializeCacheManager(), and CcLazyWriteScan(). |
|
|
|
|
|
Definition at line 2037 of file cc.h. Referenced by CcCreateVacbArray(), CcDrainVacbLevelZone(), CcExtendVacbArray(), CcGetVacbMiss(), and CcReferenceFileOffset(). |
|
|
Definition at line 2012 of file cc.h. Referenced by CcCanIWrite(), CcFlushCache(), and CcWriteBehind(). |
|
|
Definition at line 2005 of file cc.h. Referenced by CcPostWorkQueue(), and CcWorkerThread(). |
|
|
Definition at line 2019 of file cc.h. Referenced by CcInitializeVacbs(). |
|
|
Definition at line 2004 of file cc.h. Referenced by CcInitializeCacheManager(). |
|
|
Definition at line 2029 of file cc.h. Referenced by CcLazyWriteScan(). |
|
|
Definition at line 2028 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcLazyWriteScan(), CcUnpinFileData(), and CcWriteBehind(). |
|
|
Definition at line 2009 of file cc.h. Referenced by CcInitializeCacheManager(), CcLazyWriteScan(), and CcWaitForCurrentLazyWriterActivity(). |
|
|
Definition at line 2010 of file cc.h. Referenced by CcPostWorkQueue(), and CcWorkerThread(). |
|
|
Definition at line 2008 of file cc.h. Referenced by CcInitializeCacheManager(), CcLazyWriteScan(), CcScanDpc(), and CcWorkerThread(). |
|
|
|
|
|
Definition at line 2031 of file cc.h. Referenced by CcAcquireByteRangeForWrite(), CcCanIWrite(), CcDeleteMbcb(), CcDeleteSharedCacheMap(), CcFreeActiveVacb(), CcLazyWriteScan(), CcSetDirtyInMask(), CcSetDirtyPinnedData(), CcUnpinFileData(), and CcWorkerThread(). |
|
|
|
|
|
Definition at line 2002 of file cc.h. Referenced by CcInitializeCacheManager(). |
|
|
Definition at line 2038 of file cc.h. Referenced by CcAllocateVacbLevel(), CcDeallocateVacbLevel(), CcDrainVacbLevelZone(), CcExtendVacbArray(), and CcPrefillVacbLevelZone(). |
|
|
Definition at line 2039 of file cc.h. Referenced by CcAllocateVacbLevel(), CcDeallocateVacbLevel(), CcDrainVacbLevelZone(), and CcPrefillVacbLevelZone(). |
|
|
Definition at line 2040 of file cc.h. Referenced by CcAllocateVacbLevel(), CcDeallocateVacbLevel(), CcDrainVacbLevelZone(), and CcPrefillVacbLevelZone(). |
|
|
Definition at line 2041 of file cc.h. Referenced by CcAllocateVacbLevel(), CcDeallocateVacbLevel(), CcDrainVacbLevelZone(), and CcPrefillVacbLevelZone(). |
|
|
Definition at line 2022 of file cc.h. Referenced by CcGetVacbMiss(), and CcInitializeVacbs(). |
|
|
Definition at line 2020 of file cc.h. Referenced by CcGetVacbLargeOffset(), CcInitializeVacbs(), CcRemapBcb(), and CcUnpinFileData(). |
|
|
|
|
|
|
|
|
1.3.7