Bläddra i källkod

x86: fix kprobe_handler reenable preemption

Fix a preemption bug in kprobe_handler(). It has to call preempt_enable()
before returning.

Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Masami Hiramatsu 17 år sedan
förälder
incheckning
ddc66df876
1 ändrade filer med 2 tillägg och 1 borttagningar
  1. 2 1
      arch/x86/kernel/kprobes.c

+ 2 - 1
arch/x86/kernel/kprobes.c

@@ -467,7 +467,8 @@ static int __kprobes kprobe_handler(struct pt_regs *regs)
 				arch_disarm_kprobe(p);
 				regs->ip = (unsigned long)p->addr;
 				reset_current_kprobe();
-				return 1;
+				ret = 1;
+				goto no_kprobe;
 #endif
 			}
 			/* We have reentered the kprobe_handler(), since