edk2/MdeModulePkg/Core/Dxe/Event
Michael D Kinney d145aef952 MdeModulePkg/Core/Dxe: Fix TPL inversion from DEBUG() message
PR #11443 introduced a regression by adding a DEBUG() message
when the lock for events is acquired and that lock is at
TPL_HIGH_LEVEL. If DEBUG() messages are routed through Report
Status Code, and the Report Status Code Protocol has not been
located yet, then a call to gBS->LocateProtocol() is made and
that call raises TPL to TPL_NOTIFY which causes a TPL inversion.

The event lock is used to atomically update gEventSignalQueue.
There is no need for the DEBUG() message to within the event
lock scope.

The fix is to scope the event lock to only the InsertHeadList()
call to update gEventSignalQueue.

Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
2025-10-30 03:26:29 +00:00
..
Event.c MdeModulePkg/Core/Dxe: Fix TPL inversion from DEBUG() message 2025-10-30 03:26:29 +00:00
Event.h MdeModulePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Timer.c MdeModulePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Tpl.c MdeModulePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00