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