ARM: 6996/1: mm: Poison freed init memory
Poisoning __init marked memory can be useful when tracking down obscure memory corruption bugs. Therefore, poison init memory with 0xe7fddef0 to catch bugs earlier. The poison value is an undefined instruction in ARM mode and branch to an undefined instruction in Thumb mode. Change-Id: Ibb91bee46b829b0deac9f4e592040a0054968998 Signed-off-by:Stephen Boyd <sboyd@codeaurora.org> Acked-by:
Nicolas Pitre <nicolas.pitre@linaro.org> Signed-off-by:
Russell King <rmk+kernel@arm.linux.org.uk> [sboyd@codeaurora.org: Fix conflicts from total_unmovable_pages] Signed-off-by:
Stephen Boyd <sboyd@codeaurora.org> ARM: 7010/1: mm: fix invalid loop for poison_init_mem poison_init_mem() used a loop of: while ((count = count - 4)) which has 2 problems - an off by one error so that we do one less word than we should, and the other is that if count == 0 then we loop forever and poison too much. On a platform with HAVE_TCM=y but nothing in the TCM's, this caused corruption and the platform failed to boot. Acked-by:
Stephen Boyd <sboyd@codeaurora.org> Acked-by:
Nicolas Pitre <nicolas.pitre@linaro.org> Signed-off-by:
Jamie Iles <jamie@jamieiles.com> Signed-off-by:
Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by:
Stephen Boyd <sboyd@codeaurora.org>
Loading
Please sign in to comment