Align the perf data between FPDT and DP.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13461 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
lzeng14
2012-06-19 14:43:33 +00:00
parent 23b0b15526
commit 26c0ba7799
4 changed files with 94 additions and 49 deletions

View File

@@ -1664,6 +1664,7 @@ BdsLibDoLegacyBoot (
{
EFI_STATUS Status;
EFI_LEGACY_BIOS_PROTOCOL *LegacyBios;
EFI_EVENT LegacyBootEvent;
Status = gBS->LocateProtocol (&gEfiLegacyBiosProtocolGuid, NULL, (VOID **) &LegacyBios);
if (EFI_ERROR (Status)) {
@@ -1681,7 +1682,16 @@ BdsLibDoLegacyBoot (
// Write boot to OS performance data for legacy boot.
//
PERF_CODE (
WriteBootToOsPerformanceData ();
//
// Create an event to be signalled when Legacy Boot occurs to write performance data.
//
Status = EfiCreateEventLegacyBootEx(
TPL_NOTIFY,
WriteBootToOsPerformanceData,
NULL,
&LegacyBootEvent
);
ASSERT_EFI_ERROR (Status);
);
DEBUG ((DEBUG_INFO | DEBUG_LOAD, "Legacy Boot: %S\n", Option->Description));
@@ -2219,10 +2229,9 @@ BdsLibBootViaBootOption (
LIST_ENTRY TempBootLists;
EFI_BOOT_LOGO_PROTOCOL *BootLogo;
//
// Record the performance data for End of BDS
//
PERF_END(NULL, "BDS", NULL, 0);
PERF_CODE (
AllocateMemoryForPerformanceData ();
);
*ExitDataSize = 0;
*ExitData = NULL;
@@ -2423,7 +2432,7 @@ BdsLibBootViaBootOption (
// Write boot to OS performance data for UEFI boot
//
PERF_CODE (
WriteBootToOsPerformanceData ();
WriteBootToOsPerformanceData (NULL, NULL);
);
//