Lines Matching refs:callback
26 The ability to add a callback to almost any function within the
27 kernel comes with risks. A callback can be called from any context
30 This requires extra care to what can be done inside a callback. A callback
40 To register a function callback, a ftrace_ops is required. This structure
41 is used to tell ftrace what function should be called as the callback
42 as well as what protections the callback will perform and not require
70 The registered callback will start being called some time after the
73 of services. The callback itself will have to handle any synchronization if it
76 The unregister_ftrace_function() will guarantee that the callback is
82 The callback function
85 The prototype of the callback function is as follows (as of v4.14):
101 This is a pointer to ftrace_ops that was used to register the callback.
102 This can be used to pass data to the callback via the private pointer.
111 Protect your callback
115 called by a callback may also be traced, and call that same callback,
134 function that the callback is tracing. Note, on success,
143 for recursion for the callback and no recursion test needs to be done.
147 If your callback accesses any data or critical section that requires RCU
159 for rcu_is_watching for the callback and no other test needs to be done.
172 If the callback requires reading or modifying the pt_regs
173 passed to the callback, then it must set this flag. Registering
175 support passing of pt_regs to the callback will fail.
180 will not fail with this flag set. But the callback must check if
184 By default, it is expected that the callback can handle recursion.
185 But if the callback is not that worried about overehead, then
187 callback by calling a helper function that will do the recursion
188 protection and only call the callback if it did not recurse.
193 Not, if this flag is set, then the callback will always be called
195 (but not guaranteed) that the callback will be called in
199 Requires FTRACE_OPS_FL_SAVE_REGS set. If the callback is to "hijack"
209 If this is set, then the callback will only be called by functions
210 where RCU is "watching". This is required if the callback function
216 a callback may be executed and RCU synchronization will not protect
221 writing 0 to the proc sysctl ftrace_enabled. Equally, a callback with
231 If a callback is only to be called from specific functions, a filter must be
287 list that will prevent those functions from calling the callback.
289 two lists are non-empty and contain the same functions, the callback will not
314 functions should call the callback, it is best to set the filters before
315 registering the callback. But the changes may also happen after the callback
320 the ftrace_set_filter() call. At no time will all functions call the callback.
347 the callback, between the time of the reset, and the time of the