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