mirror of
https://github.com/tianocore/edk2
synced 2026-08-27 00:23:19 -04:00
This change adds dynamic initialization of gHobList in GetHobList() to handle cases where library constructors are executed before DxeHobListLibConstructor. Issue: On ARM platforms using ArmMmuBaseLib, the ArmMmuBaseLibConstructor calls GetFirstGuidHob() before xeHobListLibConstructor has initialized gHobList, causing an ASSERT. Root Cause: ArmMmuBaseLib's constructor uses HobLib functions, but UefiPayloadPkg's DxeHobLib assumes gHobList is already initialized by DxeHobListLib's constructor. Solution: Add the same lazy initialization pattern already used in MdePkg/Library/DxeHobLib, which dynamically retrieves the HOB list from the System Configuration Table if gHobList is NULL. This change: - Aligns behavior with MdePkg/Library/DxeHobLib - Has no impact on existing functionality - Improves robustness for ARM platforms Signed-off-by: Jared Pan <jared.pan@dell.com> |
||
|---|---|---|
| .. | ||
| AcpiTimerLib | ||
| BaseSerialPortLibHob | ||
| BuildFdtLib | ||
| CbParseLib | ||
| CbSerialPortLib | ||
| CustomFdtNodeParserLib | ||
| CustomFdtNodeParserNullLib | ||
| DebugPrintErrorLevelLibHob | ||
| DxeHobLib | ||
| DxeHobListLib | ||
| DxeHobListLibNull | ||
| FdtParserLib | ||
| FlashDeviceLib | ||
| FmpDeviceSmmLib | ||
| HobParseLib | ||
| PayloadEntryHelperLib | ||
| PayloadEntryHobLib | ||
| PayloadEntryMemoryAllocationLib | ||
| PciHostBridgeLib | ||
| PciSegmentInfoLibAcpiBoardInfo | ||
| PlatformBootManagerLib | ||
| PlatformHookLib | ||
| PlatformSupportLibNull | ||
| ResetSystemLib | ||
| SblParseLib | ||
| SmmStoreLib | ||
| SpiFlashLib | ||