[PATCH v9 3/9] livepatch: Make klp_find_func() non static
From: Yafang Shao <hidden>
Date: 2026-09-13 02:43:16
Subsystem:
live patching, the rest · Maintainers:
Josh Poimboeuf, Jiri Kosina, Miroslav Benes, Petr Mladek, Linus Torvalds
Make klp_find_func() non static to allow its use in other source files by an upcoming patch. While at it, rename the parameter @old_func to @func to better reflect its generic purpose. Signed-off-by: Yafang Shao <redacted> Acked-by: Song Liu <song@kernel.org> Acked-by: Miroslav Benes <mbenes@suse.cz> --- kernel/livepatch/core.c | 18 +++++++++--------- kernel/livepatch/core.h | 1 + 2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c
index 517fe427ff92..89251fafe86e 100644
--- a/kernel/livepatch/core.c
+++ b/kernel/livepatch/core.c@@ -82,21 +82,21 @@ static bool klp_initialized(void) return !!klp_root_kobj; } -static struct klp_func *klp_find_func(struct klp_object *obj, - struct klp_func *old_func) +/* Check if @func is present in @obj. */ +struct klp_func *klp_find_func(struct klp_object *obj, struct klp_func *func) { - struct klp_func *func; + struct klp_func *obj_func; - klp_for_each_func(obj, func) { + klp_for_each_func(obj, obj_func) { /* * Besides identical old_sympos, also consider old_sympos * of 0 and 1 are identical. */ - if ((strcmp(old_func->old_name, func->old_name) == 0) && - ((old_func->old_sympos == func->old_sympos) || - (old_func->old_sympos == 0 && func->old_sympos == 1) || - (old_func->old_sympos == 1 && func->old_sympos == 0))) { - return func; + if ((strcmp(obj_func->old_name, func->old_name) == 0) && + ((obj_func->old_sympos == func->old_sympos) || + (obj_func->old_sympos == 0 && func->old_sympos == 1) || + (obj_func->old_sympos == 1 && func->old_sympos == 0))) { + return obj_func; } }
diff --git a/kernel/livepatch/core.h b/kernel/livepatch/core.h
index 38209c7361b6..361a0917a03f 100644
--- a/kernel/livepatch/core.h
+++ b/kernel/livepatch/core.h@@ -17,6 +17,7 @@ void klp_free_patch_async(struct klp_patch *patch); void klp_free_replaced_patches_async(struct klp_patch *new_patch); void klp_unpatch_replaced_patches(struct klp_patch *new_patch); void klp_discard_nops(struct klp_patch *new_patch); +struct klp_func *klp_find_func(struct klp_object *obj, struct klp_func *func); static inline bool klp_is_object_loaded(struct klp_object *obj) {
--
2.52.0