提交 7dec935a 编写于 作者: S Steven Rostedt (Red Hat) 提交者: Steven Rostedt

tracepoint: Do not waste memory on mods with no tracepoints

No reason to allocate tp_module structures for modules that have no
tracepoints. This just wastes memory.

Fixes: b75ef8b4 "Tracepoint: Dissociate from module mutex"
Acked-by: NMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
上级 12729f14
...@@ -636,6 +636,9 @@ static int tracepoint_module_coming(struct module *mod) ...@@ -636,6 +636,9 @@ static int tracepoint_module_coming(struct module *mod)
struct tp_module *tp_mod, *iter; struct tp_module *tp_mod, *iter;
int ret = 0; int ret = 0;
if (!mod->num_tracepoints)
return 0;
/* /*
* We skip modules that taint the kernel, especially those with different * We skip modules that taint the kernel, especially those with different
* module headers (for forced load), to make sure we don't cause a crash. * module headers (for forced load), to make sure we don't cause a crash.
...@@ -679,6 +682,9 @@ static int tracepoint_module_going(struct module *mod) ...@@ -679,6 +682,9 @@ static int tracepoint_module_going(struct module *mod)
{ {
struct tp_module *pos; struct tp_module *pos;
if (!mod->num_tracepoints)
return 0;
mutex_lock(&tracepoints_mutex); mutex_lock(&tracepoints_mutex);
tracepoint_update_probe_range(mod->tracepoints_ptrs, tracepoint_update_probe_range(mod->tracepoints_ptrs,
mod->tracepoints_ptrs + mod->num_tracepoints); mod->tracepoints_ptrs + mod->num_tracepoints);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册