IoEnableIrpCredits
VOID __stdcall IoEnableIrpCredits(){
unsigned int ActiveProcessorCount;
unsigned int v1;
unsigned int LookasideIrpLimit;
_KPRCB **v3;
_IO_PROC_INIT_VALUES InitValues;
memset(&InitValues, 0, sizeof(InitValues));
if( dword_140CEBEF8 < 1 && !_InterlockedCompareExchange(&dword_140CEBEF8, 1, 0) )
{
IopQueryProcessorInitValues(&InitValues);
KeSynchronizeWithDynamicProcessors();
ActiveProcessorCount = KeQueryActiveProcessorCountEx(0xFFFFu);
v1 = 0;
if( ActiveProcessorCount )
{
LookasideIrpLimit = InitValues.LookasideIrpLimit;
v3 = &KiProcessorBlock;
do
{
if( (*v3)->LookasideIrpFloat != 0x7FFFFFFF )
break;
++v1;
(*v3++)->LookasideIrpFloat = LookasideIrpLimit;
}
while( v1 < ActiveProcessorCount );
}
_InterlockedAdd(&dword_140CEBEF8, 1u);
}
}Referenced by:
PspInitializeQuotaBlock