From: Steven Rostedt <rostedt@goodmis.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>,
"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Subject: [PATCH 0/2] [GIT PULL] tracing: Enable tracepoints early and allow printk to use them
Date: Mon, 15 Dec 2014 10:36:38 -0500 [thread overview]
Message-ID: <20141215153638.563024114@goodmis.org> (raw)
Linus,
As the merge window is still open, and this code was not as complex
as I thought it might be. I'm pushing this in now.
This will allow Thomas to debug his irq work for 3.20.
This adds two new features:
1) Allow traceopoints to be enabled right after mm_init(). By passing
in the trace_event= kernel command line parameter, tracepoints can be
enabled at boot up. For debugging things like the initialization of
interrupts, it is needed to have tracepoints enabled very early. People
have asked about this before and this has been on my todo list. As it
can be helpful for Thomas to debug his upcoming 3.20 IRQ work, I'm
pushing this now. This way he can add tracepoints into the IRQ set up
and have users enable them when things go wrong.
2) Have the tracepoints printed via printk() (the console) when they
are triggered. If the irq code locks up or reboots the box, having the
tracepoint output go into the kernel ring buffer is useless for
debugging. But being able to add the tp_printk kernel command line
option along with the trace_event= option will have these tracepoints
printed as they occur, and that can be really useful for debugging
early lock up or reboot problems.
This code is not that intrusive and it passed all my tests. Thomas tried
them out too and it works for his needs.
Link: http://lkml.kernel.org/r/20141214201609.126831471@goodmis.org
Please pull the latest trace-3.19-2 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git
trace-3.19-2
Tag SHA1: 378ef8105fed2dd3299e3232ff3d365a7d9feac9
Head SHA1: 0daa2302968c13b657118d6ac92471f8fd2f3f28
Steven Rostedt (Red Hat) (2):
tracing: Move enabling tracepoints to just after rcu_init()
tracing: Add tp_printk cmdline to have tracepoints go to printk()
----
Documentation/kernel-parameters.txt | 18 ++++++++++++++++
include/linux/ftrace.h | 7 +++++++
init/main.c | 4 ++++
kernel/sysctl.c | 7 +++++++
kernel/trace/trace.c | 25 +++++++++++++++++++++-
kernel/trace/trace.h | 14 +++++++++++++
kernel/trace/trace_events.c | 42 +++++++++++++++++++++++++++++++++++--
kernel/trace/trace_syscalls.c | 7 ++-----
8 files changed, 116 insertions(+), 8 deletions(-)
next reply other threads:[~2014-12-15 15:37 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-15 15:36 Steven Rostedt [this message]
2014-12-15 15:36 ` [PATCH 1/2] tracing: Move enabling tracepoints to just after rcu_init() Steven Rostedt
2014-12-15 15:36 ` [PATCH 2/2] tracing: Add tp_printk cmdline to have tracepoints go to printk() 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=20141215153638.563024114@goodmis.org \
--to=rostedt@goodmis.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=mingo@kernel.org \
--cc=paulmck@linux.vnet.ibm.com \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox