diff options
author | Dandan Bi <dandan.bi@intel.com> | 2021-06-28 19:50:22 +0800 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2021-11-12 07:36:23 +0000 |
commit | 466ebdd2e0919c1538d03cd59833704bd5e1c028 (patch) | |
tree | c1949267199aa345d438f496b5330cfd16529d57 /MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h | |
parent | 4c495e5e3d387b26e1f22d708ff707eee6898c17 (diff) | |
download | edk2-466ebdd2e0919c1538d03cd59833704bd5e1c028.tar.gz edk2-466ebdd2e0919c1538d03cd59833704bd5e1c028.tar.bz2 edk2-466ebdd2e0919c1538d03cd59833704bd5e1c028.zip |
MdeModulePkg/FPDT: Lock boot performance table address variable at EndOfDxeedk2-stable202111-rc1
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2957
1. Allocate performance data table at EndOfDxe and then lock the varible
which store the table address at EndOfDxe.
2. Enlarge PCD gEfiMdeModulePkgTokenSpaceGuid.PcdExtFpdtBootRecordPadSize
from 0x20000 to 0x30000 in order to hold the Delta performance data
between EndOfDxe and ReadyToBoot.
3. SMM performance data is collected by DXE modules through SMM communication
at ReadyToBoot before.
Now to do SMM communication twice, one for allocating the performance
size at EndOfDxe, another is at ReadyToBoot to get SMM performance data.
4. Make SmmCorePerformanceLib rather than FirmwarePerformanceSmm to communicate
with DxeCorePerformanceLib for SMM performance data and size.
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Diffstat (limited to 'MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h')
-rw-r--r-- | MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h index 0fbdac02de..0640c48db7 100644 --- a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h +++ b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceCommon.h @@ -11,7 +11,7 @@ FpdtSmiHandler() will receive untrusted input and do basic validation.
- Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2011 - 2021, Intel Corporation. All rights reserved.<BR>
Copyright (c), Microsoft Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -21,21 +21,6 @@ #define _FW_PERF_COMMON_H_
/**
- This function is an abstraction layer for implementation specific Mm buffer validation routine.
-
- @param Buffer The buffer start address to be checked.
- @param Length The buffer length to be checked.
-
- @retval TRUE This buffer is valid per processor architecture and not overlap with SMRAM.
- @retval FALSE This buffer is not valid per processor architecture or overlap with SMRAM.
-**/
-BOOLEAN
-IsBufferOutsideMmValid (
- IN EFI_PHYSICAL_ADDRESS Buffer,
- IN UINT64 Length
- );
-
-/**
The module Entry Point of the Firmware Performance Data Table MM driver.
@retval EFI_SUCCESS The entry point is executed successfully.
|