CcSetParallelFlushFile

VOID __stdcall CcSetParallelFlushFile(PFILE_OBJECT FileObject, BOOL EnableParallelFlush){
  _SECTION_OBJECT_POINTERS *SectionObjectPointer; 
  _DWORD *SharedCacheMap; 
  unsigned __int64 *Partition; 
  int v6; 
  unsigned int v7; 
  _KLOCK_QUEUE_HANDLE LockHandle; 

  SectionObjectPointer = FileObject->SectionObjectPointer;
  memset(&LockHandle, 0, sizeof(LockHandle));
  SharedCacheMap = SectionObjectPointer->SharedCacheMap;
  Partition = (unsigned __int64 *)CcGetPartition(SharedCacheMap);
  KeAcquireInStackQueuedSpinLock(Partition + 16, &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.