tracing: Have trace events system open call tracing_open_generic_tr()
Instead of having the trace events system open call open code the taking of the trace_array descriptor (with trace_array_get()) and then calling trace_open_generic(), have it use the tracing_open_generic_tr() that does the combination of the two. This requires making tracing_open_generic_tr() global. Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
@@ -1440,28 +1440,17 @@ static int system_tr_open(struct inode *inode, struct file *filp)
|
||||
struct trace_array *tr = inode->i_private;
|
||||
int ret;
|
||||
|
||||
if (tracing_is_disabled())
|
||||
return -ENODEV;
|
||||
|
||||
if (trace_array_get(tr) < 0)
|
||||
return -ENODEV;
|
||||
|
||||
/* Make a temporary dir that has no system but points to tr */
|
||||
dir = kzalloc(sizeof(*dir), GFP_KERNEL);
|
||||
if (!dir) {
|
||||
trace_array_put(tr);
|
||||
if (!dir)
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
dir->tr = tr;
|
||||
|
||||
ret = tracing_open_generic(inode, filp);
|
||||
ret = tracing_open_generic_tr(inode, filp);
|
||||
if (ret < 0) {
|
||||
trace_array_put(tr);
|
||||
kfree(dir);
|
||||
return ret;
|
||||
}
|
||||
|
||||
dir->tr = tr;
|
||||
filp->private_data = dir;
|
||||
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user