CcSetParallelFlushFile
VOID __stdcall CcSetParallelFlushFile(_FILE_OBJECT *FileObject, UINT8 EnableParallelFlush){
_SECTION_OBJECT_POINTERS *SectionObjectPointer;
_DWORD *SharedCacheMap;
INT64 Partition;
int v6;
unsigned int v7;
struct _KLOCK_QUEUE_HANDLE LockHandle;
SectionObjectPointer = FileObject->SectionObjectPointer;
memset(&LockHandle, 0, sizeof(LockHandle));
SharedCacheMap = SectionObjectPointer->SharedCacheMap;
Partition = CcGetPartition(SharedCacheMap);
KeAcquireInStackQueuedSpinLock((UINT64 *)(Partition + 128), &LockHandle);
v6 = SharedCacheMap[38];
if( EnableParallelFlush )
v7 = v6 | 0x40000;
else
v7 = v6 & 0xFFFBFFFF;
SharedCacheMap[38] = v7;
KeReleaseInStackQueuedSpinLockFromDpcLevel(&LockHandle);
__writecr8(LockHandle.OldIrql);
}Referenced by:
No references.