summaryrefslogtreecommitdiff
path: root/IntelFrameworkModulePkg/Library/GenericBdsLib/Performance.c
AgeCommit message (Collapse)Author
2015-09-30IntelFrameworkModulePkg GenericBdsLib: Do not assume perf entry count has no ↵Star Zeng
change Current implementation assumes the performance entry count has no change from multiple GetPerformanceMeasurement() while loops, it may cause the allocated buffer for PerfEntriesAsDxeHandle at the first loop to be overflowed if the following loop has the count changed. This patch is also to sync the change at commit R18417 "MdeModulePkg: Fix a performance data buffer overrun issue". Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18562 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-07IntelFrameworkModulePkg GenericBdsLib: Resolve array size mismatchHao Wu
Match the size of array GaugeString defined in function WriteBootToOsPerformanceData() with the size of field 'Token' defined in struct PERF_DATA in MdeModulePkg\Include\Guid\Performance.h. Doing so will ensure the size consistency when doing StrCpyS() between PERF_DATA.Token and GaugeString (like here in Performance.c). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17851 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-30IntelFrameworkModulePkg GenericBdsLib: Use safe string functionsHao Wu
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17733 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-23Move the memory allocation and variable set to BdsEntry, use VariableLock ↵lzeng14
protocol to lock the L”PerfDataMemAddr” variable and prevent malware to update it. Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14386 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-19Align the perf data between FPDT and DP.lzeng14
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
2010-04-23Update the copyright notice formathhtian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10414 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-08Assume Tick value 1 as the beginning time of boot.jgong5
This is part of the fix of #202075 to make sure the usage model below doesn’t break: PERF_START (0, “Token1”, “Module1”, 1); PERF_END (0, “Token1”, Module1”, 0); git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9943 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-04Performance.c in GenericBdsLib is updated not to filter log entries that ↵jgong5
don’t contain DXE handles. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9928 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-141. Log performance data below 4Gqhuang8
2. Reuse the allocated data region if it's already allocated git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9072 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-11Do not use EfiACPIReclaimMemory type to log performance data because some OS ↵qhuang8
might reuse that memory. Maybe EfiReservedMemoryType is the best solution for that usage model. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9053 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23Update for the performance infrastructure changes:qhuang8
1. Use raw string for performance tokens 2. Reuse gPerformanceProtocolGuid as performance variable paring GUID git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7576 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-23Move BdsDxe and GenericBdsLib to IntelFrameworkModulePkg, these modules need ↵klu2
dependent on gEfiLegacyBiosProtocol to provide legacy boot support. But legacy boot is not described by PI/UEFI specification. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7354 6f19259b-4bc3-4df7-8a09-765794883524