Home
last modified time | relevance | path

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

/linux-6.1.9/kernel/livepatch/
Dcore.c48 static bool klp_is_module(struct klp_object *obj) in klp_is_module()
54 static void klp_find_object_module(struct klp_object *obj) in klp_find_object_module()
86 static struct klp_func *klp_find_func(struct klp_object *obj, in klp_find_func()
101 static struct klp_object *klp_find_object(struct klp_patch *patch, in klp_find_object()
102 struct klp_object *old_obj) in klp_find_object()
104 struct klp_object *obj; in klp_find_object()
438 struct klp_object *obj; in patched_show()
440 obj = container_of(kobj, struct klp_object, kobj); in patched_show()
449 ATTRIBUTE_GROUPS(klp_object);
451 static void klp_free_object_dynamic(struct klp_object *obj) in klp_free_object_dynamic()
[all …]
Dcore.h21 static inline bool klp_is_object_loaded(struct klp_object *obj) in klp_is_object_loaded()
26 static inline int klp_pre_patch_callback(struct klp_object *obj) in klp_pre_patch_callback()
38 static inline void klp_post_patch_callback(struct klp_object *obj) in klp_post_patch_callback()
44 static inline void klp_pre_unpatch_callback(struct klp_object *obj) in klp_pre_unpatch_callback()
50 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.c230 static void __klp_unpatch_object(struct klp_object *obj, bool nops_only) in __klp_unpatch_object()
247 void klp_unpatch_object(struct klp_object *obj) in klp_unpatch_object()
252 int klp_patch_object(struct klp_object *obj) in klp_patch_object()
274 struct klp_object *obj; in __klp_unpatch_objects()
Dtransition.c70 struct klp_object *obj; in klp_complete_transition()
244 struct klp_object *obj; in klp_check_stack()
507 struct klp_object *obj; in klp_init_transition()
/linux-6.1.9/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_state.c23 static void callback_info(const char *callback, struct klp_object *obj) in callback_info()
90 static int pre_patch_callback(struct klp_object *obj) in pre_patch_callback()
97 static void post_patch_callback(struct klp_object *obj) in post_patch_callback()
104 static void pre_unpatch_callback(struct klp_object *obj) in pre_unpatch_callback()
111 static void post_unpatch_callback(struct klp_object *obj) in post_unpatch_callback()
121 static struct klp_object objs[] = {
Dtest_klp_state2.c23 static void callback_info(const char *callback, struct klp_object *obj) in callback_info()
119 static int pre_patch_callback(struct klp_object *obj) in pre_patch_callback()
126 static void post_patch_callback(struct klp_object *obj) in post_patch_callback()
133 static void pre_unpatch_callback(struct klp_object *obj) in pre_unpatch_callback()
140 static void post_unpatch_callback(struct klp_object *obj) in post_unpatch_callback()
150 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-6.1.9/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.c147 static struct klp_object objs[] = {
/linux-6.1.9/include/linux/
Dlivepatch.h79 struct klp_object;
96 int (*pre_patch)(struct klp_object *obj);
97 void (*post_patch)(struct klp_object *obj);
98 void (*pre_unpatch)(struct klp_object *obj);
99 void (*post_unpatch)(struct klp_object *obj);
116 struct klp_object { struct
160 struct klp_object *objs;
/linux-6.1.9/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
Dapi.rst30 :identifiers: klp_patch klp_object klp_func klp_callbacks klp_state
Dlivepatch.rst265 - struct klp_object defines an array of patched functions (struct
276 klp_object).