Lines Matching refs:fprobe

15 use fprobe. Compared with kprobes and kretprobes, fprobe gives faster
17 describes how to use fprobe.
19 The usage of fprobe
22 The fprobe is a wrapper of ftrace (+ kretprobe-like return callback) to
24 the `struct fprobe` and pass it to `register_fprobe()`.
26 Typically, `fprobe` data structure is initialized with the `entry_handler`
31 struct fprobe fp = {
36 To enable the fprobe, call one of register_fprobe(), register_fprobe_ips(), and
37 register_fprobe_syms(). These functions register the fprobe with different types
40 The register_fprobe() enables a fprobe by function-name filters.
45 The register_fprobe_ips() enables a fprobe by ftrace-location addresses.
54 And the register_fprobe_syms() enables a fprobe by symbol names.
63 To disable (remove from functions) this fprobe, call::
67 You can temporally (soft) disable the fprobe by::
77 #include <linux/fprobe.h>
87 The fprobe entry/exit handler
94 void callback_func(struct fprobe *fp, unsigned long entry_ip, struct pt_regs *regs);
100 This is the address of `fprobe` data structure related to this handler.
101 You can embed the `fprobe` to your data structure and get it by
119 Since the recursion safeness of the fprobe (and ftrace) is a bit different
121 code from the fprobe and the kprobes.
124 handler from recursion in all cases. On the other hand, fprobe uses
126 call another (or same) fprobe while the fprobe user handler is running.
136 *before* registering the fprobe, like:
140 fprobe.flags = FPROBE_FL_KPROBE_SHARED;
142 register_fprobe(&fprobe, "func*", NULL);
149 The `fprobe` data structure has `fprobe::nmissed` counter field as same as
153 - fprobe fails to take ftrace_recursion lock. This usually means that a function
156 - fprobe fails to setup the function exit because of the shortage of rethook
159 The `fprobe::nmissed` field counts up in both cases. Therefore, the former
164 `fprobe::ops::flags` (ftrace_ops::flags) when registering the fprobe, this
165 counter may not work correctly, because ftrace skips the fprobe function which
172 .. kernel-doc:: include/linux/fprobe.h
173 .. kernel-doc:: kernel/trace/fprobe.c