Hi Steven Rostedt, During studying your code we find a problem, please see below.
> > From: "Steven Rostedt (Red Hat)" <rost...@goodmis.org> > > Enabling tracepoints at boot up can be very useful. The tracepoint > can be initialized right after RCU has been. There's no need to > wait for the early_initcall() to be called. That's too late for some > things that can use tracepoints for debugging. Move the logic to > enable tracepoints out of the initcalls and into init/main.c to > right after rcu_init(). > > This also allows trace_printk() to be used early too. > > Link: http://lkml.kernel.org/r/alpine.DEB.2.11.1412121539300.16494@nanos > Link: http://lkml.kernel.org/r/20141214164104.307127...@goodmis.org > > Reviewed-by: Paul E. McKenney <paul...@linux.vnet.ibm.com> > Suggested-by: Thomas Gleixner <t...@linutronix.de> > Tested-by: Thomas Gleixner <t...@linutronix.de> > Acked-by: Thomas Gleixner <t...@linutronix.de> > Signed-off-by: Steven Rostedt <rost...@goodmis.org> [...] > +void __init trace_init(void) > +{ > + tracer_alloc_buffers(); > + init_ftrace_syscalls(); > + trace_event_init(); > +} > + [...] > + > +void __init trace_event_init(void) > +{ > + event_trace_memsetup(); > + init_ftrace_syscalls(); > + event_trace_enable(); > +} > + init_ftrace_syscalls() get called twice by trace_init() and trace_event_init(), some resources are wasted. At lease one of them can be removed. In addition, could you please have a look at my early kprobe patch series? http://lists.infradead.org/pipermail/linux-arm-kernel/2015-January/313835.html Which enables kprobe very early, even before memory initialized. I think it is possible to combine these early tracing facilities together. Thank you! -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/