Quantcast
Channel: Active questions tagged linux-kernel - Stack Overflow
Viewing all articles
Browse latest Browse all 12244

Why do I get -38 error, while trying to insmod a kernel module probing do_fork?

$
0
0

I am trying to insmod a jprobe module to a rooted Android phone:

 #include <linux/kernel.h> #include <linux/module.h> #include <linux/kprobes.h> /*  * Jumper probe for do_fork.  * Mirror principle enables access to arguments of the probed routine  * from the probe handler.  */ /* Proxy routine having the same arguments as actual do_fork() routine */ static long jdo_fork(unsigned long clone_flags, unsigned long stack_start,               struct pt_regs *regs, unsigned long stack_size,               int __user *parent_tidptr, int __user *child_tidptr) {         printk(KERN_INFO "jprobe: clone_flags = 0x%lx, stack_size = 0x%lx,"" regs = 0x%p\n",                clone_flags, stack_size, regs);         /* Always end with a call to jprobe_return(). */         jprobe_return();         return 0; } static struct jprobe my_jprobe = {         .entry                  = jdo_fork,         .kp = {                 .symbol_name    = "do_fork",         }, }; static int __init jprobe_init(void) {         int ret;         ret = register_jprobe(&my_jprobe);         if (ret < 0) {                 printk(KERN_INFO "register_jprobe failed, returned %d\n", ret);                 return -1;         }         printk(KERN_INFO "Planted jprobe at %p, handler addr %p\n",                my_jprobe.kp.addr, my_jprobe.entry);         return 0; } static void __exit jprobe_exit(void) {         unregister_jprobe(&my_jprobe);         printk(KERN_INFO "jprobe at %p unregistered\n", my_jprobe.kp.addr); }module_init(jprobe_init)module_exit(jprobe_exit)MODULE_LICENSE("GPL");

but it is failed:

  root@android:# insmod my_jprobe.ko  [3223.32]register_jprobe failed, returned -38

I get -38 error, and couldn't understand what is it, the only return value on failure I saw is -22, is it possible to insmod a jprobe module on arm based chip?

do_fork is in the System.map and is in the object table.

What flags do I need to turn on in the config file to support jpobes?


Viewing all articles
Browse latest Browse all 12244

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>