MiFlushAllPages
VOID __fastcall MiFlushAllPages(_MI_PARTITION *Partition, CHAR a2){
INT64 UnbiasedInterruptTime;
__int64 v5;
UINT64 v6;
INT64 v7;
_EPROCESS *StoreProcess;
_KAPC_STATE ApcState;
memset(&ApcState, 0, sizeof(ApcState));
UnbiasedInterruptTime = KiQueryUnbiasedInterruptTime(1u);
v6 = 10000000 * v5;
v7 = UnbiasedInterruptTime;
MiFlushAllPagesWorker(Partition, UnbiasedInterruptTime, 10000000 * v5, 0i64);
if( a2 )
{
if( Partition->Store.Registered )
{
StoreProcess = Partition->Store.StoreProcess;
KiStackAttachProcess(StoreProcess, 0i64, &ApcState);
MiEmptyWorkingSetPrivatePagesByVa(&StoreProcess->Vm.Instance);
KiUnstackDetachProcess(&ApcState, 0i64);
MiFlushAllPagesWorker(Partition, v7, v6, 0i64);
}
}
}Referenced by:
MmFlushAllPagesEx
MmPerformMemoryListCommand