]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
tracing/kprobe: Make trace_kprobe's module callback called after jump_label update
authorMasami Hiramatsu (Google) <mhiramat@kernel.org>
Wed, 11 Dec 2024 00:10:55 +0000 (09:10 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jan 2025 12:24:57 +0000 (13:24 +0100)
[ Upstream commit d685d55dfc86b1a4bdcec77c3c1f8a83f181264e ]

Make sure the trace_kprobe's module notifer callback function is called
after jump_label's callback is called. Since the trace_kprobe's callback
eventually checks jump_label address during registering new kprobe on
the loading module, jump_label must be updated before this registration
happens.

Link: https://lore.kernel.org/all/173387585556.995044.3157941002975446119.stgit@devnote2/
Fixes: 614243181050 ("tracing/kprobes: Support module init function probing")
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/trace/trace_kprobe.c

index 164779c6d1333b9f5432f47258b875796918a98b..646109d389e92fc45363514054f9e0c324187a4a 100644 (file)
@@ -704,7 +704,7 @@ static int trace_kprobe_module_callback(struct notifier_block *nb,
 
 static struct notifier_block trace_kprobe_module_nb = {
        .notifier_call = trace_kprobe_module_callback,
-       .priority = 1   /* Invoked after kprobe module callback */
+       .priority = 2   /* Invoked after kprobe and jump_label module callback */
 };
 
 /* Convert certain expected symbols into '_' when generating event names */