summaryrefslogtreecommitdiffstats
path: root/kernel/tracepoint.c
diff options
context:
space:
mode:
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>2014-04-09 02:09:40 +0200
committerSteven Rostedt <rostedt@goodmis.org>2014-04-09 02:45:34 +0200
commiteb7d035c59431bb12e1aa6e69ddd3940352faddb (patch)
treea4e39481eade88644bae57261605cb393b75e451 /kernel/tracepoint.c
parenttracepoint: Use struct pointer instead of name hash for reg/unreg tracepoints (diff)
downloadlinux-eb7d035c59431bb12e1aa6e69ddd3940352faddb.tar.xz
linux-eb7d035c59431bb12e1aa6e69ddd3940352faddb.zip
tracepoint: Simplify tracepoint module search
Instead of copying the num_tracepoints and tracepoints_ptrs from the module structure to the tp_mod structure, which only uses it to find the module associated to tracepoints of modules that are coming and going, simply copy the pointer to the module struct to the tracepoint tp_module structure. Also removed un-needed brackets around an if statement. Link: http://lkml.kernel.org/r/20140408201705.4dad2c4a@gandalf.local.home Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/tracepoint.c')
-rw-r--r--kernel/tracepoint.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/kernel/tracepoint.c b/kernel/tracepoint.c
index 01b3bd84daa1..162be198a247 100644
--- a/kernel/tracepoint.c
+++ b/kernel/tracepoint.c
@@ -374,8 +374,7 @@ static int tracepoint_module_coming(struct module *mod)
ret = -ENOMEM;
goto end;
}
- tp_mod->num_tracepoints = mod->num_tracepoints;
- tp_mod->tracepoints_ptrs = mod->tracepoints_ptrs;
+ tp_mod->mod = mod;
list_add_tail(&tp_mod->list, &tracepoint_module_list);
blocking_notifier_call_chain(&tracepoint_notify_list,
MODULE_STATE_COMING, tp_mod);
@@ -393,7 +392,7 @@ static void tracepoint_module_going(struct module *mod)
mutex_lock(&tracepoint_module_list_mutex);
list_for_each_entry(tp_mod, &tracepoint_module_list, list) {
- if (tp_mod->tracepoints_ptrs == mod->tracepoints_ptrs) {
+ if (tp_mod->mod == mod) {
blocking_notifier_call_chain(&tracepoint_notify_list,
MODULE_STATE_GOING, tp_mod);
list_del(&tp_mod->list);
@@ -447,9 +446,9 @@ static __init int init_tracepoints(void)
int ret;
ret = register_module_notifier(&tracepoint_module_nb);
- if (ret) {
+ if (ret)
pr_warning("Failed to register tracepoint module enter notifier\n");
- }
+
return ret;
}
__initcall(init_tracepoints);