PpmParkReportUnparkedCores

UINT8 __stdcall PpmParkReportUnparkedCores(){
  int v1; 
  _KPRCB *Prcb; 
  _KAFFINITY_ENUMERATION_CONTEXT Context; 
  UINT64 ProcIndex; 

  *(_DWORD *)(&Context.CurrentIndex + 1) = 0;
  *(&Context.CurrentIndex + 3) = 0;
  LODWORD(ProcIndex) = 0;
  if( !PpmIsParkingEnabled
    || !KeSubtractAffinityEx(
          &PpmPerfChangedCoreParkingMask.Count,
          (INT8 *)&PpmPerfNewCoreParkingMask,
          (INT8 *)&PpmPerfNewUnparkedMask) )
  {
    return 1;
  }
  *(&PopIrpWorkerControlEvent + 316) = KeCountSetBitsAffinityEx(&PpmPerfNewUnparkedMask.Count);
  Context.CurrentMask = PpmPerfNewUnparkedMask.Bitmap[0];
  Context.CurrentIndex = 0;
  Context.Affinity = &PpmPerfNewUnparkedMask;
  while( 1 )
  {
    KeEnumerateNextProcessor(&ProcIndex, &Context);
    if( v1 )
      break;
    Prcb = KeGetPrcb((unsigned int)ProcIndex);
    PpmPerfQueueAction(Prcb, PpmPerfActionReportUnparkedCore);
  }
  return 0;
}

Referenced by:

No references.