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.