[PATCH v2 06/15] efi/zboot: Lift efi_cache_sync_image() from efi_zboot_decompress()
Jonathan Cameron
jonathan.cameron at oss.qualcomm.com
Wed Oct 21 09:33:16 PDT 2026
On Fri, 2 Oct 2026 20:31:43 -0300
Jason Gunthorpe <jgg at nvidia.com> wrote:
> The two decompressors duplicate this call and the next patch needs to
> change the argument. Hoist it up to remove the duplication.
>
> Signed-off-by: Jason Gunthorpe <jgg at nvidia.com>
Some mutterings below, but I couldn't come up with a better code
style, so
Reviewed-by: Jonathan Cameron <jonathan.cameron at oss.qualcomm.com>
> diff --git a/drivers/firmware/efi/libstub/zboot.c b/drivers/firmware/efi/libstub/zboot.c
> index 4b76f74c56dae0..e3abaa05fc4183 100644
> --- a/drivers/firmware/efi/libstub/zboot.c
> +++ b/drivers/firmware/efi/libstub/zboot.c
> @@ -92,9 +92,11 @@ efi_zboot_entry(efi_handle_t handle, efi_system_table_t *systab)
> }
>
> // Decompress the payload into the newly allocated buffer
> - status = efi_zboot_decompress((void *)image_base, alloc_size) ?:
> - efi_stub_common(handle, image, image_base, cmdline_ptr);
> -
> + status = efi_zboot_decompress((void *)image_base, alloc_size);
> + if (status == EFI_SUCCESS) {
> + efi_cache_sync_image(image_base, alloc_size);
> + status = efi_stub_common(handle, image, image_base, cmdline_ptr);
A little ugly though less so than original code with that implicit assumption
of EFI_SUCCCESS == 0 that is avoided in most the rest of this code.
__free magic would be complex given the need to provide the size and hence
we are down to a helper. Ok. Maybe just not worth the effort given how small
the code is.
> + }
> efi_free(alloc_size, image_base);
> return status;
> }
More information about the linux-riscv
mailing list