Re: kprobe_handler should check pre_handler function

From: Ananth N Mavinakayanahalli
Date: Tue Mar 29 2005 - 19:03:06 EST


On Tue, Mar 29, 2005 at 02:18:02PM -0500, William Cohen wrote:
> Ananth N Mavinakayanahalli wrote:
> >On Mon, Mar 28, 2005 at 04:10:32PM -0500, William Cohen wrote:
> >
> >Hi Will,
> >
> >
> >>I found kprobes expects there to be a pre_handler function in the
> >>structure. I was writing a probe that only needed a post_handler
> >>function, no pre_handler function. The probe was tracking the
> >>destinations of indirect calls and jumps, the probe needs to fire after
> >>the instruction single steps to get the target address. The probe
> >>crashed the machine because arch/i386/kernel/kprobe.c:kprobe_handler()
> >>blindly calls p->pre_handler(). There should be a check to verify that
> >>the pointer is non-null. There are cases where the pre_handler is not
> >>needed and it would make sense to set it to NULL. Thus, a check should
> >>be done for pre_handler like post_handler and fault_handler.
> >
> >
> >You are right. The check for pre_handler is needed and here is a patch
> >against 2.6.12-rc1-mm3 that does this.
> >
> >Thanks,
> >Ananth
>
> Ananth,
>
> Thanks. It looks like it addresses the problem. Could you see about
> getting this patch in the upstream kernel?

Will,

I think Andrew now has this in his patchset. It will probably be in the
next -mm.

Thanks,
Ananth
-
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/