[PATCH v3 0/2] tracing: make tracer_init_tracefs initcall asynchronous

From: Mark-PK Tsai
Date: Wed Mar 23 2022 - 11:23:19 EST


Move trace_eval_init() to subsys_initcall to make it start
earlier.
And to avoid tracer_init_tracefs being blocked by
trace_event_sem which trace_eval_init() hold [1],
queue tracer_init_tracefs() to eval_map_wq to let
the two works being executed sequentially.

It can speed up the initialization of kernel as result
of making tracer_init_tracefs asynchronous.

On my arm64 platform, it reduce ~20ms of 125ms which total
time do_initcalls spend.

Mark-PK Tsai (2):
tracing: Avoid adding tracer option before update_tracer_options
tracing: make tracer_init_tracefs initcall asynchronous

kernel/trace/trace.c | 38 ++++++++++++++++++++++++++++----------
1 file changed, 28 insertions(+), 10 deletions(-)

--
2.18.0