Re: security: oops on boot in __key_link_begin

David Howells
2014-07-28T11:32:26Z

> 23: 49 89 9f f0 00 00 00 mov %rbx,0xf0(%r15)
> 2a: 55 push %rbp
> 2b:* c1 b8 42 ff 49 8b 5f sarl $0x5f,-0x74b600be(%rax) <-- trapping instruction
> 32: 10 49 8d adc %cl,-0x73(%rcx)

I can't make any sense of this. It doesn't look anything like what I
get when I disassemble assoc_array_insert(). There are no SARL or ADC
instructions.

Can you load your vmlinux into gdb and disassemble the function that holds the
faulting instruction:

gdb vmlinux
(gdb) disassemble <RIP-value>

Unfortunately, I'm not sure what the RIP value actually is because it's been
replaced in the dump by source file + line number. It's not this:

[ 31.330473] CR2: ffffffff8b49ff42

though. That's RAX (ie. 0) plus the offset in the following instruction:

sarl $0x5f,-0x74b600be(%rax) <-- trapping instruction

David