diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2017-04-07 13:38:54 +1000 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2017-04-07 13:38:54 +1000 |
commit | 4b0539027be7ee4572f8e16611c3624a2a4db6a7 (patch) | |
tree | 49f07417a530f8d71328782fed8cf9fec6053024 /init | |
parent | b2260517e06ca3c47cc35875c5cbc40e163649cb (diff) | |
parent | 696ced4fb1d76802f864d8848aa4716633f83c17 (diff) |
Merge remote-tracking branch 'ftrace/for-next'
Diffstat (limited to 'init')
-rw-r--r-- | init/main.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/init/main.c b/init/main.c index b0c11cbf5ddf..bb8d0a2a0410 100644 --- a/init/main.c +++ b/init/main.c @@ -545,6 +545,11 @@ asmlinkage __visible void __init start_kernel(void) trap_init(); mm_init(); + ftrace_init(); + + /* trace_printk can be enabled here */ + early_trace_init(); + /* * Set up the scheduler prior starting any interrupts (such as the * timer interrupt). Full topology setup happens at smp_init() @@ -570,7 +575,7 @@ asmlinkage __visible void __init start_kernel(void) rcu_init(); - /* trace_printk() and trace points may be used after this */ + /* Trace events are available after this */ trace_init(); context_tracking_init(); @@ -670,8 +675,6 @@ asmlinkage __visible void __init start_kernel(void) efi_free_boot_services(); } - ftrace_init(); - /* Do the rest non-__init'ed, we're now alive */ rest_init(); } @@ -959,6 +962,7 @@ static int __ref kernel_init(void *unused) kernel_init_freeable(); /* need to finish all async __init code before freeing the memory */ async_synchronize_full(); + ftrace_free_init_mem(); free_initmem(); mark_readonly(); system_state = SYSTEM_RUNNING; |