1. 14 12月, 2009 3 次提交
    • M
      microblaze: ftrace: Add dynamic trace support · 7d241ff0
      Michal Simek 提交于
      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: NSteven Rostedt <rostedt@goodmis.org>
      Signed-off-by: NMichal Simek <monstr@monstr.eu>
      7d241ff0
    • M
      microblaze: ftrace: enable HAVE_FUNCTION_TRACE_MCOUNT_TEST · 6d9e60ce
      Michal Simek 提交于
      Implement MCOUNT_TEST in asm code - it is faster than use
      generic code
      Signed-off-by: NMichal Simek <monstr@monstr.eu>
      6d9e60ce
    • M
      microblaze: ftrace: add static function tracer · 2fd7c761
      Michal Simek 提交于
      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 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.
      
      Commit message from Wu Zhangjin <wuzhangjin@gmail.com>
      Signed-off-by: NMichal Simek <monstr@monstr.eu>
      2fd7c761