PopIncrementPowerSettingPendingUpdates
VOID __stdcall PopIncrementPowerSettingPendingUpdates(UINT8 QueuedReference){
unsigned __int64 v2;
v2 = (unsigned __int8)KeAcquireSpinLockRaiseToDpc(&PopPendingPowerSettingUpdateLock);
_InterlockedIncrement(&PopPendingPowerSettingUpdates);
if( QueuedReference )
++PopPendingPowerSettingUpdatesQueued;
if( PopPendingPowerSettingUpdates == 1 )
{
PopPendingPowerSettingUpdateTime = *(_QWORD *)&KUSER_SHARED_DATA.InterruptTime.LowPart;
PopDeepSleepSetDisengageReason((POP_DEEP_SLEEP_DISENGAGE_REASON)(PopPendingPowerSettingUpdates + 2));
}
KxReleaseSpinLock(&PopPendingPowerSettingUpdateLock);
__writecr8(v2);
}Referenced by:
PopDispatchPowerSettingCallbacks
PopSetPowerSettingValue