[edk2-devel] [PATCH v2 1/2] MinPlatformPkg/AcpiTables: Initialize variables before used
Kubacki, Michael A
michael.a.kubacki at intel.com
Thu Sep 12 06:15:40 UTC 2019
Reviewed-by: Michael Kubacki <michael.a.kubacki at intel.com>
> -----Original Message-----
> From: Zhang, Shenglei
> Sent: Wednesday, September 11, 2019 8:27 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 v2 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 | 21 +++++++++++--------
> 1 file changed, 12 insertions(+), 9 deletions(-)
>
> diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> index 5eb72792..2cc55ee8 100644
> --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
> @@ -1,7 +1,7 @@
> /** @file
> ACPI Platform Driver
>
> -Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2017-2019, Intel Corporation. All rights reserved.<BR>
> SPDX-License-Identifier: BSD-2-Clause-Patent
>
> **/
> @@ -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 (#47173): https://edk2.groups.io/g/devel/message/47173
Mute This Topic: https://groups.io/mt/34111552/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