On Tue, Jul 15, 2025 at 1:37 PM Daniel Kiper <dki...@net-space.pl> wrote:
>
> On Mon, Jul 14, 2025 at 09:08:48AM +0100, Frediano Ziglio via Grub-devel 
> wrote:
> > From UEFI specifications 2.10, section 13.2.2,
> > "EFI_LOAD_FILE2_PROTOCOL.LoadFile" (see
> > https://uefi.org/specs/UEFI/2.10/13_Protocols_Media_Access.html),
> > for BufferSize:
> >
> >     On input the size of Buffer in bytes. On output with a return code
> >     of EFI_SUCCESS, the amount of data transferred to Buffer. On output
> >     with a return code of EFI_BUFFER_TOO_SMALL, the size of Buffer
> >     required to retrieve the requested file.
> >
> > so set *buffer_size correctly.
> >
> > Signed-off-by: Frediano Ziglio <frediano.zig...@cloud.com>
> > ---
> > Changes since v1:
> > - improved commit message
> >
> > Changes since v2:
> > - return size only for EFI_SUCCESS.
> > ---
> >  grub-core/loader/efi/linux.c | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/grub-core/loader/efi/linux.c b/grub-core/loader/efi/linux.c
> > index 36dea2931..33415674c 100644
> > --- a/grub-core/loader/efi/linux.c
> > +++ b/grub-core/loader/efi/linux.c
> > @@ -365,6 +365,8 @@ grub_efi_initrd_load_file2 (grub_efi_load_file2_t *this,
> >
> >    if (grub_initrd_load (&initrd_ctx, buffer))
> >      status = GRUB_EFI_DEVICE_ERROR;
> > +  if (status == GRUB_EFI_SUCCESS)
>
> "else" should be enough here...
>

I'll do it

> > +    *buffer_size = initrd_size;
>
> Daniel

Frediano

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to