I have used jprobe in a kernel module and everything works just fine. except the fact that the pre_handler is not executed.
static struct jprobe my_jprobe = {
.entry = my_do_fork,
.kp = {
.symbol_name = "do_fork",
.pre_handler = pre_handler,
.post_handler = post_handler,
},
};
Why my_do_fork and post_handler are executed but pre_handler isn't?