efi_selftest: illegal cast to pointer in initrddump
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Sun, 14 Mar 2021 09:12:01 +0000 (10:12 +0100)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Tue, 16 Mar 2021 08:37:04 +0000 (09:37 +0100)
On 32bit systems u64 cannot directly be cast to void *.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
lib/efi_selftest/initrddump.c

index c23a05c..325951b 100644 (file)
@@ -272,7 +272,7 @@ static efi_status_t get_initrd(void **initrd, efi_uintn_t *initrd_size)
                error(L"Out of memory\r\n");
                return ret;
        }
-       *initrd = (void *)buffer;
+       *initrd = (void *)(uintptr_t)buffer;
        ret = load_file2_prot->load_file(load_file2_prot, dp, false,
                                         initrd_size, *initrd);
        if (ret != EFI_SUCCESS) {