On Wed, Jul 04, 2018 at 11:11:59PM +1000, Michael Ellerman wrote: > Christophe LEROY <christophe.le...@c-s.fr> writes: > > > Kernel Oops at 0xc0334d5c for reading at address 0xc2236450 which > > corresponds to r30 + 80 > > > > But r30 should contain what's at r3 + 16 that is at 0xc619ec10 so r30 > > should be c6236400 as shown below (print_hex_dump(regs->gpr[3]) added at > > end of __die() ) > > > > So how can r30 contain 0xc2236400 instead ? > > The simplest answer is that memory was modified between the time we > loaded it into r30 and when you print it. > > So it did contain 0xc2236400 but has since been modified to now contain > 0xc6236400. > > The thing that makes me less certain, is that c6 would be the correct > value (I think?), so it's been modified back to the correct value, which > seems lucky. > > Mysterious.
That depends. Is this reproducible at all? It is a single bit flip. Segher