[PATCH master 15/39] efi: loader: fix format specifier and missing EFI_EXIT in boot services

Ahmad Fatoum a.fatoum at pengutronix.de
Mon Feb 16 00:44:15 PST 2026


Fix efi_create_event_ext using %lu for efi_uintn_t (which is size_t),
should be %zx.

Fix efi_disconnect_controller returning 'r' directly without
EFI_EXIT after EFI_ENTRY, corrupting the nesting depth counter.

Co-Authored-By: Claude Opus 4.6 <noreply at anthropic.com>
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
 efi/loader/boot.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/efi/loader/boot.c b/efi/loader/boot.c
index 93a3412f5794..adeb2ff337b3 100644
--- a/efi/loader/boot.c
+++ b/efi/loader/boot.c
@@ -729,7 +729,7 @@ static efi_status_t EFIAPI efi_create_event_ext(
 					void *context),
 			void *notify_context, struct efi_event **event)
 {
-	EFI_ENTRY("%d, 0x%lu, %p, %p", type, notify_tpl, notify_function,
+	EFI_ENTRY("%d, 0x%zx, %p, %p", type, notify_tpl, notify_function,
 		  notify_context);
 	return EFI_EXIT2(efi_create_event(type, notify_tpl, notify_function,
 					 notify_context, NULL, event), *event);
@@ -3741,7 +3741,7 @@ efi_status_t EFIAPI efi_disconnect_controller(
 				      &number_of_children,
 				      &child_handle_buffer);
 	if (r != EFI_SUCCESS)
-		return r;
+		return EFI_EXIT(r);
 	sole_child = (number_of_children == 1);
 
 	if (child_handle) {
-- 
2.47.3




More information about the barebox mailing list