PpmIdleSelectCoordinatedProcessorDependency
UINT64 __stdcall PpmIdleSelectCoordinatedProcessorDependency(
_KPRCB *Prcb,
UINT64 PreselectState,
UINT64 RemainingLatency,
UINT64 ExpectedIdle,
_PPM_SELECTION_MENU *Menu,
UINT64 *ProcessorState){
__int64 v6;
unsigned int v8;
unsigned int v9;
UINT64 v11;
_PPM_SELECTION_MENU_ENTRY *Entries;
UINT64 StateIndex;
v6 = 0i64;
v8 = RemainingLatency;
v9 = PreselectState;
v11 = 2147483649i64;
if( Menu->Count )
{
while( 1 )
{
Entries = Menu->Entries;
if( Entries[v6].InitiatingState )
{
LODWORD(StateIndex) = Entries[v6].StateIndex;
v11 = PpmIdleCheckProcessorStateEligibility(Prcb, v9, v8, ExpectedIdle, StateIndex, PpmIdleCoordinatedMode == 0);
if( !v11 )
break;
}
v6 = (unsigned int)(v6 + 1);
if( (unsigned int)v6 >= Menu->Count )
return v11;
}
*(_DWORD *)ProcessorState = Entries[v6].StateIndex;
}
return v11;
}Referenced by:
PpmIdleCheckCoordinatedDependencies