ARM + jprobes/kretprobes SEGV/hangs/OOPS in 2.6.29 kernel

Jim Keniston jkenisto@us.ibm.com
Tue Aug 25 17:27:00 GMT 2009


On Tue, 2009-08-25 at 16:19 +0530, venki kaps wrote:
> Hi,
> 
> I have been tracing kernel system call information using
> the Kprobes/jprobes/kretprobes implementation in the 2.6.29 kernel on
> ARM architecture.
> Although the mainline kprobe/jprobe/kretprobe examples are working
> fine (do_fork),
> I have been facing some issues while running my own jprobe/kretprobe tests.
> 
> For instance, when I am planting jprobe at
> do_execve/sys_open/sys_close/sys_read/sys_write/,
> after registration of probe, segmentation fault is getting generated.
> The following is my code snapshot-
> 
...

FWIW, your execve example works for me on x86_64, after I add
appropriate #includes and module_init/exit.  When I printk filename in
the handler, the output looks correct.

> 
> And also system hangs for sys_open/sys_close/sys_read/sys_write with
> jprobes/kretprobes
> but there are no issues with kprobes.
> 
> Query:
> =====
>        - Are there any limitations for jptobes/kretporbes in mainline
> kernel for ARM?
>        - Why it works for only do_fork and why not for others
> (do_execve/sys_open/sys_close/sys_read/sys_write)?
>        - Is it required any additional setup to achieve this?
> 
> Please give your valuable comments.
> 
> Thanks in advance.
> 
> Best regards,
> Venkappa

I agree with Ananth: check with the maintainers of the arm port -- see
arch/arm/kernel/kprobes.c.

Jim



More information about the Systemtap mailing list