All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>,
	David Sharp <dhsharp@google.com>,
	Vaibhav Nagarnaik <vnagarnaik@google.com>,
	hcochran@lexmark.com,
	Hiraku Toyooka <hiraku.toyooka.gu@hitachi.com>
Subject: [for-next][PATCH 00/17] tracing: multi-buffers with snapshots, per_cpu and some debugging tools
Date: Thu, 07 Mar 2013 21:59:58 -0500	[thread overview]
Message-ID: <20130308025958.501479677@goodmis.org> (raw)


Here's more updates for linux-next.

I rebased the series on top of my last pull request of
 tip/perf/urgent.

Here I made the multi-buffers work with the snapshots, as well as
added per-cpu directory for the snapshots.

I added a snapshot_raw to allow tools to pull in the binary data
of the snapshot so that it can be analyzed better.

I removed the max_tr and added two trace buffers into the trace_array.
This actually makes things much simpler, and I really should have
designed ftrace to do this from day one. It makes things so much easier.

I added an internal tracing tool called tracing_snapshot() and
tracing_snapshot_alloc(). This will allow a developer to place in
the kernel a way to say "snapshot" here, and let the tracing
continue in case there's a better place to take a snapshot.

Note, tracing_snapshot() will fail if the snapshot buffer was never
allocated, but tracing_snapshot_alloc() needs to be called from
a context that can sleep (or early boot up). When debugging, it's
best to through in a tracing_snapshot_alloc() early on so that
it will be ready to use. Hmm, I should also add a kernel command
line parameter to allocate it on boot up. Darn, I thought I was
done for 3.10. That will need to be next :-/

Enjoy,

-- Steve

Steven Rostedt (Red Hat) (17):
      ring-buffer: Init waitqueue for blocked readers
      tracing: Add comment for trace event flag IGNORE_ENABLE
      tracing: Only clear trace buffer on module unload if event was traced
      tracing: Clear all trace buffers when unloaded module event was used
      tracing: Enable snapshot when any latency tracer is enabled
      tracing: Consolidate max_tr into main trace_array structure
      tracing: Add snapshot in the per_cpu trace directories
      tracing: Add config option to allow snapshot to swap per cpu
      tracing: Add snapshot_raw to extract the raw data from snapshot
      tracing: Have trace_array keep track if snapshot buffer is allocated
      tracing: Consolidate buffer allocation code
      tracing: Add snapshot feature to instances
      tracing: Add per_cpu directory into tracing instances
      tracing: Prevent deleting instances when they are being read
      tracing: Add internal tracing_snapshot() functions
      ring-buffer: Do not use schedule_work_on() for current CPU
      tracing: Move the tracing selftest code into its own function

----
 include/linux/ftrace_event.h         |    8 +
 include/linux/kernel.h               |    4 +
 kernel/trace/Kconfig                 |   26 +
 kernel/trace/blktrace.c              |    4 +-
 kernel/trace/ring_buffer.c           |   35 +-
 kernel/trace/trace.c                 |  997 ++++++++++++++++++++++------------
 kernel/trace/trace.h                 |   40 +-
 kernel/trace/trace_events.c          |   20 +-
 kernel/trace/trace_functions.c       |    8 +-
 kernel/trace/trace_functions_graph.c |   12 +-
 kernel/trace/trace_irqsoff.c         |   10 +-
 kernel/trace/trace_kdb.c             |    8 +-
 kernel/trace/trace_mmiotrace.c       |   12 +-
 kernel/trace/trace_output.c          |    2 +-
 kernel/trace/trace_sched_switch.c    |    8 +-
 kernel/trace/trace_sched_wakeup.c    |   16 +-
 kernel/trace/trace_selftest.c        |   42 +-
 kernel/trace/trace_syscalls.c        |    4 +-
 18 files changed, 824 insertions(+), 432 deletions(-)

             reply	other threads:[~2013-03-08  3:07 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-08  2:59 Steven Rostedt [this message]
2013-03-08  2:59 ` [for-next][PATCH 01/17] ring-buffer: Init waitqueue for blocked readers Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 02/17] tracing: Add comment for trace event flag IGNORE_ENABLE Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 03/17] tracing: Only clear trace buffer on module unload if event was traced Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 04/17] tracing: Clear all trace buffers when unloaded module event was used Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 05/17] tracing: Enable snapshot when any latency tracer is enabled Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 06/17] tracing: Consolidate max_tr into main trace_array structure Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 07/17] tracing: Add snapshot in the per_cpu trace directories Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 08/17] tracing: Add config option to allow snapshot to swap per cpu Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 09/17] tracing: Add snapshot_raw to extract the raw data from snapshot Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 10/17] tracing: Have trace_array keep track if snapshot buffer is allocated Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 11/17] tracing: Consolidate buffer allocation code Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 12/17] tracing: Add snapshot feature to instances Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 13/17] tracing: Add per_cpu directory into tracing instances Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 14/17] tracing: Prevent deleting instances when they are being read Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 15/17] tracing: Add internal tracing_snapshot() functions Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 16/17] ring-buffer: Do not use schedule_work_on() for current CPU Steven Rostedt
2013-03-08  3:00 ` [for-next][PATCH 17/17] tracing: Move the tracing selftest code into its own function Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130308025958.501479677@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=dhsharp@google.com \
    --cc=fweisbec@gmail.com \
    --cc=hcochran@lexmark.com \
    --cc=hiraku.toyooka.gu@hitachi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masami.hiramatsu.pt@hitachi.com \
    --cc=mingo@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=vnagarnaik@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.