[PATCH] fs: btrfs: fix reading when length specified
Sam Edwards
cfsworks at gmail.com
Fri Nov 17 01:02:27 CET 2023
On 11/15/23 21:43, Qu Wenruo wrote:
>
> I'm not sure why this happend for the EFI environment.
>
> Doesn't the EFI runtime should also try to read the whole file? Or that
> EFI environment has specified the length to read instead?
>
Hi Qu,
The Linux EFISTUB file loading routine (handle_cmdline_files) reads
files in chunks, and not (necessarily) the whole file in one go. On x86
platforms, the chunk size is 1MB, and the comments explain that this is
to work around firmware implementations that have problems with large
reads. On non-x86 platforms, the chunk size is ULONG_MAX -- which in
practice means it reads the whole file in one exact-filesize chunk.
So, to answer your questions: "either/both depending on platform."
(The bug in the U-Boot implementation doubtlessly affects more than just
EFI; I only happened to discover it while trying to use EFI.)
>>
>> Signed-off-by: Sam Edwards <CFSworks at gmail.com>
>
> Anyway, the fix looks good to me.
>
> Reviewed-by: Qu Wenruo <wqu at suse.com>
Thank you greatly for the review!
>
> Thanks,
> Qu
Likewise,
Sam
More information about the U-Boot
mailing list