Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6ab5d668 authored by Steven Rostedt's avatar Steven Rostedt Committed by Ingo Molnar
Browse files

tracing/function-profiler: do not free per cpu variable stat



The per cpu variable stat is freeded if we fail to allocate a name
on start up. This was due to stat at first being allocated in the
initial design. But since then, it has become a static per cpu variable
but the free on error was not removed.

Also added __init annotation to the function that this is in.

[ Impact: prevent possible memory corruption on low mem at boot up ]

Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent d0b6e04a
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -768,7 +768,7 @@ static struct tracer_stat function_stats __initdata = {
	.stat_show	= function_stat_show
};

static void ftrace_profile_debugfs(struct dentry *d_tracer)
static __init void ftrace_profile_debugfs(struct dentry *d_tracer)
{
	struct ftrace_profile_stat *stat;
	struct dentry *entry;
@@ -786,7 +786,6 @@ static void ftrace_profile_debugfs(struct dentry *d_tracer)
			 * The files created are permanent, if something happens
			 * we still do not free memory.
			 */
			kfree(stat);
			WARN(1,
			     "Could not allocate stat file for cpu %d\n",
			     cpu);
@@ -813,7 +812,7 @@ static void ftrace_profile_debugfs(struct dentry *d_tracer)
}

#else /* CONFIG_FUNCTION_PROFILER */
static void ftrace_profile_debugfs(struct dentry *d_tracer)
static __init void ftrace_profile_debugfs(struct dentry *d_tracer)
{
}
#endif /* CONFIG_FUNCTION_PROFILER */