[edk2] [patch] MdeModulePkg/FPDT: Add error message for unsupported case

Dandan Bi posted 1 patch 6 years ago
Failed in applying to current master (apply log)
.../Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c    | 3 +++
.../Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c    | 5 +++++
2 files changed, 8 insertions(+)
[edk2] [patch] MdeModulePkg/FPDT: Add error message for unsupported case
Posted by Dandan Bi 6 years ago
We have updated performance infrastructure in previous commits:
between
https://github.com/tianocore/edk2/commit/73fef64f14d1b97ae9bd4705df3becc022391eba
and
https://github.com/tianocore/edk2/commit/115eae650bfd2be2c2bc37360f4a755065e774c4
Update FPDT drivers to collect the performance data reported by
gEdkiiFpdtExtendedFirmwarePerformanceGuid.
The old implementation which collected performance data through
gEfiFirmwarePerformanceGuid is not supported now.
We should add error message to remind user for this unsupported
case in case anyone use it by mistake.

Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
---
 .../Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c    | 3 +++
 .../Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c    | 5 +++++
 2 files changed, 8 insertions(+)

diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
index e5a38121e9d..e719e9e482c 100644
--- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
+++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
@@ -552,10 +552,13 @@ FpdtStatusCodeListenerDxe (
   } else if (Data != NULL && CompareGuid (&Data->Type, &gEdkiiFpdtExtendedFirmwarePerformanceGuid)) {
     //
     // Get the Boot performance table and then install it to ACPI table.
     //
     CopyMem (&mReceivedAcpiBootPerformanceTable, Data + 1, Data->Size);
+  } else if (Data != NULL && CompareGuid (&Data->Type, &gEfiFirmwarePerformanceGuid)) {
+    DEBUG ((DEBUG_ERROR, "FpdtStatusCodeListenerDxe: Performance data reported through gEfiFirmwarePerformanceGuid will not be collected by FirmwarePerformanceDataTableDxe\n"));
+    Status = EFI_UNSUPPORTED;
   } else {
     //
     // Ignore else progress code.
     //
     Status = EFI_UNSUPPORTED;
diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
index d4ac849ed00..b011ec11030 100644
--- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
+++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
@@ -104,10 +104,15 @@ FpdtStatusCodeListenerSmm (
 
     ReleaseSpinLock (&mSmmFpdtLock);
     return EFI_SUCCESS;
   }
 
+  if (Data != NULL && CompareGuid (&Data->Type, &gEfiFirmwarePerformanceGuid)) {
+    DEBUG ((DEBUG_ERROR, "FpdtStatusCodeListenerSmm: Performance data reported through gEfiFirmwarePerformanceGuid will not be collected by FirmwarePerformanceDataTableSmm\n"));
+    return EFI_UNSUPPORTED;
+  }
+
   if ((Value != PcdGet32 (PcdProgressCodeS3SuspendStart)) &&
       (Value != PcdGet32 (PcdProgressCodeS3SuspendEnd))) {
     return EFI_UNSUPPORTED;
   }
 
-- 
2.14.3.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [patch] MdeModulePkg/FPDT: Add error message for unsupported case
Posted by Gao, Liming 6 years ago
Reviewed-by: Liming Gao <liming.gao@intel.com>

> -----Original Message-----
> From: Bi, Dandan
> Sent: Wednesday, April 11, 2018 9:27 AM
> To: edk2-devel@lists.01.org
> Cc: Gao, Liming <liming.gao@intel.com>
> Subject: [patch] MdeModulePkg/FPDT: Add error message for unsupported case
> 
> We have updated performance infrastructure in previous commits:
> between
> https://github.com/tianocore/edk2/commit/73fef64f14d1b97ae9bd4705df3becc022391eba
> and
> https://github.com/tianocore/edk2/commit/115eae650bfd2be2c2bc37360f4a755065e774c4
> Update FPDT drivers to collect the performance data reported by
> gEdkiiFpdtExtendedFirmwarePerformanceGuid.
> The old implementation which collected performance data through
> gEfiFirmwarePerformanceGuid is not supported now.
> We should add error message to remind user for this unsupported
> case in case anyone use it by mistake.
> 
> Cc: Liming Gao <liming.gao@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Dandan Bi <dandan.bi@intel.com>
> ---
>  .../Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c    | 3 +++
>  .../Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c    | 5 +++++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> index e5a38121e9d..e719e9e482c 100644
> --- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> +++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> @@ -552,10 +552,13 @@ FpdtStatusCodeListenerDxe (
>    } else if (Data != NULL && CompareGuid (&Data->Type, &gEdkiiFpdtExtendedFirmwarePerformanceGuid)) {
>      //
>      // Get the Boot performance table and then install it to ACPI table.
>      //
>      CopyMem (&mReceivedAcpiBootPerformanceTable, Data + 1, Data->Size);
> +  } else if (Data != NULL && CompareGuid (&Data->Type, &gEfiFirmwarePerformanceGuid)) {
> +    DEBUG ((DEBUG_ERROR, "FpdtStatusCodeListenerDxe: Performance data reported through gEfiFirmwarePerformanceGuid will
> not be collected by FirmwarePerformanceDataTableDxe\n"));
> +    Status = EFI_UNSUPPORTED;
>    } else {
>      //
>      // Ignore else progress code.
>      //
>      Status = EFI_UNSUPPORTED;
> diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> index d4ac849ed00..b011ec11030 100644
> --- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> +++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> @@ -104,10 +104,15 @@ FpdtStatusCodeListenerSmm (
> 
>      ReleaseSpinLock (&mSmmFpdtLock);
>      return EFI_SUCCESS;
>    }
> 
> +  if (Data != NULL && CompareGuid (&Data->Type, &gEfiFirmwarePerformanceGuid)) {
> +    DEBUG ((DEBUG_ERROR, "FpdtStatusCodeListenerSmm: Performance data reported through gEfiFirmwarePerformanceGuid will
> not be collected by FirmwarePerformanceDataTableSmm\n"));
> +    return EFI_UNSUPPORTED;
> +  }
> +
>    if ((Value != PcdGet32 (PcdProgressCodeS3SuspendStart)) &&
>        (Value != PcdGet32 (PcdProgressCodeS3SuspendEnd))) {
>      return EFI_UNSUPPORTED;
>    }
> 
> --
> 2.14.3.windows.1

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