x86/EFI: adjust efi_multiboot2_prelude() to comply to Misra rule 18.2

While casting to pointer types may be more natural there, the subtraction
then ends up violating "Subtraction between pointers shall only be applied
to pointers that address elements of the same array". Use unsigned long
arithmetic instead.

No functional change intended.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
This commit is contained in:
Jan Beulich committed 2026-09-10 09:01:30 +02:00
1 parent c3b570e1b5
commit 04d4312440
1 file changed
+3 -3
+3 -3
View File
@@ -13,7 +13,7 @@ efi_multiboot2_prelude(uint32_t magic, const multiboot2_fixed_t *mbi)
EFI_HANDLE ImageHandle = NULL;
EFI_SYSTEM_TABLE *SystemTable = NULL;
const char *cmdline = NULL;
const void *const mbi_raw = (const void *)mbi;
unsigned long mbi_raw = (unsigned long)mbi;
bool have_bs = false;
if ( magic != MULTIBOOT2_BOOTLOADER_MAGIC )
@@ -22,10 +22,10 @@ efi_multiboot2_prelude(uint32_t magic, const multiboot2_fixed_t *mbi)
/* Skip Multiboot2 information fixed part. */
tag = _p(ROUNDUP((unsigned long)(mbi + 1), MULTIBOOT2_TAG_ALIGN));
for ( ; (const void *)(tag + 1) - mbi_raw <= mbi->total_size &&
for ( ; (unsigned long)(tag + 1) - mbi_raw <= mbi->total_size &&
tag->type != MULTIBOOT2_TAG_TYPE_END &&
tag->size >= sizeof(*tag) &&
(const void *)tag + tag->size - mbi_raw <= mbi->total_size;
(unsigned long)tag + tag->size - mbi_raw <= mbi->total_size;
tag = _p(ROUNDUP((unsigned long)tag + tag->size,
MULTIBOOT2_TAG_ALIGN)) )
{
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.