Re: [RFC] [patch 2/2] Refuse kprobe insertion on __init section code

From: Srinivasa Ds
Date: Fri Dec 14 2007 - 04:34:47 EST


This patch makes use of regular_kernel_text_address() to avoid
probing __init functions.

Signed-off-by: Srinivasa DS <srinivasa@xxxxxxxxxx>
Signed-off-by: Ananth N Mavinakayanahalli <ananth@xxxxxxxxxx>




---
kernel/kprobes.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Index: linux-2.6.24-rc5-mm1/kernel/kprobes.c
===================================================================
--- linux-2.6.24-rc5-mm1.orig/kernel/kprobes.c
+++ linux-2.6.24-rc5-mm1/kernel/kprobes.c
@@ -520,7 +520,7 @@ static int __kprobes __register_kprobe(s
return -EINVAL;
p->addr = (kprobe_opcode_t *)(((char *)p->addr)+ p->offset);

- if (!kernel_text_address((unsigned long) p->addr) ||
+ if (!regular_kernel_text_address((unsigned long) p->addr) ||
in_kprobes_functions((unsigned long) p->addr))
return -EINVAL;

@@ -662,7 +662,7 @@ int __kprobes register_jprobe(struct jpr
{
unsigned long addr = arch_deref_entry_point(jp->entry);

- if (!kernel_text_address(addr))
+ if (!regular_kernel_text_address(addr))
return -EINVAL;

/* Todo: Verify probepoint is a function entry point */
--
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/