PopThermalUpdateTelemetryClientCount
VOID __stdcall PopThermalUpdateTelemetryClientCount(UINT8 Increment){
_EXT_SET_PARAMETERS_V0 Parameters;
PopAcquireRwLockExclusive(&PopThermalTelemetryLock);
if( Increment )
{
if( ++PopThermalTelemetryClientCount == 1 )
{
*(_QWORD *)&Parameters.Version = 0i64;
Parameters.NoWakeTolerance = -1i64;
KeSetTimer2(&PopThermalTelemetryTimer, -864000000000i64, 0i64, &Parameters);
}
}
else if( !--PopThermalTelemetryClientCount )
{
KeCancelTimer2(&PopThermalTelemetryTimer, 0i64);
}
PopReleaseRwLock((UINT64)&PopThermalTelemetryLock);
}Referenced by:
PopAssociateThermalRequest
PopDeactiveThermalRequest
PopOrphanCoolingExtension
PopThermalZoneAdd
PopThermalZoneRemove