Skip to content

Commit

Permalink
ftrace: perform an initialization for ftrace to enable it
Browse files Browse the repository at this point in the history
Impact: corrects a bug which made the non-dyn function tracer not functional

With latest git, the non-dynamic function tracer didn't get any trace.

The problem was the fact that ftrace_enabled wasn't initialized to 1
because ftrace hasn't any init function when DYNAMIC_FTRACE is disabled.

So when a tracer tries to register an ftrace_ops struct,
__register_ftrace_function failed to set the hook.

This patch corrects it by setting an init function to initialize
ftrace during the boot.

Signed-off-by: Frederic Weisbecker <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
  • Loading branch information
fweisbec authored and Ingo Molnar committed Oct 28, 2008
1 parent e946217 commit 0b6e4d5
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions kernel/trace/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -1339,6 +1339,14 @@ void __init ftrace_init(void)
}

#else

static int __init ftrace_nodyn_init(void)
{
ftrace_enabled = 1;
return 0;
}
device_initcall(ftrace_nodyn_init);

# define ftrace_startup() do { } while (0)
# define ftrace_shutdown() do { } while (0)
# define ftrace_startup_sysctl() do { } while (0)
Expand Down

0 comments on commit 0b6e4d5

Please sign in to comment.