microblaze: ftrace: Add dynamic trace support
authorMichal Simek <monstr@monstr.eu>
Thu, 10 Dec 2009 13:15:44 +0000 (14:15 +0100)
committerMichal Simek <monstr@monstr.eu>
Mon, 14 Dec 2009 07:44:01 +0000 (08:44 +0100)
commit7d241ff0567b9503d79ee775c40927d09b509f83
tree8de1af72c5643416ee427edc7e9ff2170e0d73db
parent6d9e60ce30a1be35491c74df00aaa25d869f8a02
microblaze: ftrace: Add dynamic trace support

With dynamic function tracer, by default, _mcount is defined as an
"empty" function, it returns directly without any more action. When
enabling it in user-space, it will jump to a real tracing
function(ftrace_caller), and do the real job for us.

Differ from the static function tracer, dynamic function tracer provides
two functions ftrace_make_call()/ftrace_make_nop() to enable/disable the
tracing of some indicated kernel functions(set_ftrace_filter).

In the kernel version, there is only one "_mcount" string for every
kernel function, so, we just need to match this one in mcount_regex of
scripts/recordmcount.pl.

For more information please look at code and Documentation/trace folder.

Steven ACK that scripts/recordmcount.pl part.

Acked-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Michal Simek <monstr@monstr.eu>
arch/microblaze/Kconfig
arch/microblaze/include/asm/ftrace.h
arch/microblaze/kernel/Makefile
arch/microblaze/kernel/ftrace.c [new file with mode: 0644]
arch/microblaze/kernel/mcount.S
scripts/recordmcount.pl