kern/efi/mm: Format string error in grub_error()

The second format string argument, GRUB_EFI_MAX_USABLE_ADDRESS, is a macro
to a number literal. However, depending on what the target architecture, the
type can be 32 or 64 bits. Cast to a 64-bit integer. Also, change the
format string literals "%llx" to use PRIxGRUB_UINT64_T.

Signed-off-by: Glenn Washburn <development@efficientek.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Glenn Washburn 2021-03-04 18:22:38 -06:00 committed by Daniel Kiper
parent 12371e40ea
commit e2ac93f09a

View File

@ -127,8 +127,9 @@ grub_efi_allocate_pages_real (grub_efi_physical_address_t address,
if (address > GRUB_EFI_MAX_USABLE_ADDRESS) if (address > GRUB_EFI_MAX_USABLE_ADDRESS)
{ {
grub_error (GRUB_ERR_BAD_ARGUMENT, grub_error (GRUB_ERR_BAD_ARGUMENT,
N_("invalid memory address (0x%llx > 0x%llx)"), N_("invalid memory address (0x%" PRIxGRUB_UINT64_T
address, GRUB_EFI_MAX_USABLE_ADDRESS); " > 0x%" PRIxGRUB_UINT64_T ")"),
address, (grub_efi_uint64_t) GRUB_EFI_MAX_USABLE_ADDRESS);
return NULL; return NULL;
} }