[edk2-devel] [PATCH 1/2] MinPlatformPkg/AcpiTables: Initialize variables before used

Chiu, Chasel chasel.chiu at intel.com
Mon Sep 2 13:48:09 UTC 2019


Please extend copyright. With this update, Reviewed-by: Chasel Chiu <chasel.chiu at intel.com>


> -----Original Message-----
> From: Zhang, Shenglei
> Sent: Monday, September 2, 2019 8:30 PM
> To: devel at edk2.groups.io
> Cc: Kubacki, Michael A <michael.a.kubacki at intel.com>; Chiu, Chasel
> <chasel.chiu at intel.com>; Desimone, Nathaniel L
> <nathaniel.l.desimone at intel.com>; Gao, Liming <liming.gao at intel.com>
> Subject: [PATCH 1/2] MinPlatformPkg/AcpiTables: Initialize variables before
> used
> 
> MadtStructs, NewMadtTable and MaxMadtStructCount are not initialized
> before used or at the proper place. So assign values to them at the
> beginning and change the logic when freeing MadtStructs and
> NewMadtTable.
> 
> Cc: Michael Kubacki <michael.a.kubacki at intel.com>
> Cc: Chasel Chiu <chasel.chiu at intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone at intel.com>
> Cc: Liming Gao <liming.gao at intel.com>
> Signed-off-by: Shenglei Zhang <shenglei.zhang at intel.com>
> ---
>  .../Acpi/AcpiTables/AcpiPlatform.c            | 19 +++++++++++--------
>  1 file changed, 11 insertions(+), 8 deletions(-)
> 
> diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> index 5eb72792..85d1bd9a 100644
> --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> @@ -867,13 +867,15 @@ InstallMadtFromScratch (
>    UINT32
> PcIoApicMask;
>    UINTN
> PcIoApicIndex;
> 
> +  MadtStructs = NULL;
> +  NewMadtTable = NULL;
> +  MaxMadtStructCount = 0;
> +
>    DetectApicIdMap();
> 
>    // Call for Local APIC ID Reorder
>    SortCpuLocalApicInTable ();
> 
> -  NewMadtTable = NULL;
> -
>    MaxMadtStructCount = (UINT32) (
>      MAX_CPU_NUM +    // processor local APIC structures
>      MAX_CPU_NUM +    // processor local x2APIC structures
> @@ -1115,14 +1117,15 @@ Done:
>    //
>    // Free memory
>    //
> -  for (MadtStructsIndex = 0; MadtStructsIndex < MaxMadtStructCount;
> MadtStructsIndex++) {
> -    if (MadtStructs[MadtStructsIndex] != NULL) {
> -      FreePool (MadtStructs[MadtStructsIndex]);
> +  if (MadtStructs != NULL){
> +    for (MadtStructsIndex = 0; MadtStructsIndex < MaxMadtStructCount;
> MadtStructsIndex++) {
> +      if (MadtStructs[MadtStructsIndex] != NULL) {
> +        FreePool (MadtStructs[MadtStructsIndex]);
> +      }
>      }
> +    FreePool (MadtStructs);
>    }
> -
> -  FreePool (MadtStructs);
> -
> +
>    if (NewMadtTable != NULL) {
>      FreePool (NewMadtTable);
>    }
> --
> 2.18.0.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46674): https://edk2.groups.io/g/devel/message/46674
Mute This Topic: https://groups.io/mt/33110578/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list