Revision: 18374
          http://sourceforge.net/p/edk2/code/18374
Author:   vanjeff
Date:     2015-09-01 08:56:14 +0000 (Tue, 01 Sep 2015)
Log Message:
-----------
UefiCpuPkg/CpuMpPei: Fix CPU Healthy issue in PeiGetProcessorInfo ()

CPU Healthy state maybe changed by software. We should return Healthy state
from Healthy bit instead of from CPU BIST hardware information.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <[email protected]>
Reviewed-by: Feng Tian <[email protected]>

Modified Paths:
--------------
    trunk/edk2/UefiCpuPkg/CpuMpPei/CpuBist.c
    trunk/edk2/UefiCpuPkg/CpuMpPei/PeiMpServices.c

Modified: trunk/edk2/UefiCpuPkg/CpuMpPei/CpuBist.c
===================================================================
--- trunk/edk2/UefiCpuPkg/CpuMpPei/CpuBist.c    2015-09-01 08:55:49 UTC (rev 
18373)
+++ trunk/edk2/UefiCpuPkg/CpuMpPei/CpuBist.c    2015-09-01 08:56:14 UTC (rev 
18374)
@@ -226,7 +226,10 @@
         CpuData->Health = CpuInstance[CpuIndex].InfoRecord.IA32HealthFlags;
       }
     }
-    if (CpuData->Health.Uint32 != 0) {
+    if (CpuData->Health.Uint32 == 0) {
+      CpuData->CpuHealthy = TRUE;
+    } else {
+      CpuData->CpuHealthy = FALSE;
       //
       // Report Status Code that self test is failed
       //

Modified: trunk/edk2/UefiCpuPkg/CpuMpPei/PeiMpServices.c
===================================================================
--- trunk/edk2/UefiCpuPkg/CpuMpPei/PeiMpServices.c      2015-09-01 08:55:49 UTC 
(rev 18373)
+++ trunk/edk2/UefiCpuPkg/CpuMpPei/PeiMpServices.c      2015-09-01 08:56:14 UTC 
(rev 18374)
@@ -334,7 +334,7 @@
   if (PeiCpuMpData->CpuData[ProcessorNumber].ApicId == GetInitialApicId()) {
     ProcessorInfoBuffer->StatusFlag |= PROCESSOR_AS_BSP_BIT;
   }
-  if (PeiCpuMpData->CpuData[ProcessorNumber].Health.Uint32 == 0) {
+  if (PeiCpuMpData->CpuData[ProcessorNumber].CpuHealthy) {
     ProcessorInfoBuffer->StatusFlag |= PROCESSOR_HEALTH_STATUS_BIT;
   }
   if (PeiCpuMpData->CpuData[ProcessorNumber].State == CpuStateDisabled) {


------------------------------------------------------------------------------
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to