mirror of
https://git.proxmox.com/git/mirror_edk2
synced 2025-11-03 05:25:29 +00:00
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 | ||