[PATCH] powerpc: don't flush/invalidate the d/icache for an unknown relocation type

Suzuki K. Poulose suzuki at in.ibm.com
Thu Jun 27 16:36:33 EST 2013


On 06/27/2013 06:39 AM, Kevin Hao wrote:
> For an unknown relocation type since the value of r4 is just the 8bit
> relocation type, the sum of r4 and r7 may yield an invalid memory
> address. For example:
>      In normal case:
>               r4 = c00xxxxx
>               r7 = 40000000
>               r4 + r7 = 000xxxxx
>
>      For an unknown relocation type:
>               r4 = 000000xx
>               r7 = 40000000
>               r4 + r7 = 400000xx
>     400000xx is an invalid memory address for a board which has just
>     512M memory.
>
> And for operations such as dcbst or icbi may cause bus error for an
> invalid memory address on some platforms and then cause the board
> reset. So we should skip the flush/invalidate the d/icache for
> an unknown relocation type.
>

Good catch. Thanks for the fix.

Acked-by: Suzuki K. Poulose <suzuki at in.ibm.com>



More information about the Linuxppc-dev mailing list