Messages in this thread Patch in this message | | | Subject | Re: [PATCH 0/5 v2] [GIT PULL] x86/jump label: Paranoid checks and 2 or 5 byte nops | From | Steven Rostedt <> | Date | Wed, 01 Feb 2012 00:08:45 -0500 |
| |
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(); + } } else { /* * We are disabling this jump label. If it is not what
| |