From 38be1b3221b1e85cac1af8a67c733752265425d7 Mon Sep 17 00:00:00 2001 From: PA4WDH Date: Wed, 25 Aug 2021 12:02:32 +0200 Subject: Add sys-boot/grub-2.06-r1 --- ...-001-loader-drop-argv-in-grub_initrd_load.patch | 173 +++++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 sys-boot/grub/files/grub-2.06-001-loader-drop-argv-in-grub_initrd_load.patch (limited to 'sys-boot/grub/files/grub-2.06-001-loader-drop-argv-in-grub_initrd_load.patch') diff --git a/sys-boot/grub/files/grub-2.06-001-loader-drop-argv-in-grub_initrd_load.patch b/sys-boot/grub/files/grub-2.06-001-loader-drop-argv-in-grub_initrd_load.patch new file mode 100644 index 0000000..66d91dd --- /dev/null +++ b/sys-boot/grub/files/grub-2.06-001-loader-drop-argv-in-grub_initrd_load.patch @@ -0,0 +1,173 @@ + +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 +--- + grub-core/loader/arm/linux.c | 2 +- + grub-core/loader/arm64/linux.c | 2 +- + grub-core/loader/i386/linux.c | 2 +- + grub-core/loader/i386/pc/linux.c | 2 +- + grub-core/loader/i386/xen.c | 3 +-- + grub-core/loader/ia64/efi/linux.c | 2 +- + grub-core/loader/linux.c | 4 ++-- + grub-core/loader/mips/linux.c | 2 +- + grub-core/loader/powerpc/ieee1275/linux.c | 2 +- + grub-core/loader/sparc64/ieee1275/linux.c | 2 +- + include/grub/linux.h | 2 +- + 11 files changed, 12 insertions(+), 13 deletions(-) + +diff --git a/grub-core/loader/arm/linux.c b/grub-core/loader/arm/linux.c +index ed23dc71e..1f7ab7578 100644 +--- a/grub-core/loader/arm/linux.c ++++ b/grub-core/loader/arm/linux.c +@@ -422,7 +422,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + grub_dprintf ("loader", "Loading initrd to 0x%08x\n", + (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; + + initrd_end = initrd_start + size; +diff --git a/grub-core/loader/arm64/linux.c b/grub-core/loader/arm64/linux.c +index ef3e9f944..aed7a200b 100644 +--- a/grub-core/loader/arm64/linux.c ++++ b/grub-core/loader/arm64/linux.c +@@ -266,7 +266,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + goto fail; + } + +- if (grub_initrd_load (&initrd_ctx, argv, initrd_mem)) ++ if (grub_initrd_load (&initrd_ctx, initrd_mem)) + goto fail; + + initrd_start = (grub_addr_t) initrd_mem; +diff --git a/grub-core/loader/i386/linux.c b/grub-core/loader/i386/linux.c +index 9f74a96b1..f30a1586a 100644 +--- a/grub-core/loader/i386/linux.c ++++ b/grub-core/loader/i386/linux.c +@@ -1107,7 +1107,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + 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; + + grub_dprintf ("linux", "Initrd, addr=0x%x, size=0x%x\n", +diff --git a/grub-core/loader/i386/pc/linux.c b/grub-core/loader/i386/pc/linux.c +index 2a2995201..efeeeb206 100644 +--- a/grub-core/loader/i386/pc/linux.c ++++ b/grub-core/loader/i386/pc/linux.c +@@ -462,7 +462,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + 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; + + lh->ramdisk_image = initrd_addr; +diff --git a/grub-core/loader/i386/xen.c b/grub-core/loader/i386/xen.c +index cd24874ca..3b856e842 100644 +--- a/grub-core/loader/i386/xen.c ++++ b/grub-core/loader/i386/xen.c +@@ -809,8 +809,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + if (err) + goto fail; + +- if (grub_initrd_load (&initrd_ctx, argv, +- get_virtual_current_address (ch))) ++ if (grub_initrd_load (&initrd_ctx, get_virtual_current_address (ch))) + goto fail; + } + +diff --git a/grub-core/loader/ia64/efi/linux.c b/grub-core/loader/ia64/efi/linux.c +index 7987fd1ba..8873b7a55 100644 +--- a/grub-core/loader/ia64/efi/linux.c ++++ b/grub-core/loader/ia64/efi/linux.c +@@ -563,7 +563,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + grub_dprintf ("linux", "[addr=0x%lx, size=0x%lx]\n", + (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; + fail: + grub_initrd_close (&initrd_ctx); +diff --git a/grub-core/loader/linux.c b/grub-core/loader/linux.c +index 3fe390f17..d19df670e 100644 +--- a/grub-core/loader/linux.c ++++ b/grub-core/loader/linux.c +@@ -271,7 +271,7 @@ grub_initrd_close (struct grub_linux_initrd_context *initrd_ctx) + + grub_err_t + grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx, +- char *argv[], void *target) ++ void *target) + { + grub_uint8_t *ptr = target; + int i; +@@ -317,7 +317,7 @@ grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx, + { + if (!grub_errno) + 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); + return grub_errno; + } +diff --git a/grub-core/loader/mips/linux.c b/grub-core/loader/mips/linux.c +index e4ed95921..94594721d 100644 +--- a/grub-core/loader/mips/linux.c ++++ b/grub-core/loader/mips/linux.c +@@ -452,7 +452,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + 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; + + #ifdef GRUB_MACHINE_MIPS_QEMU_MIPS +diff --git a/grub-core/loader/powerpc/ieee1275/linux.c b/grub-core/loader/powerpc/ieee1275/linux.c +index 818b2a86d..a51e7a786 100644 +--- a/grub-core/loader/powerpc/ieee1275/linux.c ++++ b/grub-core/loader/powerpc/ieee1275/linux.c +@@ -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); + +- if (grub_initrd_load (&initrd_ctx, argv, (void *) addr)) ++ if (grub_initrd_load (&initrd_ctx, (void *) addr)) + goto fail; + + initrd_addr = addr; +diff --git a/grub-core/loader/sparc64/ieee1275/linux.c b/grub-core/loader/sparc64/ieee1275/linux.c +index bb47ee0cc..ac2206f3c 100644 +--- a/grub-core/loader/sparc64/ieee1275/linux.c ++++ b/grub-core/loader/sparc64/ieee1275/linux.c +@@ -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", + addr, paddr, size); + +- if (grub_initrd_load (&initrd_ctx, argv, (void *) addr)) ++ if (grub_initrd_load (&initrd_ctx, (void *) addr)) + goto fail; + + initrd_addr = addr; +diff --git a/include/grub/linux.h b/include/grub/linux.h +index 594a3f307..a96ac2048 100644 +--- a/include/grub/linux.h ++++ b/include/grub/linux.h +@@ -21,4 +21,4 @@ grub_initrd_close (struct grub_linux_initrd_context *initrd_ctx); + + grub_err_t + grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx, +- char *argv[], void *target); ++ void *target); +-- +2.29.3 -- cgit v1.2.3