MmWaitForCacheManagerPrefetch
NTSTATUS __stdcall MmWaitForCacheManagerPrefetch(SINGLE_LIST_ENTRY *OpaqueWaitBlock){
int Next;
SINGLE_LIST_ENTRY *v2;
NTSTATUS v3;
_SINGLE_LIST_ENTRY *v4;
NTSTATUS v5;
Next = (int)OpaqueWaitBlock[13].Next;
v2 = OpaqueWaitBlock;
v3 = 0;
do
{
v4 = v2->Next;
v5 = MiPfCompletePrefetchIos((_LIST_ENTRY *)&v2[15], 0i64, 0i64);
MiReleaseReadListResources((INT64)v2);
ExFreePoolWithTag(v2, 0);
v2 = v4;
if( v5 < 0 )
v3 = v5;
}
while( v4 );
if( (Next & 1) != 0 )
KiLeaveGuardedRegionUnsafe((__int64)KeGetCurrentThread());
return v3;
}Referenced by:
CcPerformReadAhead