From: Steven Rostedt <rostedt@goodmis.org>
To: Namhyung Kim <namhyung@gmail.com>
Cc: Jens Axboe <jaxboe@fusionio.com>,
linux-kernel@vger.kernel.org,
Frederic Weisbecker <fweisbec@gmail.com>,
Ingo Molnar <mingo@redhat.com>
Subject: Re: [PATCH] blktrace: add FLUSH/FUA support
Date: Tue, 07 Jun 2011 19:20:12 -0400 [thread overview]
Message-ID: <1307488812.9218.17.camel@gandalf.stny.rr.com> (raw)
In-Reply-To: <1306917509-6819-1-git-send-email-namhyung@gmail.com>
On Wed, 2011-06-01 at 17:38 +0900, Namhyung Kim wrote:
> Add FLUSH/FUA support to blktrace. As FLUSH precedes WRITE and/or
> FUA follows WRITE, use the same 'F' flag for both cases and
> distinguish them by their (relative) position. The end results
> look like (other flags might be shown also):
>
> - WRITE: W
> - WRITE_FLUSH: FW
> - WRITE_FUA: WF
> - WRITE_FLUSH_FUA: FWF
>
> Note that BLK_TC_FLUSH should be the last one due to MASC_TC_BIT().
> Otherwise it will cause unpleasant result because __REQ_FLUSH (23)
> would be greater than ilog2(BLK_TC_FLUSH) + BLK_TC_SHIFT (16) so the
> negative value. __REQ_FUA (12) doesn't have this problem.
>
> Signed-off-by: Namhyung Kim <namhyung@gmail.com>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: Frederic Weisbecker <fweisbec@gmail.com>
> Cc: Ingo Molnar <mingo@redhat.com>
> ---
> include/linux/blktrace_api.h | 5 +++--
> include/trace/events/block.h | 18 +++++++++---------
> kernel/trace/blktrace.c | 21 ++++++++++++++++-----
> 3 files changed, 28 insertions(+), 16 deletions(-)
>
> diff --git a/include/linux/blktrace_api.h b/include/linux/blktrace_api.h
> index b22fb0d3db0f..05a688648bef 100644
> --- a/include/linux/blktrace_api.h
> +++ b/include/linux/blktrace_api.h
> @@ -14,7 +14,7 @@
> enum blktrace_cat {
> BLK_TC_READ = 1 << 0, /* reads */
> BLK_TC_WRITE = 1 << 1, /* writes */
> - BLK_TC_BARRIER = 1 << 2, /* barrier */
> + BLK_TC_FUA = 1 << 2, /* fua requests */
> BLK_TC_SYNC = 1 << 3, /* sync IO */
> BLK_TC_SYNCIO = BLK_TC_SYNC,
> BLK_TC_QUEUE = 1 << 4, /* queueing/merging */
> @@ -28,8 +28,9 @@ enum blktrace_cat {
> BLK_TC_META = 1 << 12, /* metadata */
> BLK_TC_DISCARD = 1 << 13, /* discard requests */
> BLK_TC_DRV_DATA = 1 << 14, /* binary per-driver data */
> + BLK_TC_FLUSH = 1 << 15, /* flush requests */
>
> - BLK_TC_END = 1 << 15, /* only 16-bits, reminder */
> + BLK_TC_END = 1 << 15, /* we've run out of bits! */
> };
>
> #define BLK_TC_SHIFT (16)
> diff --git a/include/trace/events/block.h b/include/trace/events/block.h
> index bf366547da25..f21fea24216d 100644
> --- a/include/trace/events/block.h
> +++ b/include/trace/events/block.h
> @@ -19,7 +19,7 @@ DECLARE_EVENT_CLASS(block_rq_with_error,
> __field( sector_t, sector )
> __field( unsigned int, nr_sector )
> __field( int, errors )
> - __array( char, rwbs, 6 )
> + __array( char, rwbs, 8 )
> __dynamic_array( char, cmd, blk_cmd_buf_len(rq) )
> ),
>
> @@ -104,7 +104,7 @@ DECLARE_EVENT_CLASS(block_rq,
> __field( sector_t, sector )
> __field( unsigned int, nr_sector )
> __field( unsigned int, bytes )
> - __array( char, rwbs, 6 )
> + __array( char, rwbs, 8 )
> __array( char, comm, TASK_COMM_LEN )
> __dynamic_array( char, cmd, blk_cmd_buf_len(rq) )
> ),
> @@ -183,7 +183,7 @@ TRACE_EVENT(block_bio_bounce,
> __field( dev_t, dev )
> __field( sector_t, sector )
> __field( unsigned int, nr_sector )
> - __array( char, rwbs, 6 )
> + __array( char, rwbs, 8 )
> __array( char, comm, TASK_COMM_LEN )
> ),
>
Wouldn't it be better to replace all these "6" and "8"'s with a macro?
Then it would be a heck of a lot easier to change in the future.
-- Steve
next prev parent reply other threads:[~2011-06-07 23:20 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-01 8:38 Namhyung Kim
2011-06-07 23:20 ` Steven Rostedt [this message]
2011-06-08 3:11 ` Namhyung Kim
2011-07-28 20:21 Jeff Moyer
2011-07-28 23:19 ` Namhyung Kim
2011-07-29 13:13 ` Jeff Moyer
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=1307488812.9218.17.camel@gandalf.stny.rr.com \
--to=rostedt@goodmis.org \
--cc=fweisbec@gmail.com \
--cc=jaxboe@fusionio.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®