/* Checks if all CPUs (except Blocked & Disabled) have checked in for this SMI run */
BOOLEAN AllCpusInSmmExceptBlockedDisabled(VOID)
/* Checks if all CPUs (except Blocked & Disabled) have checked in for this SMI run */
BOOLEAN AllCpusInSmmExceptBlockedDisabled(VOID)
{
  UINT32  BlockedCount;
  UINT32  DisabledCount;
  BlockedCount  = 0;
  DisabledCount = 0;
  ASSERT (SmmCpuSyncGetArrivedCpuCount (mSmmMpSyncData->SyncContext) <= mNumberOfCpus);
  if (SmmCpuSyncGetArrivedCpuCount (mSmmMpSyncData->SyncContext) == mNumberOfCpus) {
    return TRUE;
  }
  GetSmmDelayedBlockedDisabledCount (NULL, &BlockedCount, &DisabledCount);
  if (SmmCpuSyncGetArrivedCpuCount (mSmmMpSyncData->SyncContext) + BlockedCount + DisabledCount >= mNumberOfCpus) {
    return TRUE;
  }
  return FALSE;
}