From: Theodore Tso <tytso@mit.edu>
To: Mathieu Desnoyers <compudj@krystal.dyndns.org>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
ltt-dev@lists.casi.polymtl.ca,
Ext4 Developers List <linux-ext4@vger.kernel.org>,
linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
Steven Rostedt <rostedt@goodmis.org>
Subject: Re: [ltt-dev] Fw: [PATCH] ext4: Add markers for better debuggability
Date: Sat, 10 Jan 2009 13:42:40 -0500 [thread overview]
Message-ID: <20090110184240.GA31579@mit.edu> (raw)
In-Reply-To: <20090110161906.GB20526@Krystal>
On Sat, Jan 10, 2009 at 11:19:06AM -0500, Mathieu Desnoyers wrote:
>
> I just ported LTTng to 2.6.28 yesterday and started doing the port of
> ext4/jbd2 to tracepoints. As you can see in my 0.74 announcement, the
> tracepoint work for both jbd2 and ext4 is done. I also did the lttng
> probe module for jbd2. Now I just have to create the probe module for
> ext4. I also want to create debugfs files to control per-probe module
> filtering, e.g. :
>
> /mnt/debugfs/ltt/filter/jbd2/dev
> /mnt/debugfs/ltt/filter/ext4/dev
>
> Where writing to it would add device names to the filter list. I would
> like a scheme where we can easily add/remove devices, list all
> devices... I think ftrace already has something similar for
> instrumentation activation.
>
> The main question I am facing is : What interface semantic do we want
> for such filter control file ?
Hmm, we'll let's see. The most common filtering restriction will be
by device, but I'll occasionally want to filter based on a single
inode; the next most common thing I could forsee wanting to do is to
filter on a based of inode numbers or on one or more block groups.
(This would be when trying to figure out what is going on with a
particular filesystem benchmark.)
Past a certain point, I recognize that I'll probably have to write a
custom probe module --- although I have to admit that's one of the
things that has spoiled me about SystemTap; it automates the job of
creating the custom probe modules, and allows me to create
turing-equivalent filtering and data collection.
So the question is where do we draw the line between the most common
filters that is worth putting into a probe module that goes into
mainline, versus what should be done via custome probe modules,
probably via modifying the probe module as an example.
If it's not too much trouble, being able to filter on a single device
(or report the data from all trace points) and filtering on a single
inode (or reporting all inodes) seems to make the most mount of sense.
Does tht seem reasonable to you?
The other question is how much data gets reported back; normally with
Systemtap I would report back to userspace only the bits that I needed
to debug whatever issue I was looking at. However, with the LTTNG
approach, can we send back all of the bits of data tht was in the
markers? It won't be needed for all problems, and I know that sending
too much data back will cause us to potentilly overflow the kernel
buffering, since there is a limited bandwidth of stuff we can send
back through the kernel<->user interface. I'll have to admit to being
that well informed about LTTNG; what are the practical bandwidth
limitations that I should expect to see when it's in use?
Thanks, regards,
- Ted
P.S. At the kernel summit, there was some talk about a very
simplified interface that would allow us to extract text dumps from
tracepoints without having to download a huge userspace utility like
SystemTap --- or LTTng. Has that been written yet, or is the only way
for me to use Tracepoints right now is to figure out how to use the
whole LTTng infrstructure?
next prev parent reply other threads:[~2009-01-10 18:42 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20090109170408.75C1.KOSAKI.MOTOHIRO@jp.fujitsu.com>
2009-01-09 14:49 ` [ltt-dev] Fw: [PATCH] ext4: Add markers for better debuggability Mathieu Desnoyers
2009-01-09 18:58 ` Theodore Tso
2009-01-10 16:19 ` Mathieu Desnoyers
2009-01-10 18:42 ` Theodore Tso [this message]
2009-01-10 20:40 ` Steven Rostedt
2009-01-10 21:50 ` Theodore Tso
2009-01-12 1:34 ` Mathieu Desnoyers
2009-01-10 18:19 ` LTTng for ext4 tracing HOWTO Mathieu Desnoyers
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=20090110184240.GA31579@mit.edu \
--to=tytso@mit.edu \
--cc=compudj@krystal.dyndns.org \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ltt-dev@lists.casi.polymtl.ca \
--cc=mingo@elte.hu \
--cc=rostedt@goodmis.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;
as well as URLs for NNTP newsgroup(s).