• Wu Zhangjin's avatar
    MIPS: Tracing: Add static function tracer support for MIPS · d2bb0762
    Wu Zhangjin authored
    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: default avatarWu Zhangjin <wuzhangjin@gmail.com>
    Reviewed-by: default avatarSteven 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: default avatarRalf Baechle <ralf@linux-mips.org>
    d2bb0762
Kconfig 52.3 KB