On Wed, Oct 21, 2009 at 10:43:55AM -0700, Lixin Yao wrote: > When corrupted, curtain blocks of 64 bytes are messed up. > This is a screen dump of a good unflattened device at beginning:
[snip] > When corrupted, it becomes following, note the 64 bock at 0x03ffdf00 > is messed up. And this kind of corruptions occur several times [snip] > 03ffdf00 : ffffffff ffff000c db055be0 08060001 ..........[..... > 03ffdf10 : 08000604 0001000c db055be0 ac141001 ..........[..... > 03ffdf20 : 00000000 0000ac14 10530000 10530000 .........S...S.. > 03ffdf30 : 08000604 0001000c 36681bfe f874c01e ........6h...t.. Uh, oh. That looks like a broadcast ethernet packet (ARP, specifically). Looks like a network device used by the firmware hasn't been quiesced properly before booting the kernel and is DMAing stuff straight on top of kernel memory. You'll probably need a hook in the bootwrapper to shut down the ethernet. There are some examples of this in arch/powerpc/boot already - look for ibm4xx_quiesce_eth(). -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev