Re: [PATCH v4] drivers/tty: Folding Android's keyreset driver in sysRQ

From: David Howells
Date: Wed Feb 27 2013 - 13:26:46 EST


Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:

> > Your fix is compiling, running and yielding the correct results -
> > apologies about that.
> >
> > Acked-by: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
>
> Ok, good. Committed and pushed out. Adding rmk and dhowells to the cc
> just to let them know, since Dave said they were debugging this on
> irc.

Seems reasonable to me. After dissecting stuff this morning, we noted that
the code dump in the oops shows that the MOV insn that gets the value to test
does not load 0.

The first five bytes of:

ba 00 00 40 ff | 31 c0 | 8b 1d 0c 0e a0

correspond to this:

mov $0xff400000,%edx

when the linker should've made it this:

mov $0x00000000,%edx

I suspect that the number may be some metadata reference that didn't get
substituted.

Dave Airlie tried disassembling his vmlinux with gdb - and that apparently did
show a load of 0, but the EIP in his oops doesn't match the addresses from
gdb's disassembly - so I'm not sure what's happening there.

In the oops, the %cr2 value was 0xff400000, but the offending instruction
bytes of the actual faulting instruction in the code dump were cropped by his
photo of the screen.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/