From c0491cbdc3a67080c896043431f244a88d6ad6f4 Mon Sep 17 00:00:00 2001 From: Alexander Aksenov Date: Fri, 19 Jul 2013 16:27:37 +0400 Subject: [PATCH] [FIX] Ticket #9 Issue refers only to x86 platform. In kprobe_handler() now prepare_singlestep() done even if pre_handler returns non-null value (according to sources it occures nearly always). It removes interrupt flag and sets trap flag. --- kprobe/arch/asm-x86/dbi_kprobes.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kprobe/arch/asm-x86/dbi_kprobes.c b/kprobe/arch/asm-x86/dbi_kprobes.c index faf41ef..123cb53 100644 --- a/kprobe/arch/asm-x86/dbi_kprobes.c +++ b/kprobe/arch/asm-x86/dbi_kprobes.c @@ -527,6 +527,7 @@ int kprobe_handler (struct pt_regs *regs) oops_in_progress = swap_oops_in_progress; #endif /* handler has already set things up, so skip ss setup */ + prepare_singlestep(p, regs); return 1; } DBPRINTF ("p->pre_handler[] 0"); -- 2.7.4