Re: [PATCH] ftrace: add ftrace_graph_max_depth kernel parameter

From: Steven Rostedt
Date: Fri Mar 03 2017 - 03:16:19 EST


On Thu, 02 Mar 2017 16:54:57 -0800
Todd Brandt <todd.e.brandt@xxxxxxxxxxxxxxx> wrote:


> BTW I had one other question for you, is it possible to move the ftrace
> module's initialization further up the queue? ATM it initializes at
> about 600ms into boot, which is fine since most of the performance
> issues are happening at 1000ms+. But eventually it might be nice to
> trace some of the earlier init code.

module initialization? Or you mean boot up initialization?

For boot up, we have this:

mm_init();
sched_init();
idr_init_cache();
workqueue_init_early();
rcu_init();
trace_init();

Now, going before mm_init() will definitely be quite a pain, as we
that would require making the ring buffer out of early boot memory.

We could add a early_trace_init() just before sched_init(), with some
limited tracing. Tracepoints require rcu, although we could make hooks
to just do hard coded changes (no rcu synchronization) with a flag that
denotes that trace_init() hasn't been called yet.

I could toy with the idea, implement it, and see what breaks.

-- Steve