Revision: 16520
          http://sourceforge.net/p/edk2/code/16520
Author:   lgao4
Date:     2014-12-15 09:36:46 +0000 (Mon, 15 Dec 2014)
Log Message:
-----------
MdeModulePke: PeiCore FirmwareVolmeInfoPpiNotifyCallback ()issue

PeiCore FirmwareVolmeInfoPpiNotifyCallback() should check FvCount when new one 
is added. 
Now, this check is the entry of Notify function that is too early, because 
PeiCore will 
install FvInfo and FvInfo2 both for one sub FV image and trig FvNotify function 
twice for the same FV images. 

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <[email protected]>
Reviewed-by: Star Zeng <[email protected]>
Reviewed-by: Guo Dong <[email protected]>

Modified Paths:
--------------
    trunk/edk2/MdeModulePkg/Core/Pei/FwVol/FwVol.c

Modified: trunk/edk2/MdeModulePkg/Core/Pei/FwVol/FwVol.c
===================================================================
--- trunk/edk2/MdeModulePkg/Core/Pei/FwVol/FwVol.c      2014-12-15 08:00:40 UTC 
(rev 16519)
+++ trunk/edk2/MdeModulePkg/Core/Pei/FwVol/FwVol.c      2014-12-15 09:36:46 UTC 
(rev 16520)
@@ -530,12 +530,6 @@
   Status       = EFI_SUCCESS;
   PrivateData  = PEI_CORE_INSTANCE_FROM_PS_THIS (PeiServices);
 
-  if (PrivateData->FvCount >= PcdGet32 (PcdPeiCoreMaxFvSupported)) {
-    DEBUG ((EFI_D_ERROR, "The number of Fv Images (%d) exceed the max 
supported FVs (%d) in Pei", PrivateData->FvCount + 1, PcdGet32 
(PcdPeiCoreMaxFvSupported)));
-    DEBUG ((EFI_D_ERROR, "PcdPeiCoreMaxFvSupported value need be 
reconfigurated in DSC"));
-    ASSERT (FALSE);
-  }
-
   if (CompareGuid (NotifyDescriptor->Guid, 
&gEfiPeiFirmwareVolumeInfo2PpiGuid)) {
     //
     // It is FvInfo2PPI.
@@ -584,6 +578,12 @@
       }
     }
 
+    if (PrivateData->FvCount >= PcdGet32 (PcdPeiCoreMaxFvSupported)) {
+      DEBUG ((EFI_D_ERROR, "The number of Fv Images (%d) exceed the max 
supported FVs (%d) in Pei", PrivateData->FvCount + 1, PcdGet32 
(PcdPeiCoreMaxFvSupported)));
+      DEBUG ((EFI_D_ERROR, "PcdPeiCoreMaxFvSupported value need be 
reconfigurated in DSC"));
+      ASSERT (FALSE);
+    }
+
     //
     // Update internal PEI_CORE_FV array.
     //


------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to