aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/livepatch/core.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/livepatch/core.c')
-rw-r--r--kernel/livepatch/core.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c
index ff7f47d026ac..782172f073c5 100644
--- a/kernel/livepatch/core.c
+++ b/kernel/livepatch/core.c
@@ -314,12 +314,12 @@ static void notrace klp_ftrace_handler(unsigned long ip,
314 rcu_read_lock(); 314 rcu_read_lock();
315 func = list_first_or_null_rcu(&ops->func_stack, struct klp_func, 315 func = list_first_or_null_rcu(&ops->func_stack, struct klp_func,
316 stack_node); 316 stack_node);
317 rcu_read_unlock();
318
319 if (WARN_ON_ONCE(!func)) 317 if (WARN_ON_ONCE(!func))
320 return; 318 goto unlock;
321 319
322 klp_arch_set_pc(regs, (unsigned long)func->new_func); 320 klp_arch_set_pc(regs, (unsigned long)func->new_func);
321unlock:
322 rcu_read_unlock();
323} 323}
324 324
325static int klp_disable_func(struct klp_func *func) 325static int klp_disable_func(struct klp_func *func)
@@ -731,7 +731,7 @@ static int klp_init_func(struct klp_object *obj, struct klp_func *func)
731 func->state = KLP_DISABLED; 731 func->state = KLP_DISABLED;
732 732
733 return kobject_init_and_add(&func->kobj, &klp_ktype_func, 733 return kobject_init_and_add(&func->kobj, &klp_ktype_func,
734 obj->kobj, func->old_name); 734 obj->kobj, "%s", func->old_name);
735} 735}
736 736
737/* parts of the initialization that is done only when the object is loaded */ 737/* parts of the initialization that is done only when the object is loaded */
@@ -807,7 +807,7 @@ static int klp_init_patch(struct klp_patch *patch)
807 patch->state = KLP_DISABLED; 807 patch->state = KLP_DISABLED;
808 808
809 ret = kobject_init_and_add(&patch->kobj, &klp_ktype_patch, 809 ret = kobject_init_and_add(&patch->kobj, &klp_ktype_patch,
810 klp_root_kobj, patch->mod->name); 810 klp_root_kobj, "%s", patch->mod->name);
811 if (ret) 811 if (ret)
812 goto unlock; 812 goto unlock;
813 813