[NTOS:CC]

- Rename ROS_SHARED_CACHE_MAP::RefCount to OpenCount. One step closer to the real SHARED_CACHE_MAP.
CORE-8065

svn path=/trunk/; revision=74322
This commit is contained in:
Thomas Faber 2017-04-16 08:50:20 +00:00
parent c873907550
commit c447bed85d
2 changed files with 15 additions and 15 deletions

View file

@ -982,14 +982,14 @@ CcRosDeleteFileCache (
ASSERT(SharedCacheMap); ASSERT(SharedCacheMap);
SharedCacheMap->RefCount++; SharedCacheMap->OpenCount++;
KeReleaseGuardedMutex(&ViewLock); KeReleaseGuardedMutex(&ViewLock);
CcFlushCache(FileObject->SectionObjectPointer, NULL, 0, NULL); CcFlushCache(FileObject->SectionObjectPointer, NULL, 0, NULL);
KeAcquireGuardedMutex(&ViewLock); KeAcquireGuardedMutex(&ViewLock);
SharedCacheMap->RefCount--; SharedCacheMap->OpenCount--;
if (SharedCacheMap->RefCount == 0) if (SharedCacheMap->OpenCount == 0)
{ {
FileObject->SectionObjectPointer->SharedCacheMap = NULL; FileObject->SectionObjectPointer->SharedCacheMap = NULL;
@ -1040,8 +1040,8 @@ CcRosReferenceCache (
KeAcquireGuardedMutex(&ViewLock); KeAcquireGuardedMutex(&ViewLock);
SharedCacheMap = FileObject->SectionObjectPointer->SharedCacheMap; SharedCacheMap = FileObject->SectionObjectPointer->SharedCacheMap;
ASSERT(SharedCacheMap); ASSERT(SharedCacheMap);
ASSERT(SharedCacheMap->RefCount != 0); ASSERT(SharedCacheMap->OpenCount != 0);
SharedCacheMap->RefCount++; SharedCacheMap->OpenCount++;
KeReleaseGuardedMutex(&ViewLock); KeReleaseGuardedMutex(&ViewLock);
} }
@ -1054,7 +1054,7 @@ CcRosRemoveIfClosed (
DPRINT("CcRosRemoveIfClosed()\n"); DPRINT("CcRosRemoveIfClosed()\n");
KeAcquireGuardedMutex(&ViewLock); KeAcquireGuardedMutex(&ViewLock);
SharedCacheMap = SectionObjectPointer->SharedCacheMap; SharedCacheMap = SectionObjectPointer->SharedCacheMap;
if (SharedCacheMap && SharedCacheMap->RefCount == 0) if (SharedCacheMap && SharedCacheMap->OpenCount == 0)
{ {
CcRosDeleteFileCache(SharedCacheMap->FileObject, SharedCacheMap); CcRosDeleteFileCache(SharedCacheMap->FileObject, SharedCacheMap);
} }
@ -1071,10 +1071,10 @@ CcRosDereferenceCache (
KeAcquireGuardedMutex(&ViewLock); KeAcquireGuardedMutex(&ViewLock);
SharedCacheMap = FileObject->SectionObjectPointer->SharedCacheMap; SharedCacheMap = FileObject->SectionObjectPointer->SharedCacheMap;
ASSERT(SharedCacheMap); ASSERT(SharedCacheMap);
if (SharedCacheMap->RefCount > 0) if (SharedCacheMap->OpenCount > 0)
{ {
SharedCacheMap->RefCount--; SharedCacheMap->OpenCount--;
if (SharedCacheMap->RefCount == 0) if (SharedCacheMap->OpenCount == 0)
{ {
MmFreeSectionSegments(SharedCacheMap->FileObject); MmFreeSectionSegments(SharedCacheMap->FileObject);
CcRosDeleteFileCache(FileObject, SharedCacheMap); CcRosDeleteFileCache(FileObject, SharedCacheMap);
@ -1102,10 +1102,10 @@ CcRosReleaseFileCache (
if (FileObject->PrivateCacheMap != NULL) if (FileObject->PrivateCacheMap != NULL)
{ {
FileObject->PrivateCacheMap = NULL; FileObject->PrivateCacheMap = NULL;
if (SharedCacheMap->RefCount > 0) if (SharedCacheMap->OpenCount > 0)
{ {
SharedCacheMap->RefCount--; SharedCacheMap->OpenCount--;
if (SharedCacheMap->RefCount == 0) if (SharedCacheMap->OpenCount == 0)
{ {
MmFreeSectionSegments(SharedCacheMap->FileObject); MmFreeSectionSegments(SharedCacheMap->FileObject);
CcRosDeleteFileCache(FileObject, SharedCacheMap); CcRosDeleteFileCache(FileObject, SharedCacheMap);
@ -1138,7 +1138,7 @@ CcTryToInitializeFileCache (
if (FileObject->PrivateCacheMap == NULL) if (FileObject->PrivateCacheMap == NULL)
{ {
FileObject->PrivateCacheMap = SharedCacheMap; FileObject->PrivateCacheMap = SharedCacheMap;
SharedCacheMap->RefCount++; SharedCacheMap->OpenCount++;
} }
Status = STATUS_SUCCESS; Status = STATUS_SUCCESS;
} }
@ -1193,7 +1193,7 @@ CcRosInitializeFileCache (
if (FileObject->PrivateCacheMap == NULL) if (FileObject->PrivateCacheMap == NULL)
{ {
FileObject->PrivateCacheMap = SharedCacheMap; FileObject->PrivateCacheMap = SharedCacheMap;
SharedCacheMap->RefCount++; SharedCacheMap->OpenCount++;
} }
KeReleaseGuardedMutex(&ViewLock); KeReleaseGuardedMutex(&ViewLock);

View file

@ -153,7 +153,7 @@ typedef struct _ROS_SHARED_CACHE_MAP
PCACHE_MANAGER_CALLBACKS Callbacks; PCACHE_MANAGER_CALLBACKS Callbacks;
PVOID LazyWriteContext; PVOID LazyWriteContext;
KSPIN_LOCK CacheMapLock; KSPIN_LOCK CacheMapLock;
ULONG RefCount; ULONG OpenCount;
#if DBG #if DBG
BOOLEAN Trace; /* enable extra trace output for this cache map and it's VACBs */ BOOLEAN Trace; /* enable extra trace output for this cache map and it's VACBs */
#endif #endif