efi_loader: SignalEvent for event in signaled state
If an event is already in the signaled state, SignalEvent should not queue
the notification function but simply return EFI_SUCCESS.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
index c7e2ecb..74aa5f9 100644
--- a/lib/efi_loader/efi_boottime.c
+++ b/lib/efi_loader/efi_boottime.c
@@ -221,6 +221,8 @@
*/
void efi_signal_event(struct efi_event *event, bool check_tpl)
{
+ if (event->is_signaled)
+ return;
if (event->group) {
struct efi_event *evt;