]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
efi_loader: fix efi_debug_image_info_normal allocation
authorVincent Stehlé <vincent.stehle@arm.com>
Tue, 3 Feb 2026 12:59:41 +0000 (13:59 +0100)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Fri, 6 Feb 2026 08:57:00 +0000 (09:57 +0100)
When adding a new EFI Debug Image Info entry, we allocate memory for a new
EFI Debug Image Info Normal structure and we add a new entry into the EFI
Debug Image Info Table, which is in fact just a pointer to the allocated
structure.

However, when allocating memory for the new structure we allocate memory
for the wrong type, leading to allocating memory for just a pointer instead
of the desired structure.

Fix the type used during allocation.

Fixes: 146546138af5 ("efi: add EFI_DEBUG_IMAGE_INFO for debug")
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Cc: Tom Rini <trini@konsulko.com>
Cc: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
lib/efi_loader/efi_debug_support.c

index 490b0bb7088fb2cd30b4d2b3df68c2155b678975..8d0c133871ea694a0670bdba5b90d09e9eaa4595 100644 (file)
@@ -111,7 +111,7 @@ efi_status_t efi_core_new_debug_image_info_entry(u32 image_info_type,
 
        /* Allocate data for new entry. */
        ret = efi_allocate_pool(EFI_BOOT_SERVICES_DATA,
-                               sizeof(union efi_debug_image_info),
+                               sizeof(struct efi_debug_image_info_normal),
                                (void **)(&(*table)[index].normal_image));
        if (ret == EFI_SUCCESS && (*table)[index].normal_image) {
                /* Update the entry. */