blktrace: update blkiomon doc
authorEdward Shishkin <edward@redhat.com>
Tue, 15 Dec 2009 17:48:12 +0000 (18:48 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Tue, 20 Apr 2010 07:51:52 +0000 (09:51 +0200)
Fixup for 499398.

Description of problem:

blkiomon does not understand the output of blktrace when
working with logical volume device (it is quiet, while
working with physical device it prints IO statistics as
expected).

BUG (or design feature?):
/dev/dm-* and /dev/md* don't see BLK_TC_COMPLETE actions:

        /* we need an older D trace and a younger C trace */
        if (t_old->bit.action & BLK_TC_ACT(BLK_TC_ISSUE) &&
            t_young->bit.action & BLK_TC_ACT(BLK_TC_COMPLETE)) {
                /* matching D and C traces - update statistics */
                match++;
                blkiomon_account(&t_old->bit, &t_young->bit);
                blkiomon_free_trace(t_stored);
                return t;
        }

Possible solution:
Update documentation.

Signed-off-by: Edward Shishkin <edward@redhat.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
doc/blkiomon.8

index dbed0df58a7853d7d759ce0457fa6a2155f1ba2e..aa5ece241750f8a5e062b05c91cfb953b1f944ab 100644 (file)
@@ -17,6 +17,8 @@ blkiomon is a block device I/O monitor. It periodically generates per-device
 request size and request latency statistics from blktrace data. It provides
 histograms as well as data that can be used to calculate min, max, average
 and variance. For this purpose, it consumes D and C traces read from stdin.
+Note, that this doesn't work for logical volumes, as high-level drivers
+don't see the completion of the events (C).
 
 There are options for binary output and human-readable output to files and
 stdout. Output to a message queue is supported as well.