Re: [PATCH 02/14] include: pe.h: remove message[] from mz header definition

From: Ard Biesheuvel
Date: Thu Aug 24 2017 - 05:04:25 EST


On 24 August 2017 at 09:17, AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx> wrote:
> message[] field won't be part of the definition of mz header.
>
> This change is crucial for enabling kexec_file_load on arm64 because
> arm64's "Image" binary, as in PE format, doesn't have any data for it and
> accordingly the following check in pefile_parse_binary() will fail:
>
> chkaddr(cursor, mz->peaddr, sizeof(*pe));
>
> Signed-off-by: AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx>
> Cc: David Howells <dhowells@xxxxxxxxxx>
> Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
> Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
> Cc: David S. Miller <davem@xxxxxxxxxxxxx>
> ---
> include/linux/pe.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/pe.h b/include/linux/pe.h
> index 143ce75be5f0..3482b18a48b5 100644
> --- a/include/linux/pe.h
> +++ b/include/linux/pe.h
> @@ -166,7 +166,7 @@ struct mz_hdr {
> uint16_t oem_info; /* oem specific */
> uint16_t reserved1[10]; /* reserved */
> uint32_t peaddr; /* address of pe header */
> - char message[64]; /* message to print */
> + char message[]; /* message to print */
> };
>
> struct mz_reloc {

Reviewed-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>