diff options
author | Steven Rostedt <rostedt@goodmis.org> | 2008-08-14 15:45:08 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-14 10:34:44 +0200 |
commit | 68bf21aa15c85d2e9b623dcda2b1ed8893275fa1 (patch) | |
tree | 54d4d4f7e8311b77f3166a8807a635347d479081 /init | |
parent | 8da3821ba5634497da63d58a69e24a97697c4a2b (diff) | |
download | linux-68bf21aa15c85d2e9b623dcda2b1ed8893275fa1.tar.gz linux-68bf21aa15c85d2e9b623dcda2b1ed8893275fa1.tar.bz2 linux-68bf21aa15c85d2e9b623dcda2b1ed8893275fa1.zip |
ftrace: mcount call site on boot nops core
This is the infrastructure to the converting the mcount call sites
recorded by the __mcount_loc section into nops on boot. It also allows
for using these sites to enable tracing as normal. When the __mcount_loc
section is used, the "ftraced" kernel thread is disabled.
This uses the current infrastructure to record the mcount call sites
as well as convert them to nops. The mcount function is kept as a stub
on boot up and not converted to the ftrace_record_ip function. We use the
ftrace_record_ip to only record from the table.
This patch does not handle modules. That comes with a later patch.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'init')
-rw-r--r-- | init/main.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/init/main.c b/init/main.c index 3820323c4c84..ded1fae965ab 100644 --- a/init/main.c +++ b/init/main.c @@ -60,6 +60,7 @@ #include <linux/sched.h> #include <linux/signal.h> #include <linux/idr.h> +#include <linux/ftrace.h> #include <asm/io.h> #include <asm/bugs.h> @@ -687,6 +688,8 @@ asmlinkage void __init start_kernel(void) acpi_early_init(); /* before LAPIC and SMP init */ + ftrace_init(); + /* Do the rest non-__init'ed, we're now alive */ rest_init(); } |