edk2/MdeModulePkg
Joey Vagedes ce61d5f327 MdeModulePkg: DxeReportStatusCodeLib: Do not query protocol
This commit stops the library from querying the protocol database for
the status code protocol at the time of library function use. This logic
can result in a TPL inversion if the protocol has not yet been cached
and the caller is calling the library function when the TPL is higher
then TPL_NOTIFY.

Instead, the protocol is now located during the constructor of the
library. If the protocol is not found, then an on-protocol install event
is registered which will cache the protocol. A destructor is also added
to close the event in the scenario that the driver is unloaded before
the protocol is installed.

Signed-off-by: Joey Vagedes <joey.vagedes@gmail.com>
2026-01-14 04:00:20 +00:00
..
Application MdeModulePkg/UiApp: Remove unused variable 2025-09-04 01:43:03 +00:00
Bus MdeModulePkg/UfsPassThruDxe:Fix Ufs DM Command issue 2025-12-24 06:41:24 +00:00
Core MdeModulePkg: Fix FreePages not existent memory 2025-12-30 01:36:38 +00:00
Include MdeModulePkg: fix various typos 2025-11-21 21:49:59 +00:00
Library MdeModulePkg: DxeReportStatusCodeLib: Do not query protocol 2026-01-14 04:00:20 +00:00
Logo MdeModulePkg: Remove ARM32 Support 2025-09-25 22:04:10 +00:00
Test MdeModulePkg/Test/Include: Fix SecurityManagement include guard 2025-09-19 04:41:29 +00:00
Universal MdeModulePkg: Optimize the process while cleaning dynamic string 2026-01-08 09:44:39 +00:00
MdeModulePkg.ci.yaml MdeModulePkg: Add duplicate exception for gUiAppFileGuid 2025-03-06 14:18:10 +01:00
MdeModulePkg.dec MdeModulePkg: Define PCD for SATA ready for operation timeout. 2025-11-22 17:01:23 +00:00
MdeModulePkg.dsc MdeModulePkg: Remove ARM32 Support 2025-09-25 22:04:10 +00:00
MdeModulePkg.uni MdeModulePkg: Deprecate EFI_UNICODE_COLLATION_PROTOCOL_GUID 2025-09-05 13:50:50 +00:00
MdeModulePkgExtra.uni MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00