Re: [PATCH][take2][2/2] kprobe: kprobe-booster against 2.6.16-rc5for i386

From: Andrew Morton
Date: Mon Feb 27 2006 - 21:49:23 EST


Masami Hiramatsu <hiramatu@xxxxxxxxxxxxxxxxx> wrote:
>
> Here is a patch of kprobe-booster for i386 arch against linux-2.6.16-rc5.
> The kprobe-booster patch is also under the influence of the NX-protection
> support patch. So, I fixed that.
>
> Could you replace the previous patches with these patches?

I'd prefer not to. Once a patch has been in -mm for this long I really
prefer to not see wholesale replacements. When people do this to me I
usually turn their replacements into incremental patches so we can see what
changed. Which is useful.

Your first patch was identical to what I already have, so I dropped that.

Your second patch made these changes:

--- devel/arch/i386/kernel/kprobes.c~kprobe-kprobe-booster-against-2616-rc5-for 2006-02-27 18:40:29.000000000 -0800
+++ devel-akpm/arch/i386/kernel/kprobes.c 2006-02-27 18:40:57.000000000 -0800
@@ -305,7 +305,7 @@ static int __kprobes kprobe_handler(stru

if (p->ainsn.boostable == 1 &&
#ifdef CONFIG_PREEMPT
- !(pre_preempt_count) && /*
+ !(pre_preempt_count()) && /*
* This enables booster when the direct
* execution path aren't preempted.
*/
@@ -313,7 +313,7 @@ static int __kprobes kprobe_handler(stru
!p->post_handler && !p->break_handler ) {
/* Boost up -- we can execute copied instructions directly */
reset_current_kprobe();
- regs->eip = (unsigned long)&p->ainsn.insn;
+ regs->eip = (unsigned long)p->ainsn.insn;
preempt_enable_no_resched();
return 1;
}

The first hunk is surely wrong - pre_preempt_count is a local unsigned
integer, not a function.

And I'm not sure about the second hunk either - surely an `eip' should
point at an instruction, not be assigned the value of an instruction?

So I'll drop both patches. If you have bugfixes, please make them relative
to already-merged things. Against most-recent -mm is best, as I do fix
patches up, and other people send fixes which you might not have merged
locally. And please ensure that the changes compile and run with and
without CONFIG_PREEMPT!

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/