Re: [PATCH 3/3] Make jprobes a little safer for users

From: Andrew Morton
Date: Mon Jun 25 2007 - 22:02:26 EST


On Tue, 26 Jun 2007 11:48:51 +1000 (EST) Michael Ellerman <michael@xxxxxxxxxxxxxx> wrote:

> I realise jprobes are a razor-blades-included type of interface, but
> that doesn't mean we can't try and make them safer to use. This guy I
> know once wrote code like this:
>
> struct jprobe jp = { .kp.symbol_name = "foo", .entry = "jprobe_foo" };
>
> And then his kernel exploded. Oops.
>
> This patch adds an arch hook, arch_deref_entry_point() (I don't like it either)
> which takes the void * in a struct jprobe, and gives back the text address
> that it represents.
>
> We can then use that in register_jprobe() to check that the entry point
> we're passed is actually in the kernel text, rather than just some random
> value.
>
> Signed-off-by: Michael Ellerman <michael@xxxxxxxxxxxxxx>
> ---
> arch/ia64/kernel/kprobes.c | 7 ++++++-
> arch/powerpc/kernel/kprobes.c | 11 ++++++++---
> kernel/kprobes.c | 9 +++++++++

We're missing a declaration of arch_deref_entry_point() in some header file?

-
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/