Home
last modified time | relevance | path

Searched refs:func_stack (Results 1 – 4 of 4) sorted by relevance

/linux/kernel/livepatch/
H A Dpatch.c31 func = list_first_entry(&ops->func_stack, struct klp_func, in klp_find_ops()
62 func = list_first_or_null_rcu(&ops->func_stack, struct klp_func, in klp_ftrace_handler()
68 * synchronize_rcu() before the func_stack removal. in klp_ftrace_handler()
74 * In the enable path, enforce the order of the ops->func_stack and in klp_ftrace_handler()
109 if (&func->stack_node == &ops->func_stack) in klp_ftrace_handler()
140 if (list_is_singular(&ops->func_stack)) { in klp_unpatch_func()
196 INIT_LIST_HEAD(&ops->func_stack); in klp_patch_func()
197 list_add_rcu(&func->stack_node, &ops->func_stack); in klp_patch_func()
216 list_add_rcu(&func->stack_node, &ops->func_stack); in klp_patch_func()
H A Dpatch.h15 * struct's func_stack list. The winner is the klp_func at the top of the
16 * func_stack (front of the list).
19 * @func_stack: list head for the stack of klp_func's (active func is on top)
24 struct list_head func_stack; member
H A Dtransition.c69 * This approach allows to use RCU functions for manipulating func_stack
100 * remove the new functions from the func_stack. in klp_complete_transition()
106 * from this patch on the ops->func_stack. Otherwise, after in klp_complete_transition()
226 if (list_is_singular(&ops->func_stack)) { in klp_check_stack_func()
609 * When patching, the funcs aren't yet in the func_stack and will be in klp_init_transition()
613 * When unpatching, the funcs are already in the func_stack and so are in klp_init_transition()
/linux/Documentation/livepatch/
H A Dlivepatch.rst338 an entry to the list (see field `func_stack`) of the struct klp_ops.
358 and func_stack list becomes empty.
379 is unregistered and the struct klp_ops is freed when the func_stack list