Messages in this thread |  | | Date | Wed, 1 Feb 2012 09:05:40 +0100 | | From | Ingo Molnar <> | | Subject | Re: [PATCH 0/5 v2] [GIT PULL] x86/jump label: Paranoid checks and 2 or 5 byte nops |
| |
* Steven Rostedt <rostedt@goodmis.org> wrote:
> On Tue, 2012-01-31 at 20:48 +0100, Ingo Molnar wrote: > > > Attached. (you need to run it through make oldconfig and use the > > defaults.) > > Hmm, I'm not able to reproduce it. > > Could you apply this patch and run it again. I'm interested in what was > at the location when it tried to do the conversion. > > Thanks! > > -- Steve > > diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c > index 6173ca6..da12264 100644 > --- a/arch/x86/kernel/jump_label.c > +++ b/arch/x86/kernel/jump_label.c > @@ -58,13 +58,17 @@ static void __jump_label_transform(struct jump_entry *entry, > size = JUMP_LABEL_NOP_SIZE; > code.jump = 0xe9; > code.offset = entry->target - (entry->code + size); > - } else > + } else { > + unsigned char *ins = ip; > /* > * The location is not a nop that we were expecting, > * something went wrong. Crash the box, as something could be > * corrupting the kernel. > */ > + printk("Unknown op at %pS (%02x:%02x:%02x:%02x:%02x)\n", > + ip, ins[0], ins[1], ins[2], ins[3], ins[4]); > BUG(); > + }
It would be better to make this a regular commit, this kind of diagnostics obviously makes sense. That way i could pull in your updated branch for more testing.
Thanks,
Ingo
|  |