Re: [PATCH] olpc: fix endian bug in openfirmware workaround

From: Ingo Molnar
Date: Wed Sep 24 2008 - 03:54:08 EST



* Harvey Harrison <harvey.harrison@xxxxxxxxx> wrote:

> Boardrev is always treated as a u32 everywhere else, no reason to
> byteswap the 0xc2 value. The only use is to print out if it is a
> prerelease board, the test being:
>
> (olpc_platform_info.boardrev & 0xf) < 8
>
> Which is currently always true as be32_to_cpu(0xc2) & 0xf = 0
> but I doubt that was the intention here. The consequences of the bug
> are pretty minor though (incorrect boardrev displayed in dmesg when
> ofw support not configured)
>
> Also annotate the temporary used to read the boardrev in the ofw
> case.
>
> The confusion was noticed by sparse:
> arch/x86/kernel/olpc.c:206:32: warning: cast to restricted __be32
>
> Signed-off-by: Harvey Harrison <harvey.harrison@xxxxxxxxx>

applied to tip/x86/sparse-fixes, thanks Harvey!

Ingo
--
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/