MiNodeFreeZeroPages
__int64 __fastcall MiNodeFreeZeroPages(_QWORD *a1, unsigned int a2, int a3){
__int64 v3;
_QWORD *v4;
__int64 v5;
__int64 v6;
_MMLISTS v7;
__int64 v8;
int v9;
_QWORD *v11;
v3 = a2;
v4 = a1 + 516;
v5 = ((unsigned int)~a3 >> 1) & 1;
v6 = 0i64;
v7 = ZeroedPageList;
v8 = 0i64;
v9 = a3 & 0x1000;
do
{
if( (unsigned int)MmNumberOfChannels > 1 )
v11 = &a1[2 * v3 + 527 + v8];
else
v11 = v4;
v6 += *v11;
if( v9 )
v6 += MiNodeLargeFreeZeroPages((_MI_NODE_INFORMATION *)a1, (unsigned int)v3, v7);
++v7;
++v8;
++v4;
}
while( v8 <= v5 );
return v6;
}Referenced by:
MiDemoteLocalLargePage
MiFreeZeroPageSlistSufficient
MiPruneStandbyPages
MiRebalanceZeroFreeLists
MiRebuildLargePage
MiRebuildLargePages
MiReplenishPageSlist
MiSignalLargePageRebuild