ShellPkg/UefiDpLib: Fix a DP cumulative data issue
The value of PERF_CUM_DATA.Count and PERF_CUM_DATA.Duration field keep cumulating on every execution of dp. Initialize the CumData at dp's entry point. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18727 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -14,6 +14,7 @@
|
|||||||
timer information to calculate elapsed time for each measurement.
|
timer information to calculate elapsed time for each measurement.
|
||||||
|
|
||||||
Copyright (c) 2009 - 2013, Intel Corporation. All rights reserved.
|
Copyright (c) 2009 - 2013, Intel Corporation. All rights reserved.
|
||||||
|
(C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -110,7 +111,26 @@ DumpStatistics( void )
|
|||||||
SHELL_FREE_NON_NULL (StringPtrUnknown);
|
SHELL_FREE_NON_NULL (StringPtrUnknown);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Initialize the cumulative data.
|
||||||
|
|
||||||
|
**/
|
||||||
|
VOID
|
||||||
|
InitCumulativeData (
|
||||||
|
VOID
|
||||||
|
)
|
||||||
|
{
|
||||||
|
UINTN Index;
|
||||||
|
|
||||||
|
for (Index = 0; Index < NumCum; ++Index) {
|
||||||
|
CumData[Index].Count = 0;
|
||||||
|
CumData[Index].MinDur = PERF_MAXDUR;
|
||||||
|
CumData[Index].MaxDur = 0;
|
||||||
|
CumData[Index].Duration = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
Dump performance data.
|
Dump performance data.
|
||||||
|
|
||||||
@param[in] ImageHandle The image handle.
|
@param[in] ImageHandle The image handle.
|
||||||
@ -218,6 +238,11 @@ ShellCommandRunDp (
|
|||||||
#endif // PROFILING_IMPLEMENTED
|
#endif // PROFILING_IMPLEMENTED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Initialize the pre-defined cumulative data.
|
||||||
|
//
|
||||||
|
InitCumulativeData ();
|
||||||
|
|
||||||
//
|
//
|
||||||
// Timer specific processing
|
// Timer specific processing
|
||||||
//
|
//
|
||||||
|
Reference in New Issue
Block a user