MiReduceWs
VOID __stdcall MiReduceWs(_MMSUPPORT_INSTANCE *Vm, UINT8 WsIrql, UINT64 DesiredSize){
unsigned __int64 WorkingSetSize;
unsigned int i;
UINT64 v8;
unsigned __int64 v9;
UINT64 TrimFlags;
WorkingSetSize = Vm->WorkingSetSize;
for( i = 7; WorkingSetSize > DesiredSize; --i )
{
v8 = WorkingSetSize - DesiredSize;
if( i )
{
v9 = Vm->AgeDistribution[i];
if( v9 > v8 )
v9 = v8;
v8 = v9;
}
if( v8 )
{
LODWORD(TrimFlags) = 80;
MiTrimWorkingSet(Vm, v8, WsIrql, i, TrimFlags);
if( !i )
break;
}
WorkingSetSize = Vm->WorkingSetSize;
}
MiSimpleAging(Vm);
}Referenced by:
MiPreUnlockWorkingSetShared