MiRebalanceZeroFreeLists
UINT8 __fastcall MiRebalanceZeroFreeLists(
_ETW_GUID_ENTRY *GuidEntry,
UINT64 LoggerIndex,
UINT16 HeaderType,
_EVENT_HEADER *UserEventHeader,
UINT64 UserDataCount,
_EVENT_DATA_DESCRIPTOR *UserData){
unsigned int i;
unsigned int j;
UINT64 v9;
__int64 v10;
unsigned __int64 MatchAnyKeyword;
UINT8 result;
struct _KLOCK_QUEUE_HANDLE LockHandle;
memset(&LockHandle, 0, sizeof(LockHandle));
for( i = 0; i < (unsigned __int16)KeNumberNodes; ++i )
{
for( j = 0; j < MmNumberOfChannels; ++j )
{
if( (unsigned __int64)MiNodeFreeZeroPages(&GuidEntry->SiloGuidList.Flink[284 * i].Flink, j, 4096) < 0x200
&& MiGetNodeStandbyPageCount((_MI_PARTITION *)GuidEntry, i, j) >= 0x1000
&& v10 != 1024 )
{
MiPruneStandbyPages((_MI_PARTITION *)GuidEntry, i, v9, 1024 - v10);
}
}
}
MatchAnyKeyword = GuidEntry->EnableInfo[1].MatchAnyKeyword;
KeAcquireInStackQueuedSpinLock(&qword_140C4E340, &LockHandle);
GuidEntry[14].FilterData = 0i64;
KeReleaseInStackQueuedSpinLockFromDpcLevel(&LockHandle);
__writecr8(LockHandle.OldIrql);
PsDereferencePartition(MatchAnyKeyword);
return result;
}Referenced by:
No references.