/* Initialize MM memory status code table as initialization for memory status code worker */
EFI_STATUS MemoryStatusCodeInitializeWorker(VOID)
/* Initialize MM memory status code table as initialization for memory status code worker */
EFI_STATUS MemoryStatusCodeInitializeWorker(VOID)
{
  EFI_STATUS  Status;
  mMmMemoryStatusCodeTable = (RUNTIME_MEMORY_STATUSCODE_HEADER *)AllocateZeroPool (sizeof (RUNTIME_MEMORY_STATUSCODE_HEADER) + PcdGet16 (PcdStatusCodeMemorySize) * 1024);
  ASSERT (mMmMemoryStatusCodeTable != NULL);
  mMmMemoryStatusCodeTable->MaxRecordsNumber = (PcdGet16 (PcdStatusCodeMemorySize) * 1024) / sizeof (MEMORY_STATUSCODE_RECORD);
  Status                                     = gMmst->MmInstallConfigurationTable (
                                                        gMmst,
                                                        &gMemoryStatusCodeRecordGuid,
                                                        &mMmMemoryStatusCodeTable,
                                                        sizeof (mMmMemoryStatusCodeTable)
                                                        );
  return Status;
}