MiInitializeSystemCache
NTSTATUS __stdcall MiInitializeSystemCache(_MI_PARTITION *Partition){
_MMPTE *PteAddress;
UINT64 v3;
VOID *SystemBase;
PteAddress = MiGetPteAddress((VOID *)0xFFFF800000000000i64);
InitializeListHeadPte(&Partition->Segments.FreeSystemCache, PteAddress);
v3 = 0i64;
if( Partition != &Irp )
return MiInitializeSystemWorkingSetList(
(ULONG_PTR *)&Partition->Core.PartitionId,
Partition->Vp.PartitionWs,
WorkingSetTypeSystemTypes,
v3);
*(&stru_140C4DB30 + 183) = 0i64;
*(&stru_140C4DB30 + 4808) = *(&stru_140C4DB30 + 4808) & 0xF8 | 2;
SystemBase = MiQuerySystemBase(2i64, (UINT64)&Irp);
if( MiInitializeDynamicRegion(MiVaSystemCache, SystemBase, 0x100000000000ui64) )
{
v3 = 0x100000000i64;
return MiInitializeSystemWorkingSetList(
(ULONG_PTR *)&Partition->Core.PartitionId,
Partition->Vp.PartitionWs,
WorkingSetTypeSystemTypes,
v3);
}
return 0;
}Referenced by:
MiObtainSystemCacheView