The initrd buffer isn't actually used in a writable manner, so reflect that in the types used to hold its base address.
Signed-off-by: Ahmad Fatoum <[email protected]> --- efi/initrd.c | 4 ++-- efi/loader/bootm.c | 2 +- include/efi/initrd.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/efi/initrd.c b/efi/initrd.c index 642422b38d2a..01361d0a3071 100644 --- a/efi/initrd.c +++ b/efi/initrd.c @@ -35,7 +35,7 @@ static const struct { static struct linux_initrd { struct efi_load_file_protocol base; - void *start; + const void *start; size_t size; efi_handle_t lf2_handle; } initrd; @@ -70,7 +70,7 @@ static efi_status_t EFIAPI efi_initrd_load_file2( return EFI_SUCCESS; } -int efi_initrd_register(void *initrd_base, size_t initrd_sz) +int efi_initrd_register(const void *initrd_base, size_t initrd_sz) { struct efi_boot_services *bs; efi_status_t efiret; diff --git a/efi/loader/bootm.c b/efi/loader/bootm.c index fcc17a03905f..8a0519fca3de 100644 --- a/efi/loader/bootm.c +++ b/efi/loader/bootm.c @@ -191,7 +191,7 @@ static efi_status_t efi_install_initrd(struct image_data *data, if (IS_ERR(initrd_res)) return PTR_ERR(initrd_res); if (initrd_res) - efi_initrd_register((void *)initrd_res->start, + efi_initrd_register((const void *)initrd_res->start, resource_size(initrd_res)); return EFI_SUCCESS; diff --git a/include/efi/initrd.h b/include/efi/initrd.h index 08af2d299ad6..b36875c7fe7c 100644 --- a/include/efi/initrd.h +++ b/include/efi/initrd.h @@ -5,7 +5,7 @@ #include <linux/types.h> -int efi_initrd_register(void *initrd, size_t initrd_size); +int efi_initrd_register(const void *initrd, size_t initrd_size); void efi_initrd_unregister(void); #endif -- 2.47.3
