Re: [PATCH] ARM: zImage: ensure header in LE format for BE8 kernels

From: Kevin Hilman
Date: Thu Jun 19 2014 - 16:57:15 EST


Nicolas Pitre <nicolas.pitre@xxxxxxxxxx> writes:

> On Thu, 19 Jun 2014, Kevin Hilman wrote:
>
>> I think this should probably be officialized since we've taken away the
>> ability for magic-number checking tools (like 'file') to distinguish
>> between big- and little-endian zImages.
>>
>> For now, I've updated my tools to check for 'setend be' in ARM and
>> Thumb2 mode, but if this does get officialized, I'll gladly move over to
>> it.
>
> Would you ACK this patch?
>
> ----- >8
> ARM: zImage: identify kernel endianness
>
> With patch #8067/1 applied, it is no longer possible to determine the

minor nit: I'd rather see a commit id (commit subject) instead of the
reference in RMK's patch tracker, but other than that...

> endianness of a compiled kernel image. This normally shouldn't matter
> to the boot environment, except for those cases where the selection of
> a ramdisk or root filesystem with a matching endianness has to be
> automated.
>
> Let's add a flag to the zImage header indicating the actual endianness.
> Four bytes from offset 0x30 can be interpreted as follows:
>
> 04 03 02 01 big endian kernel
>
> 01 02 03 04 little endian kernel
>
> Anything else should be interpreted as "unknown", in which case it is
> most likely that patch #8067/1 was not applied either and the zImage
> magic number at offset 0x24 could be used instead to determine
> endianness. No zImage before this patch ever produced 0x01020304 nor
> 0x04030201 at offset 0x30 so there is no confusion possible.
>
> Signed-off-by: Nicolas Pitre <nico@xxxxxxxxxx>

Acked-by: Kevin Hilman <khilman@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/