PopCoalescingSetActiveState

VOID __stdcall PopCoalescingSetActiveState(UINT8 Activate){
  unsigned int v1; 
  int v3; 
  UINT64 v4; 
  UINT64 v5; 
  UINT64 v6; 
  v1 = 0;
  if( Activate )
  {
    v3 = PopDppeCoalescingSpindownTimeout;
    if( PopCoalescingEnforced )
      v3 = PopEnforcedCoalescingSpindownTimeout;
    PopCoalescingState |= 1u;
    PopCoalescingLastFlushTime = *(_QWORD *)&KUSER_SHARED_DATA.InterruptTime.LowPart;
    PopCurrentCoalescingSpindownTimeout = v3;
    PopCoalescingSetTimer();
  }
  else
  {
    PopCoalescingState &= ~1u;
    PopCurrentCoalescingSpindownTimeout = 0;
    KeCancelTimer((PKTIMER)&PopCoalescingTimer);
    PopCheckResiliencyScenarios();
  }
  PopUpdateDiskIdleTimeoutSetting();
  if( Activate )
  {
    LOBYTE(v1) = PopCoalescingEnforced == 0;
    PopDiagTraceIoCoalescingOn(v5, v4, v6, v1);
  }
  else
  {
    PopDiagTraceIoCoalescingOff();
  }
}

Referenced by:

PopCoalescingCallbackWorker