Lines Matching full:handler

46  * all running rethook handler before calling rethook_free(), you need to
51 rcu_assign_pointer(rh->handler, NULL); in rethook_stop()
59 * @rh::data is cleaned if needed (or, the handler can access it after
87 return (rethook_handler_t)rcu_dereference_check(rh->handler, in rethook_get_handler()
93 * @data: a data to pass the @handler when hooking the return.
94 * @handler: the return hook callback function, must NOT be NULL
98 * Allocate and initialize a new rethook with @data and @handler.
101 * Note that @handler == NULL means this rethook is going to be freed.
103 struct rethook *rethook_alloc(void *data, rethook_handler_t handler, in rethook_alloc() argument
108 if (!handler || num <= 0 || size < sizeof(struct rethook_node)) in rethook_alloc()
116 rcu_assign_pointer(rh->handler, handler); in rethook_alloc()
144 rethook_handler_t handler; in rethook_recycle() local
146 handler = rethook_get_handler(node->rethook); in rethook_recycle()
147 if (likely(handler)) in rethook_recycle()
163 rethook_handler_t handler = rethook_get_handler(rh); in rethook_try_get() local
166 if (unlikely(!handler)) in rethook_try_get()
274 * so that stacktrace works from the rethook handler. in arch_rethook_fixup_return()
284 rethook_handler_t handler; in rethook_trampoline_handler() local
302 * Run the handler on the shadow stack. Do not unlink the list here because in rethook_trampoline_handler()
310 handler = rethook_get_handler(rhn->rethook); in rethook_trampoline_handler()
311 if (handler) in rethook_trampoline_handler()
312 handler(rhn, rhn->rethook->data, in rethook_trampoline_handler()