Home
last modified time | relevance | path

Searched refs:klp_object (Results 1 – 17 of 17) sorted by relevance

/Linux-v5.4/kernel/livepatch/
Dcore.c46 static bool klp_is_module(struct klp_object *obj) in klp_is_module()
52 static void klp_find_object_module(struct klp_object *obj) in klp_find_object_module()
84 static struct klp_func *klp_find_func(struct klp_object *obj, in klp_find_func()
99 static struct klp_object *klp_find_object(struct klp_patch *patch, in klp_find_object()
100 struct klp_object *old_obj) in klp_find_object()
102 struct klp_object *obj; in klp_find_object()
249 struct klp_object *obj) in klp_write_object_relocations()
413 static void klp_free_object_dynamic(struct klp_object *obj) in klp_free_object_dynamic()
419 static void klp_init_func_early(struct klp_object *obj,
422 struct klp_object *obj);
[all …]
Dcore.h20 static inline bool klp_is_object_loaded(struct klp_object *obj) in klp_is_object_loaded()
25 static inline int klp_pre_patch_callback(struct klp_object *obj) in klp_pre_patch_callback()
37 static inline void klp_post_patch_callback(struct klp_object *obj) in klp_post_patch_callback()
43 static inline void klp_pre_unpatch_callback(struct klp_object *obj) in klp_pre_unpatch_callback()
49 static inline void klp_post_unpatch_callback(struct klp_object *obj) in klp_post_unpatch_callback()
Dpatch.h30 int klp_patch_object(struct klp_object *obj);
31 void klp_unpatch_object(struct klp_object *obj);
Dpatch.c237 static void __klp_unpatch_object(struct klp_object *obj, bool nops_only) in __klp_unpatch_object()
254 void klp_unpatch_object(struct klp_object *obj) in klp_unpatch_object()
259 int klp_patch_object(struct klp_object *obj) in klp_patch_object()
281 struct klp_object *obj; in __klp_unpatch_objects()
Dtransition.c71 struct klp_object *obj; in klp_complete_transition()
245 struct klp_object *obj; in klp_check_stack()
508 struct klp_object *obj; in klp_init_transition()
/Linux-v5.4/lib/livepatch/
Dtest_klp_callbacks_demo2.c21 static void callback_info(const char *callback, struct klp_object *obj) in callback_info()
31 static int pre_patch_callback(struct klp_object *obj) in pre_patch_callback()
38 static void post_patch_callback(struct klp_object *obj) in post_patch_callback()
44 static void pre_unpatch_callback(struct klp_object *obj) in pre_unpatch_callback()
50 static void post_unpatch_callback(struct klp_object *obj) in post_unpatch_callback()
59 static struct klp_object objs[] = {
Dtest_klp_callbacks_demo.c21 static void callback_info(const char *callback, struct klp_object *obj) in callback_info()
31 static int pre_patch_callback(struct klp_object *obj) in pre_patch_callback()
38 static void post_patch_callback(struct klp_object *obj) in post_patch_callback()
44 static void pre_unpatch_callback(struct klp_object *obj) in pre_unpatch_callback()
50 static void post_unpatch_callback(struct klp_object *obj) in post_unpatch_callback()
71 static struct klp_object objs[] = {
Dtest_klp_livepatch.c25 static struct klp_object objs[] = {
Dtest_klp_atomic_replace.c29 static struct klp_object objs[] = {
/Linux-v5.4/include/linux/
Dlivepatch.h81 struct klp_object;
98 int (*pre_patch)(struct klp_object *obj);
99 void (*post_patch)(struct klp_object *obj);
100 void (*pre_unpatch)(struct klp_object *obj);
101 void (*post_unpatch)(struct klp_object *obj);
118 struct klp_object { struct
149 struct klp_object *objs; argument
185 struct klp_object *obj);
/Linux-v5.4/samples/livepatch/
Dlivepatch-callbacks-demo.c98 static void callback_info(const char *callback, struct klp_object *obj) in callback_info()
108 static int pre_patch_callback(struct klp_object *obj) in pre_patch_callback()
115 static void post_patch_callback(struct klp_object *obj) in post_patch_callback()
121 static void pre_unpatch_callback(struct klp_object *obj) in pre_unpatch_callback()
127 static void post_unpatch_callback(struct klp_object *obj) in post_unpatch_callback()
148 static struct klp_object objs[] = {
Dlivepatch-sample.c46 static struct klp_object objs[] = {
Dlivepatch-shadow-fix2.c106 static struct klp_object objs[] = {
Dlivepatch-shadow-fix1.c134 static struct klp_object objs[] = {
/Linux-v5.4/Documentation/livepatch/
Dcallbacks.rst30 Callbacks are part of the klp_object structure and their implementation
31 is specific to that klp_object. Other livepatch objects may or may not
32 be patched, irrespective of the target klp_object's current state.
40 - before a klp_object is patched
43 - after a klp_object has been patched and is active
47 - before a klp_object is unpatched (ie, patched code is
52 - after a klp_object has been patched, all code has
68 A callback is only executed if its host klp_object is loaded. For
77 to the livepatching core that patching of the current klp_object is not
91 for a given klp_object if the object failed to patch, due to a failed
Dlivepatch.rst278 - struct klp_object defines an array of patched functions (struct
289 klp_object).
/Linux-v5.4/arch/x86/kernel/
Dlivepatch.c13 struct klp_object *obj) in arch_klp_init_object_loaded()