From: Li Zefan <lizf@cn.fujitsu.com>
To: "Theodore Ts'o" <tytso@mit.edu>
Cc: Jens Axboe <jens.axboe@oracle.com>,
LKML <linux-kernel@vger.kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: Re: blktrace: event traces displayed wrong while ftrace blktrace is active
Date: Tue, 14 Apr 2009 18:03:39 +0800 [thread overview]
Message-ID: <49E45F7B.7060709@cn.fujitsu.com> (raw)
In-Reply-To: <E1LtUBT-0007kq-HU@closure.thunk.org>
Theodore Ts'o wrote:
> Hi Li,
>
> Thanks for working on the ftrace blktrace code; I was wondering if you
> could take a look at something. While the nop or syscall tracer is
> selected ("echo nop > /sys/kernel/debug/tracing/current_tracer"), the
> event traces display like this:
>
> <...>-4491 [001] 9556.305696: jbd2_start_commit: dev dm-0:8 transaction 335442
> <...>-4491 [001] 9556.305700: jbd2_commit_locking: dev dm-0:8 transaction 335442
> <...>-4491 [001] 9556.305713: jbd2_commit_flushing: dev dm-0:8 transaction 335442
> <...>-4491 [001] 9556.305720: jbd2_submit_inode_data: dev dm-0 transaction ino 3807454
> <...>-4491 [001] 9556.305833: jbd2_commit_logging: dev dm-0:8 transaction 335442
> <...>-4491 [000] 9556.307241: jbd2_end_commit: dev dm-0:8 transaction 335442 head 334303
>
> That is, the timestamp information what CPU, what pid, etc., is present.
>
> However, if the blk tracer is active, this information is missing:
>
> jbd2_start_commit: dev dm-0:8 transaction 333227
> jbd2_commit_locking: dev dm-0:8 transaction 333227
> jbd2_commit_flushing: dev dm-0:8 transaction 333227
> jbd2_submit_inode_data: dev dm-0 transaction ino 1466869
> jbd2_submit_inode_data: dev dm-0 transaction ino 1310793
> jbd2_commit_logging: dev dm-0:8 transaction 333227
> jbd2_end_commit: dev dm-0:8 transaction 333227 head 332814
>
The cause is:
static void blk_tracer_start(struct trace_array *tr)
{
blk_tracer_enabled = true;
trace_flags &= ~TRACE_ITER_CONTEXT_INFO; <--- !!
}
If TRACE_ITER_CONTEXT_INFO is set, 'comm-pid [cpu] ts' will be
printed, and vise versa.
The purpose to unset this flag is to make binary output can be
parsed by blkparse.
> The context information for the blktrace is present:
>
> rm-25433 [001] 9578.307485: 8,18 m N cfq25433 slice expired t=0
> rm-25433 [001] 9578.307486: 8,18 m N cfq25433 put_queue
> kjournald2-14059 [001] 9579.032457: 8,18 A W 5631242 + 8 <- (8,18) 3671312
> kjournald2-14059 [001] 9579.032462: 8,18 Q W 5631242 + 8 [kjournald2]
> kjournald2-14059 [001] 9579.032470: 8,18 G W 5631242 + 8 [kjournald2]
>
> It's just the context information for the event traces which are
> missing.
>
> Anyway, if you could take a look at this, it would be much appreciated.
> Usually I can interpolate the the timestamps from the surrounding
> blktrace lines, but it would be nice if I didn't have to do that.
>
next prev parent reply other threads:[~2009-04-14 10:05 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-13 21:59 blktrace: event traces displayed wrong while ftrace blktrace is active Theodore Ts'o
2009-04-13 22:19 ` Ingo Molnar
2009-04-14 10:03 ` Li Zefan [this message]
2009-04-14 21:25 ` Frederic Weisbecker
2009-04-14 21:32 ` Theodore Tso
2009-04-15 0:16 ` Arnaldo Carvalho de Melo
2009-04-15 0:57 ` Li Zefan
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=49E45F7B.7060709@cn.fujitsu.com \
--to=lizf@cn.fujitsu.com \
--cc=acme@redhat.com \
--cc=fweisbec@gmail.com \
--cc=jens.axboe@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rostedt@goodmis.org \
--cc=tytso@mit.edu \
/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