mirror of https://github.com/acidanthera/audk.git
94092aa603
Current memory profile feature: 1. Shows which line of code calls gBS->AllocateXXX(). But most entries are from MemoryAllocationLib. 2. Records at the start. 3. Records all modules. Enhanced memory profile feature: 1. User can know which line of code calls AllocateXXX() API instead of gBS->Allocate(). 2. User can know which line of code calls a specific API that will call AllocateXXX(). 3. User can know total memory allocated by a specific line of code. 4. User can configure to record single module. 5. User can configure when to enable recording. 6. User can know RVA<->Symbol (Function, Source, Line). For the enhanced memory profile feature, 1. Extend MEMORY_PROFILE_DRIVER_INFO to include PdbString. 2. Extend MEMORY_PROFILE_ALLOC_INFO to include ActionString. 3. Extend MEMORY_PROFILE_ACTION to indicate action in memory allocation lib and user defined action. 4. Extend memory profile protocol to include GetRecordingState/ SetRecordingState/Record. 5. Define SMM memory profile protocol. 6. Extend PcdMemoryProfilePropertyMask to support disable recording at the start. 7. Introduce new PCD PcdMemoryProfileDriverPath to control which drivers need memory profile data. Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> |
||
---|---|---|
.. | ||
AcpiS3Context.h | ||
BootScriptExecutorVariable.h | ||
CapsuleVendor.h | ||
ConnectConInEvent.h | ||
ConsoleInDevice.h | ||
ConsoleOutDevice.h | ||
Crc32GuidedSectionExtraction.h | ||
DebugMask.h | ||
DriverSampleHii.h | ||
EventExitBootServiceFailed.h | ||
FaultTolerantWrite.h | ||
FirmwarePerformance.h | ||
HiiBootMaintenanceFormset.h | ||
HiiResourceSampleHii.h | ||
IdleLoopEvent.h | ||
Ip4Config2Hii.h | ||
Ip4IScsiConfigHii.h | ||
LoadModuleAtFixedAddress.h | ||
LzmaDecompress.h | ||
MdeModuleHii.h | ||
MdeModulePkgTokenSpace.h | ||
MemoryProfile.h | ||
MemoryStatusCodeRecord.h | ||
MemoryTypeInformation.h | ||
MtcVendor.h | ||
PcdDataBaseHobGuid.h | ||
PcdDataBaseSignatureGuid.h | ||
Performance.h | ||
PiSmmCommunicationRegionTable.h | ||
PlatDriOverrideHii.h | ||
RamDiskHii.h | ||
RecoveryDevice.h | ||
SmmLockBox.h | ||
SmmVariableCommon.h | ||
StandardErrorDevice.h | ||
StatusCodeCallbackGuid.h | ||
StatusCodeDataTypeDebug.h | ||
StatusCodeDataTypeVariable.h | ||
SystemNvDataGuid.h | ||
TtyTerm.h | ||
UsbKeyBoardLayout.h | ||
VarErrorFlag.h | ||
VariableFormat.h | ||
VariableIndexTable.h | ||
VlanConfigHii.h | ||
ZeroGuid.h |