linux-stable-rt/arch/mips/kernel
Wu Zhangjin d2bb076299 MIPS: Tracing: Add static function tracer support for MIPS
If -pg of gcc is enabled with CONFIG_FUNCTION_TRACER=y. a calling to
_mcount will be inserted into each kernel function. so, there is a
possibility to trace the kernel functions in _mcount.

This patch add the MIPS specific _mcount support for static function
tracing. by default, ftrace_trace_function is initialized as
ftrace_stub(an empty function), so, the default _mcount will introduce
very little overhead. after enabling ftrace in user-space, it will jump
to a real tracing function and do static function tracing for us.

and -ffunction-sections is incompatible with -pg, so, disable it when
ftracer is enabled.

Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
Reviewed-by: Steven Rostedt <rostedt@goodmis.org>
Cc: Nicholas Mc Guire <der.herr@hofr.at>
Cc: zhangfx@lemote.com
Cc: Wu Zhangjin <wuzhangjin@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: linux-kernel@vger.kernel.org
Cc: linux-mips@linux-mips.org
Patchwork: http://patchwork.linux-mips.org/patch/672/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2009-12-17 01:57:21 +00:00
..
cpufreq MIPS: Loongson 2F: Add CPU frequency scaling support 2009-12-17 01:57:20 +00:00
.gitignore
8250-platform.c
Makefile MIPS: Tracing: Add static function tracer support for MIPS 2009-12-17 01:57:21 +00:00
asm-offsets.c
binfmt_elfn32.c
binfmt_elfo32.c
branch.c
cevt-bcm1480.c
cevt-ds1287.c
cevt-gt641xx.c
cevt-r4k.c
cevt-sb1250.c
cevt-smtc.c
cevt-txx9.c
cpu-bugs64.c
cpu-probe.c MIPS: Loongson 2F: Add CPU frequency scaling support 2009-12-17 01:57:20 +00:00
csrc-bcm1480.c
csrc-ioasic.c
csrc-powertv.c MIPS: PowerTV: Base files for Cisco PowerTV platform 2009-12-17 01:57:17 +00:00
csrc-r4k.c
csrc-sb1250.c
early_printk.c
entry.S
genex.S
gpio_txx9.c
head.S
i8253.c
i8259.c
init_task.c
irq-gic.c
irq-gt641xx.c
irq-msc01.c
irq-rm7000.c
irq-rm9000.c
irq.c
irq_cpu.c
irq_txx9.c
kgdb.c
kspd.c
linux32.c
machine_kexec.c
mcount.S MIPS: Tracing: Add static function tracer support for MIPS 2009-12-17 01:57:21 +00:00
mips-mt-fpaff.c
mips-mt.c
mips_ksyms.c MIPS: Tracing: Add static function tracer support for MIPS 2009-12-17 01:57:21 +00:00
module.c
octeon_switch.S
proc.c
process.c
ptrace.c
ptrace32.c
r4k_fpu.S
r4k_switch.S
r2300_fpu.S
r2300_switch.S
r6000_fpu.S
relocate_kernel.S
reset.c
rtlx.c
scall32-o32.S
scall64-64.S
scall64-n32.S
scall64-o32.S
setup.c
signal-common.h
signal.c
signal32.c
signal_n32.c
smp-cmp.c
smp-mt.c
smp-up.c
smp.c
smtc-asm.S
smtc-proc.c
smtc.c
spram.c
stacktrace.c
sync-r4k.c
syscall.c
time.c
topology.c
traps.c
unaligned.c
vmlinux.lds.S
vpe.c
watch.c