Role of svc_entry macro with 64 bytes in kprobes/systemtap on ARM
Jey Jay
rjayavrp2@gmail.com
Thu Dec 12 03:10:00 GMT 2013
Hi,
Currently Im working on "systemtap" and "kprobes".
My current work is to convert the kprobes in to loadable kernel
module(.ko) on arm architecture.
Converted module is able to run the examples in
"http://lxr.free-electrons.com/source/samples/kprobes/?a=arm".
But few systemtap scripts like
1. https://sourceware.org/systemtap/SystemTap_Beginners_Guide/traceiosect.html
2. https://sourceware.org/systemtap/SystemTap_Beginners_Guide/mainsect-disk.html#disktop
producing kernel panics.
We don't want to recompile kernel. so CONFIG_KPROBES is not set.
Because CONFIG_KPROBES, In the following file
http://lxr.free-electrons.com/source/arch/arm/kernel/entry-armv.S?a=arm
#ifdef CONFIG_KPROBES
@ If a kprobe is about to simulate a "stmdb sp..." instruction,
@ it obviously needs free stack space which then will belong to
@ the saved context.
svc_entry 64
#else
svc_entry
#endif
svc_entry macro is not expanded with 64. I am not sure with
relationship between svc_entry macro and kprobes.
Im getting problem exactly in
http://lxr.free-electrons.com/source/arch/arm/kernel/kprobes-common.c?a=arm#L246
Please share your knowledge.
Thanks and Regards
Jeyaram
More information about the Systemtap
mailing list