loader: Drop argv[] argument in grub_initrd_load()

In the case of an error grub_initrd_load() uses argv[] to print the
filename that caused the error. It is also possible to obtain the
filename from the file handles and there is no need to duplicate that
information in argv[], so let's drop it.

Signed-off-by: Nikita Ermakov <arei@altlinux.org>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
Backport-commit: also for mips64
Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
This commit is contained in:
Wentao Guan 2024-08-25 17:41:22 +08:00
parent 26a4e6f96f
commit e45b2b4e44
12 changed files with 13 additions and 14 deletions

View File

@ -422,7 +422,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
grub_dprintf ("loader", "Loading initrd to 0x%08x\n", grub_dprintf ("loader", "Loading initrd to 0x%08x\n",
(grub_addr_t) initrd_start); (grub_addr_t) initrd_start);
if (grub_initrd_load (&initrd_ctx, argv, (void *) initrd_start)) if (grub_initrd_load (&initrd_ctx, (void *) initrd_start))
goto fail; goto fail;
initrd_end = initrd_start + size; initrd_end = initrd_start + size;

View File

@ -657,7 +657,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
goto fail; goto fail;
} }
if (grub_initrd_load (&initrd_ctx, argv, initrd_mem)) if (grub_initrd_load (&initrd_ctx, initrd_mem))
goto fail; goto fail;
initrd_start = (grub_addr_t) initrd_mem; initrd_start = (grub_addr_t) initrd_mem;

View File

@ -1467,7 +1467,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
initrd_mem_target = get_physical_target_address (ch); initrd_mem_target = get_physical_target_address (ch);
} }
if (grub_initrd_load (&initrd_ctx, argv, initrd_mem)) if (grub_initrd_load (&initrd_ctx, initrd_mem))
goto fail; goto fail;
grub_dprintf ("linux", "Initrd, addr=0x%x, size=0x%x\n", grub_dprintf ("linux", "Initrd, addr=0x%x, size=0x%x\n",

View File

@ -458,7 +458,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
initrd_addr = get_physical_target_address (ch); initrd_addr = get_physical_target_address (ch);
} }
if (grub_initrd_load (&initrd_ctx, argv, initrd_chunk)) if (grub_initrd_load (&initrd_ctx, initrd_chunk))
goto fail; goto fail;
lh->ramdisk_image = initrd_addr; lh->ramdisk_image = initrd_addr;

View File

@ -801,8 +801,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
if (err) if (err)
goto fail; goto fail;
if (grub_initrd_load (&initrd_ctx, argv, if (grub_initrd_load (&initrd_ctx, get_virtual_current_address (ch)))
get_virtual_current_address (ch)))
goto fail; goto fail;
} }

View File

@ -563,7 +563,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
grub_dprintf ("linux", "[addr=0x%lx, size=0x%lx]\n", grub_dprintf ("linux", "[addr=0x%lx, size=0x%lx]\n",
(grub_uint64_t) initrd_mem, initrd_size); (grub_uint64_t) initrd_mem, initrd_size);
if (grub_initrd_load (&initrd_ctx, argv, initrd_mem)) if (grub_initrd_load (&initrd_ctx, initrd_mem))
goto fail; goto fail;
fail: fail:
grub_initrd_close (&initrd_ctx); grub_initrd_close (&initrd_ctx);

View File

@ -250,7 +250,7 @@ extern int ventoy_need_prompt_load_file(void);
extern grub_ssize_t ventoy_load_file_with_prompt(grub_file_t file, void *buf, grub_ssize_t size); extern grub_ssize_t ventoy_load_file_with_prompt(grub_file_t file, void *buf, grub_ssize_t size);
grub_err_t grub_err_t
grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx, grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx,
char *argv[], void *target) void *target)
{ {
grub_uint8_t *ptr = target; grub_uint8_t *ptr = target;
int i; int i;
@ -298,7 +298,7 @@ grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx,
{ {
if (!grub_errno) if (!grub_errno)
grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"), grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"),
argv[i]); initrd_ctx->components[i].file->name);
grub_initrd_close (initrd_ctx); grub_initrd_close (initrd_ctx);
return grub_errno; return grub_errno;
} }

View File

@ -455,7 +455,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
initrd_dest = get_physical_target_address (ch) | 0x80000000; initrd_dest = get_physical_target_address (ch) | 0x80000000;
} }
if (grub_initrd_load (&initrd_ctx, argv, initrd_src)) if (grub_initrd_load (&initrd_ctx, initrd_src))
goto fail; goto fail;
#ifdef GRUB_MACHINE_MIPS_QEMU_MIPS #ifdef GRUB_MACHINE_MIPS_QEMU_MIPS

View File

@ -941,7 +941,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
initrd_dest = get_virtual_current_address (ch); initrd_dest = get_virtual_current_address (ch);
} }
if (grub_initrd_load (&initrd_ctx, argv, initrd_dest)) if (grub_initrd_load (&initrd_ctx, initrd_dest))
goto fail; goto fail;
grub_snprintf ((char *) linux_args_addr + rd_addr_arg_off, grub_snprintf ((char *) linux_args_addr + rd_addr_arg_off,

View File

@ -363,7 +363,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
grub_dprintf ("loader", "Loading initrd at 0x%x, size 0x%x\n", addr, size); grub_dprintf ("loader", "Loading initrd at 0x%x, size 0x%x\n", addr, size);
if (grub_initrd_load (&initrd_ctx, argv, (void *) addr)) if (grub_initrd_load (&initrd_ctx, (void *) addr))
goto fail; goto fail;
initrd_addr = addr; initrd_addr = addr;

View File

@ -413,7 +413,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
grub_dprintf ("loader", "Loading initrd at vaddr 0x%lx, paddr 0x%lx, size 0x%lx\n", grub_dprintf ("loader", "Loading initrd at vaddr 0x%lx, paddr 0x%lx, size 0x%lx\n",
addr, paddr, size); addr, paddr, size);
if (grub_initrd_load (&initrd_ctx, argv, (void *) addr)) if (grub_initrd_load (&initrd_ctx, (void *) addr))
goto fail; goto fail;
initrd_addr = addr; initrd_addr = addr;

View File

@ -21,4 +21,4 @@ grub_initrd_close (struct grub_linux_initrd_context *initrd_ctx);
grub_err_t grub_err_t
grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx, grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx,
char *argv[], void *target); void *target);