[PATCH 1/4] powerpc/prom: avoid endian conversions for linux, memory-limit node

Michael Ellerman mpe at ellerman.id.au
Fri Aug 4 20:14:39 AEST 2017


Hari Bathini <hbathini at linux.vnet.ibm.com> writes:

> On Friday 04 August 2017 09:21 AM, Michael Ellerman wrote:
>> Hari Bathini <hbathini at linux.vnet.ibm.com> writes:
>>
>>> As linux,memory-limit node is set and also later used by the kernel,
>>> avoid endian conversions for this property.
>>>
>>> Fixes: 493adffcb43f ("powerpc: Make prom_init.c endian safe")
>>> Cc: stable at vger.kernel.org # 3.12+
>>> Cc: Anton Blanchard <anton at ozlabs.org>
>>> Cc: Benjamin Herrenschmidt <benh at kernel.crashing.org>
>>> Signed-off-by: Hari Bathini <hbathini at linux.vnet.ibm.com>
>>> ---
>>>   arch/powerpc/kernel/prom_init.c |    3 +--
>>>   1 file changed, 1 insertion(+), 2 deletions(-)
>> As Ben said, this is not OK. The flat device tree is a data
>> structure with a specified format[1], we don't violate the spec just to
>> avoid an endian swap.
>>
>> Is there an actual bug you're trying to solve?
>
> Yep. While retrieving this property in prom.c, no endian conversion is 
> being done.
> It was broken for a while. Let me do the endian swap in prom.c while 
> retrieving..

Does it actually not work though, mem=x on the command line?

I think that code in prom.c is basically dead code, it's still there
because we were afraid removing it would break something. These days we
parse the command line early enough that we don't need those properties.

cheers


More information about the Linuxppc-dev mailing list