VOID *MicrocodeData;\r
MSR_IA32_PLATFORM_ID_REGISTER PlatformIdMsr;\r
UINT32 ProcessorFlags;\r
+ UINT32 ThreadId;\r
\r
if (CpuMpData->MicrocodePatchRegionSize == 0) {\r
//\r
return;\r
}\r
\r
+ GetProcessorLocationByApicId (GetInitialApicId (), NULL, NULL, &ThreadId);\r
+ if (ThreadId != 0) {\r
+ //\r
+ // Skip loading microcode if it is not the first thread in one core.\r
+ //\r
+ return;\r
+ }\r
+\r
ExtendedTableLength = 0;\r
//\r
// Here data of CPUID leafs have not been collected into context buffer, so\r