All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] blktrace: bio-based device tracing improvement
@ 2011-08-29  3:47 Namhyung Kim
  2011-08-29  3:47 ` [PATCH 1/6] block: move trace_block_bio_remap() before blk_partition_remap Namhyung Kim
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Namhyung Kim @ 2011-08-29  3:47 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-fsdevel, linux-kernel

Hello,

The blktrace is used to report block device activities to user space
using kernel tracepoint but it was focused to block I/O request struct.
Thus bio-based devices (i.e. loop, ram, md, ...) which don't make use
of the request structure could not be supported well - the tool only
can detect a limited number of events such as queuing, cloning and
remapping but it cannot know when the I/O activity is completed.

bio_endio(), the I/O completion callback, can be used to fix this
problem by adding appropriate tracepoint in it. However it was called
from other paths too (normal request-based block devices and some of
nested block I/O handling routines) so that we should split such cases
to remove duplicated reports. In this series, __bio_endio() (and its
helper __bio_io_error) was introduced and converted for that purpose.

Note that (bio-based) dm already supported completion report by adding
the tracepoint into the path manually. With this patches, it will be
converted to use generic mechanism.

This patch set is based on v3.1-rc3.
Patch 1 is to correct remapping information and independent to others.
Patch 2 is the core of this series and Patch 3-5 are mechanical converts.
Patch 6 removes manual use of the tracepoint in dm.

Any feedbacks are welcome.

Thanks.


Namhyung Kim (6):
  block: move trace_block_bio_remap() before blk_partition_remap
  block: introduce __bio_endio()
  bounce: convert to __bio_endio() for bounced bio's
  bio-integrity: convert to __bio_endio()
  Btrfs: convert to __bio_endio()
  dm: get rid of block_bio_complete tracepoint

 block/blk-core.c       |   11 +++++------
 drivers/md/dm.c        |    1 -
 fs/bio-integrity.c     |    4 ++--
 fs/bio.c               |   19 +++++++++++++++++++
 fs/btrfs/compression.c |    4 ++--
 fs/btrfs/disk-io.c     |    2 +-
 fs/btrfs/inode.c       |    8 ++++----
 fs/btrfs/volumes.c     |    4 ++--
 include/linux/bio.h    |    2 ++
 mm/bounce.c            |    2 +-
 10 files changed, 38 insertions(+), 19 deletions(-)

-- 
1.7.6


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2011-09-01  1:44 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-29  3:47 [PATCH 0/6] blktrace: bio-based device tracing improvement Namhyung Kim
2011-08-29  3:47 ` [PATCH 1/6] block: move trace_block_bio_remap() before blk_partition_remap Namhyung Kim
2011-08-29  3:47 ` [PATCH 2/6] block: introduce __bio_endio() Namhyung Kim
2011-08-30 19:15   ` Jens Axboe
2011-09-01  1:43     ` Namhyung Kim
2011-08-29  3:47 ` [PATCH 3/6] bounce: convert to __bio_endio() for bounced bio's Namhyung Kim
2011-08-29  3:47   ` Namhyung Kim
2011-08-29  3:47 ` [PATCH 4/6] bio-integrity: convert to __bio_endio() Namhyung Kim
2011-08-29  3:47 ` [PATCH 5/6] Btrfs: " Namhyung Kim
2011-08-29  3:47 ` [PATCH 6/6] dm: get rid of block_bio_complete tracepoint Namhyung Kim

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.