tracing: Have event_trace_init() called by trace_init_tracefs()
Instead of having both trace_init_tracefs() and event_trace_init() be called by fs_initcall() routines, have event_trace_init() called directly by trace_init_tracefs(). This will guarantee order of how the events are created with respect to the rest of the ftrace infrastructure. This is needed to be able to assoctiate event files with ftrace internal events, such as the trace_marker. Reviewed-by: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
parent
3c96529c07
commit
58b9254757
|
@ -8111,6 +8111,8 @@ static __init int tracer_init_tracefs(void)
|
|||
if (IS_ERR(d_tracer))
|
||||
return 0;
|
||||
|
||||
event_trace_init();
|
||||
|
||||
init_tracer_tracefs(&global_trace, d_tracer);
|
||||
ftrace_init_tracefs_toplevel(&global_trace, d_tracer);
|
||||
|
||||
|
|
|
@ -1451,6 +1451,7 @@ trace_find_event_field(struct trace_event_call *call, char *name);
|
|||
extern void trace_event_enable_cmd_record(bool enable);
|
||||
extern void trace_event_enable_tgid_record(bool enable);
|
||||
|
||||
extern int event_trace_init(void);
|
||||
extern int event_trace_add_tracer(struct dentry *parent, struct trace_array *tr);
|
||||
extern int event_trace_del_tracer(struct trace_array *tr);
|
||||
|
||||
|
|
|
@ -3144,7 +3144,7 @@ static __init int event_trace_enable_again(void)
|
|||
|
||||
early_initcall(event_trace_enable_again);
|
||||
|
||||
static __init int event_trace_init(void)
|
||||
__init int event_trace_init(void)
|
||||
{
|
||||
struct trace_array *tr;
|
||||
struct dentry *d_tracer;
|
||||
|
@ -3189,8 +3189,6 @@ void __init trace_event_init(void)
|
|||
event_trace_enable();
|
||||
}
|
||||
|
||||
fs_initcall(event_trace_init);
|
||||
|
||||
#ifdef CONFIG_FTRACE_STARTUP_TEST
|
||||
|
||||
static DEFINE_SPINLOCK(test_spinlock);
|
||||
|
|
Loading…
Reference in New Issue