From: Michael Kubacki <michael.kuba...@microsoft.com> Makes the OutTable parameter in DumpAcpiRsdt() and DumpAcpiXsdt() optional since the pointer passed can be NULL if the Signature pointer is also NULL.
Can fix a potential failure in TestPointCheckAcpi(). Cc: Chasel Chiu <chasel.c...@intel.com> Cc: Nate DeSimone <nathaniel.l.desim...@intel.com> Cc: Liming Gao <gaolim...@byosoft.com.cn> Cc: Eric Dong <eric.d...@intel.com> Signed-off-by: Michael Kubacki <michael.kuba...@microsoft.com> --- Platform/Intel/MinPlatformPkg/Test/Library/TestPointCheckLib/DxeCheckAcpi.c | 32 ++++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Platform/Intel/MinPlatformPkg/Test/Library/TestPointCheckLib/DxeCheckAcpi.c b/Platform/Intel/MinPlatformPkg/Test/Library/TestPointCheckLib/DxeCheckAcpi.c index cd8f538f7f3f..3d75e5012a4c 100644 --- a/Platform/Intel/MinPlatformPkg/Test/Library/TestPointCheckLib/DxeCheckAcpi.c +++ b/Platform/Intel/MinPlatformPkg/Test/Library/TestPointCheckLib/DxeCheckAcpi.c @@ -477,7 +477,7 @@ DumpAcpiTable ( ) { EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE *Fadt; - + if (Table == NULL) { return ; } @@ -535,7 +535,7 @@ CheckAcpiTableResource ( ) { EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE *Fadt; - + if (Table == NULL) { return EFI_INVALID_PARAMETER; } @@ -592,7 +592,7 @@ EFI_STATUS DumpAcpiRsdt ( IN EFI_ACPI_DESCRIPTION_HEADER *Rsdt, IN UINT32 *Signature, OPTIONAL - OUT VOID **OutTable, + OUT VOID **OutTable, OPTIONAL IN BOOLEAN DumpPrint, IN BOOLEAN CheckResource ) @@ -610,7 +610,7 @@ DumpAcpiRsdt ( if (OutTable != NULL) { *OutTable = NULL; - } else { + } else if ((OutTable == NULL) && (Signature != NULL)) { return EFI_INVALID_PARAMETER; } @@ -632,7 +632,7 @@ DumpAcpiRsdt ( *OutTable = Table; } } - + if (OutTable != NULL) { if (*OutTable == NULL) { return EFI_NOT_FOUND; @@ -646,7 +646,7 @@ EFI_STATUS DumpAcpiXsdt ( IN EFI_ACPI_DESCRIPTION_HEADER *Xsdt, IN UINT32 *Signature, OPTIONAL - OUT VOID **OutTable, + OUT VOID **OutTable, OPTIONAL IN BOOLEAN DumpPrint, IN BOOLEAN CheckResource ) @@ -662,16 +662,16 @@ DumpAcpiXsdt ( if (Xsdt == NULL) { return EFI_INVALID_PARAMETER; } - + if (OutTable != NULL) { *OutTable = NULL; - } else { + } else if ((OutTable == NULL) && (Signature != NULL)) { return EFI_INVALID_PARAMETER; } ReturnStatus = EFI_SUCCESS; EntryCount = (Xsdt->Length - sizeof (EFI_ACPI_DESCRIPTION_HEADER)) / sizeof(UINT64); - + BasePtr = (UINTN)(Xsdt + 1); for (Index = 0; Index < EntryCount; Index ++) { CopyMem (&EntryPtr, (VOID *)(BasePtr + Index * sizeof(UINT64)), sizeof(UINT64)); @@ -783,7 +783,7 @@ TestPointCheckAcpi ( if (Status == EFI_NOT_FOUND) { Status = DumpAcpiWithGuid (&gEfiAcpi10TableGuid, NULL, NULL, TRUE, FALSE); } - + if (EFI_ERROR(Status)) { DEBUG ((DEBUG_ERROR, "No ACPI table\n")); TestPointLibAppendErrorString ( @@ -796,7 +796,7 @@ TestPointCheckAcpi ( } DEBUG ((DEBUG_INFO, "==== TestPointCheckAcpi - Exit\n")); - + return Status; } @@ -806,9 +806,9 @@ TestPointCheckAcpiGcdResource ( ) { EFI_STATUS Status; - + DEBUG ((DEBUG_INFO, "==== TestPointCheckAcpiGcdResource - Enter\n")); - + // // Check the ACPI existence // @@ -816,7 +816,7 @@ TestPointCheckAcpiGcdResource ( if (Status == EFI_NOT_FOUND) { Status = DumpAcpiWithGuid (&gEfiAcpi10TableGuid, NULL, NULL, FALSE, FALSE); } - + if (!EFI_ERROR(Status)) { // // Then check resource in ACPI and GCD @@ -828,7 +828,7 @@ TestPointCheckAcpiGcdResource ( Status = DumpAcpiWithGuid (&gEfiAcpi10TableGuid, NULL, NULL, FALSE, TRUE); } } - + if (EFI_ERROR(Status)) { DEBUG ((DEBUG_ERROR, "ACPI table resource not in GCD\n")); TestPointLibAppendErrorString ( @@ -840,7 +840,7 @@ TestPointCheckAcpiGcdResource ( ); } DEBUG ((DEBUG_INFO, "==== TestPointCheckAcpiGcdResource - Exit\n")); - + return Status; } -- 2.28.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#78715): https://edk2.groups.io/g/devel/message/78715 Mute This Topic: https://groups.io/mt/84686310/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-