Cc: David Wei <david....@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Guo Mang <mang....@intel.com>
Reviewed-by:  David Wei <david....@intel.com>
---
 .../SmBiosMiscDxe/MiscSystemManufacturerFunction.c       | 16 +++++++++-------
 .../DxeSmbiosProcessorLib/DxeSmbiosProcessorLib.c        |  7 ++++++-
 .../Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c  | 10 +++++++++-
 .../FspsWrapperPeim/FspsWrapperPeim.c                    |  6 +++++-
 4 files changed, 29 insertions(+), 10 deletions(-)

diff --git 
a/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c
 
b/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c
index 0000e12..1c611f5 100644
--- 
a/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c
+++ 
b/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c
@@ -418,13 +418,15 @@ AddSmbiosManuCallback (
   //
   //ForType1InputData->SystemUuid.Data1 = PcdGet32 (PcdProductSerialNumber);
   //ForType1InputData->SystemUuid.Data4[0] = PcdGet8 (PcdEmmcManufacturerId);
-  ForType1InputData->SystemUuid.Data1 = (UINT32)MacAddressString [0] + 
(((UINT32)MacAddressString [1]) << 16);
-  ForType1InputData->SystemUuid.Data2 = (UINT16)MacAddressString [2];
-  ForType1InputData->SystemUuid.Data3 = (UINT16)MacAddressString [3];
-  ForType1InputData->SystemUuid.Data4[0] = (UINT8)MacAddressString [4];
-  ForType1InputData->SystemUuid.Data4[1] = (UINT8)(MacAddressString [4] >> 8);
-  ForType1InputData->SystemUuid.Data4[2] = (UINT8)MacAddressString [5];
-  ForType1InputData->SystemUuid.Data4[3] = (UINT8)(MacAddressString [5] >> 8);
+  if ( MacAddressString != NULL) {
+    ForType1InputData->SystemUuid.Data1 = (UINT32)MacAddressString [0] + 
(((UINT32)MacAddressString [1]) << 16);
+    ForType1InputData->SystemUuid.Data2 = (UINT16)MacAddressString [2];
+    ForType1InputData->SystemUuid.Data3 = (UINT16)MacAddressString [3];
+    ForType1InputData->SystemUuid.Data4[0] = (UINT8)MacAddressString [4];
+    ForType1InputData->SystemUuid.Data4[1] = (UINT8)(MacAddressString [4] >> 
8);
+    ForType1InputData->SystemUuid.Data4[2] = (UINT8)MacAddressString [5];
+    ForType1InputData->SystemUuid.Data4[3] = (UINT8)(MacAddressString [5] >> 
8);
+ }
   
   CopyMem ((UINT8 *) (&SmbiosRecord->Uuid),&ForType1InputData->SystemUuid,16);
 
diff --git 
a/Platform/BroxtonPlatformPkg/Common/Library/DxeSmbiosProcessorLib/DxeSmbiosProcessorLib.c
 
b/Platform/BroxtonPlatformPkg/Common/Library/DxeSmbiosProcessorLib/DxeSmbiosProcessorLib.c
index f182c8d..e4d157e 100644
--- 
a/Platform/BroxtonPlatformPkg/Common/Library/DxeSmbiosProcessorLib/DxeSmbiosProcessorLib.c
+++ 
b/Platform/BroxtonPlatformPkg/Common/Library/DxeSmbiosProcessorLib/DxeSmbiosProcessorLib.c
@@ -1,7 +1,7 @@
 /** @file
   Smbios Processor Information Driver which produces Smbios type 4 and 7 
tables.
 
-  Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2016 - 2018, Intel Corporation. All rights reserved.<BR>
 
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD 
License
@@ -276,6 +276,11 @@ InstallSmbiosCacheInfo (
       // Allocate full record, including fixed data region, and string buffer 
region.
       //
       SmbiosType7Record = (SMBIOS_TABLE_TYPE7 *) AllocateZeroPool (sizeof 
(SMBIOS_TABLE_TYPE7) + StringBufferLength);
+      if (SmbiosType7Record == NULL) {
+        DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n"));
+        return EFI_OUT_OF_RESOURCES;
+      }
+
       SmbiosStringBufferPtr = ((UINT8 *) SmbiosType7Record) + sizeof 
(SMBIOS_TABLE_TYPE7);
 
       //
diff --git 
a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c
 
b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c
index c76f433..aa41981 100644
--- 
a/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c
+++ 
b/Platform/BroxtonPlatformPkg/Common/Library/PeiFspPolicyInitLib/PeiFspSaPolicyInitLib.c
@@ -1,7 +1,7 @@
 /** @file
   Implementation of Fsp SA Policy Initialization.
 
-  Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
 
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD 
License
@@ -133,6 +133,10 @@ PeiFspSaPolicyInitPreMem (
 
   VariableSize = sizeof (SYSTEM_CONFIGURATION);
   SystemConfiguration = AllocateZeroPool (VariableSize);
+  if (SystemConfiguration == NULL) {
+    DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n"));
+    return EFI_OUT_OF_RESOURCES;
+  }
 
   Status = VariableServices->GetVariable (
                                VariableServices,
@@ -212,6 +216,10 @@ PeiFspSaPolicyInit (
 
   VariableSize = sizeof (SYSTEM_CONFIGURATION);
   SystemConfiguration = AllocateZeroPool (VariableSize);
+  if (SystemConfiguration == NULL) {
+    DEBUG ((DEBUG_ERROR, "Fail to allocate memory\n"));
+    return EFI_OUT_OF_RESOURCES;
+  }
 
   Status = VariableServices->GetVariable (
                                VariableServices,
diff --git 
a/Platform/BroxtonPlatformPkg/Common/SampleCode/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c
 
b/Platform/BroxtonPlatformPkg/Common/SampleCode/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c
index 7343b77..5f1f13a 100644
--- 
a/Platform/BroxtonPlatformPkg/Common/SampleCode/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c
+++ 
b/Platform/BroxtonPlatformPkg/Common/SampleCode/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c
@@ -3,7 +3,7 @@
   register TemporaryRamDonePpi to call TempRamExit API, and register 
MemoryDiscoveredPpi
   notify to call FspSiliconInit API.
 
-  Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.<BR>
 
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD 
License
@@ -228,6 +228,10 @@ PeiMasterBootModeNotify (
   // Copy default FSP-S UPD data from Flash
   //
   FspsHeaderPtr = (FSP_INFO_HEADER *) FspFindFspHeader (PcdGet32 
(PcdFspsBaseAddress));
+  if (FspsHeaderPtr == NULL) {
+    DEBUG ((DEBUG_ERROR, "Fail to get Fsps Header\n"));
+    return EFI_UNSUPPORTED;
+  }
   FspsHeaderPtr->ImageBase = (UINT32) (PcdGet32 (PcdFspsBaseAddress));
 
   FspsUpdDataPtr = (FSPS_UPD_COMMON *) AllocateZeroPool ((UINTN) 
FspsHeaderPtr->CfgRegionSize);
-- 
2.10.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to