1. 13 Mar, 2012 2 commits
    • Mark Brown's avatar
      tracing: Fix build breakage without CONFIG_PERF_EVENTS · fa73dc94
      Mark Brown authored
      Today's -next fails to build for me:
      
        CC      kernel/trace/trace_export.o
      In file included from kernel/trace/trace_export.c:197: kernel/trace/trace_entries.h:58: error: 'perf_ftrace_event_register' undeclared here (not in a function)
      make[2]: *** [kernel/trace/trace_export.o] Error 1
      make[1]: *** [kernel/trace] Error 2
      make: *** [kernel] Error 2
      
      because as of ced390 (ftrace, perf: Add support to use function
      tracepoint in perf) perf_trace_event_register() is declared in trace.h
      only if CONFIG_PERF_EVENTS is enabled but I don't have that set.
      
      Ensure that we always have a definition of perf_trace_event_register()
      by making the definition unconditional.
      
      Link: http://lkml.kernel.org/r/1330426967-17067-1-git-send-email-broonie@opensource.wolfsonmicro.com
      
      
      
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      fa73dc94
    • Rajesh Bhagat's avatar
      ftrace: Fix function_graph for archs that test ftrace_trace_function · db6544e0
      Rajesh Bhagat authored
      
      
      When CONFIG_DYNAMIC_FTRACE is not set, some archs (ARM) test
      the variable function_trace_function to determine if it should
      call the function tracer. If it is not set to ftrace_stub, then
      it will call the function and return, and not call the function
      graph tracer.
      
      But some of these archs (ARM) do not have the assembly code
      to test if function tracing is enabled or not (quick stop of tracing)
      and it calls the helper routine ftrace_test_stop_func() instead.
      
      If function tracer is enabled and then disabled, the variable
      ftrace_trace_function is still set to the helper routine
      ftrace_test_stop_func(), and not to ftrace_stub. This will
      prevent the function graph tracer from ever running.
      
      Output before patch
      /debug/tracing # echo function > current_tracer
      /debug/tracing # echo function_graph > current_tracer
      /debug/tracing # cat trace
      
      Output after patch
      /debug/tracing # echo function > current_tracer
      /debug/tracing # echo function_graph > current_tracer
      /debug/tracing # cat trace
      0) ! 253.375 us | } /* irq_enter */
      0) | generic_handle_irq() {
      0) | handle_fasteoi_irq() {
      0) 9.208 us | _raw_spin_lock();
      0) | handle_irq_event() {
      0) | handle_irq_event_percpu() {
      Signed-off-by: default avatarRajesh Bhagat <rajesh.lnx@gmail.com>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      db6544e0
  2. 02 Mar, 2012 1 commit
    • Steven Rostedt's avatar
      tracing: Keep NMI watchdog from triggering when dumping trace · b892e5c8
      Steven Rostedt authored
      
      
      As ftrace_dump() (called by ftrace_dump_on_oops) disables interrupts
      as it dumps its output to the console, it can keep interrupts disabled
      for long periods of time. This is likely to trigger the NMI watchdog,
      and it can disrupt the output of critical data.
      
      Add a touch_nmi_watchdog() to each event that is written to the screen
      to keep the NMI watchdog from affecting the output.
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      b892e5c8
  3. 27 Feb, 2012 1 commit
  4. 22 Feb, 2012 1 commit
    • Steven Rostedt's avatar
      tracing/ring-buffer: Only have tracing_on disable tracing buffers · 499e5470
      Steven Rostedt authored
      
      
      As the ring-buffer code is being used by other facilities in the
      kernel, having tracing_on file disable *all* buffers is not a desired
      affect. It should only disable the ftrace buffers that are being used.
      
      Move the code into the trace.c file and use the buffer disabling
      for tracing_on() and tracing_off(). This way only the ftrace buffers
      will be affected by them and other kernel utilities will not be
      confused to why their output suddenly stopped.
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      499e5470
  5. 21 Feb, 2012 9 commits
  6. 17 Feb, 2012 2 commits
  7. 14 Feb, 2012 15 commits
  8. 13 Feb, 2012 8 commits
  9. 11 Feb, 2012 1 commit