--- blktrace-1.0.1.orig/changelog
+++ blktrace-1.0.1/changelog
@@ -0,0 +1,6088 @@
+commit 29dec8c92c05dac35a55fa2ed1a0ac3cab8d41f2
+Merge: 84feb18 1e09f6e
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Mon Jun 29 16:40:22 2009 +0200
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit 1e09f6e9012826fca69fa07222b7bc53c3e629ee
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Mon May 11 14:00:10 2009 +0200
+
+    Version 1.0.1
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 420c2b7629ca7f7c81896652edb93c3a97c87c4c
+Author: Eric Sandeen <sandeen@redhat.com>
+Date:   Thu May 7 11:08:25 2009 -0500
+
+    blkrawverify: warn and return error if no traces are found
+    
+    blkrawverify is prints no errors and returns success if the
+    requested tracefiles aren't found:
+    
+    # blkrawverify foobar
+    Verifying foobar
+    # echo $?
+    0
+    
+    With this change it's a bit more informative:
+    
+    # ./blkrawverify foobar
+    Verifying foobar
+    No tracefiles found for foobar
+    # echo $?
+    1
+    
+    Resolves Red Hat Bugzilla #499581
+    
+    Reported-by: Milos Malik <mmalik@redhat.com>
+    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 73ad1727443924d5efa94d5fad1ad3cfea3d3780
+Author: Eric Sandeen <sandeen@redhat.com>
+Date:   Mon May 4 16:04:51 2009 -0500
+
+    blkiomon manpage and usage reference invalid "msg-queue-name" option
+    
+    the blkiomon usage text and man page reference a
+    "msg-queue-name" option, but getopts is only looking
+    for "msg-qeueue" - fix the docs to match the code.
+    
+    Reported-by: Milos Malik <mmalik@redhat.com>
+    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit bc93336f08a3773cdc8d88eda035346e3896fa29
+Author: Eric Sandeen <sandeen@redhat.com>
+Date:   Mon May 4 15:40:53 2009 -0500
+
+    fix up btrace options & manpage
+    
+    The btrace script & man page didn't quite match for options,
+    and the btrace script was missing a few options in the getopts
+    specification (b&n).  Also, there seems to be no such thing as
+    a "summarize" option anywhere, so remove it.
+    
+    Reported-by: /Milos Malik <mmalik@redhat.com <mailto:mmalik@redhat.com>>/
+    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fbdf23ecc21c6fbbc6fd25d41e3072d06188d274
+Author: Eric Sandeen <sandeen@redhat.com>
+Date:   Mon May 4 15:16:31 2009 -0500
+
+    more manpage fixups
+    
+    Fix various typos & inconsistencies in man pages.
+    
+    I think the manpages could use a general tidy-up, but this
+    mostly fixes things which I'd consider "errors" vs. style
+    issues.
+    
+    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 306a8ee991a42055365aade54b9c988e5373cef5
+Author: Eric Sandeen <sandeen@redhat.com>
+Date:   Thu Apr 30 10:56:04 2009 -0500
+
+    fix max-pkts option inconsistencies
+    
+    This is for RH bug 498426,
+    btrecord doesn't recognize --max-pkts and --max-packets cmd line options
+    
+    Usage text and some documentation references "--max-pkts" and
+    the man page references "--max-packets" but the getopts code
+    is looking for --max_pkts.
+    
+    I'm not sure if it's best to make the code match the majority
+    of the docs, or fix the docs to match the code?  This patch does
+    the former, but I'm not picky if you want to go the other way :)
+    
+    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 580f7440b93c08266867716dc4b891845f7ad891
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Apr 30 13:10:31 2009 -0400
+
+    Converted to using the correct remap entries
+    
+    This follows the kernel changes to the blk_io_trace_remap structure to
+    better align the names of the structure elements with the real intent of
+    "from" and "to" (devices & sectors).
+    
+    See the kernel patches @
+    
+    http://lkml.org/lkml/2009/4/30/340
+    http://lkml.org/lkml/2009/4/30/341
+    
+    (Note: since the ABI order didn't change, old user code will work with
+    the new kernel code & vice versa.)
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit af90543f47f93782df94a3a56d4f607f4dd6ad4c
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Mon May 11 08:41:33 2009 +0200
+
+    blkiomon: fix unaligned accesses on ia64
+    
+    commit 7aa3ebcec011bfe9cc60d6476252c03376a37551 packed
+    the blkiomon_stat structure so that traces from one
+    arch could be analyzed on another (in truth only x86
+    is different, at least from x86_64/ia64/ppc/ppc64/s390/s390x)
+    
+    Moving the __u32 device member instead of a new padding field should be
+    fine.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit b5f8804a588fffdea10a0cd46a36fc196acea9f2
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Mon Apr 20 16:07:11 2009 +0200
+
+    fix off-by-one issues in blkiomon.h
+    
+    Fix two off-by-one issues. Last bucket of histogram was ommitted by mistake
+    when being converted to big-endian or when being merged with another bucket.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 8d388c8ea6a58186bfdf7ca7fc4e1268eced8b14
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Mon Apr 20 16:05:18 2009 +0200
+
+    fix include statement in stats.h
+    
+    Some endianess conversion macros have been moved and the corresponding
+    header file is gone. Need to adapt an include statement in stats.h. The
+    compiler did not complain because blkiomon.c accidently included blktrace.h
+    prior to stats.h. Introduced by blktrace rewrite which became version 2.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 60886290e2ba6ddae1213f3a13929193180c8c55
+Author: Jeff Moyer <jmoyer@redhat.com>
+Date:   Fri Apr 17 08:50:22 2009 +0200
+
+    handle race to mkdir at startup
+    
+    I ran into a problem when specifying -D dirname-that-doesnt-yet-exist.
+    Blktrace would fail, spewing the following messages:
+    
+    [root@megadeth blktrace]# ./blktrace -d /dev/cciss/c0d1 -D ./2.6.30-rc2-cfq-local
+    Destination dir ./2.6.30-rc2-cfq-local/ can't be made: 17/File exists
+    Destination dir ./2.6.30-rc2-cfq-local/ can't be made: 17/File exists
+    Destination dir ./2.6.30-rc2-cfq-local/ can't be made: 17/File exists
+    Destination dir ./2.6.30-rc2-cfq-local/ can't be made: 17/File exists
+    Destination dir ./2.6.30-rc2-cfq-local/ can't be made: 17/File exists
+    FAILED to start thread on CPU 0: 1/Operation not permitted
+    FAILED to start thread on CPU 4: 1/Operation not permitted
+    FAILED to start thread on CPU 5: 1/Operation not permitted
+    FAILED to start thread on CPU 6: 1/Operation not permitted
+    FAILED to start thread on CPU 7: 1/Operation not permitted
+    
+    I tracked it down to the fact that there is no synchronization between
+    threads when trying to create the output directory.  The fix is simple,
+    just allow the race to happen and detect it.  It's not really worth
+    putting in any extra synchronization.  It looks like no place else in
+    that startup path needs synchronization either.
+    
+    This patch fixes the issue for me.  I tested it by running the very
+    command that caused me headaches 100% of the time before.  I also did a
+    chattr +i on the directory and verified that it would really fail in the
+    case where it couldn't create the directory.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit bb4a66074cecd59afc37f0053fdf42661503f51c
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Mon Apr 6 07:30:16 2009 -0400
+
+    Fixed plug/unplug logic in btt
+    
+    Was not accounting for unplugged time due to timeout unplugs.
+
+commit 15d67efcf8859d0f64d2ba38249bc50f87c30b57
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Apr 2 12:09:08 2009 -0400
+
+    Working on fixing % time q plugged
+
+commit d8ba9b683e1a341ab72c40836c05a360875c2e5e
+Author: Eric Sandeen <sandeen@redhat.com>
+Date:   Thu Mar 26 20:44:06 2009 +0100
+
+    fix trivial typo in manpage
+    
+    Fix small typo as reported by Kent Baxley <kbaxley@redhat.com>
+    in Red Hat Bug 489941 - tiny typo in blktrace manpage
+    
+    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
+    Signed-off-by: Jens Axboe <axboe@carl.(none)>
+
+commit cfa089d429acfcb5a21be63ded7f943287401fef
+Author: Carl Henrik Lunde <chlunde@ping.uio.no>
+Date:   Fri Feb 6 12:17:25 2009 +0100
+
+    Add NOTIFY to activity mask
+    
+    Allow masking in messages by using "-a notify".
+    
+    Signed-off-by: Carl Henrik Lunde <chlunde@ping.uio.no>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit f547a39d32d514eb7bce82b955193b73e9828c85
+Author: Tom Zanussi <tzanussi@gmail.com>
+Date:   Mon Mar 23 19:41:00 2009 +0100
+
+    Blktrace failed to lock reader threads on the cpu used by the corresponding
+    writer. This resulted in stale data being consumed when blktrace accidently
+    read at a position that was being written to at the same time. This issue
+    surfaced as "bad trace magic" warnings emitted by blktrace tools.
+    
+    The problem occured on an SMP System z machine. The patch fixes the issue.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <axboe@carl.(none)>
+
+commit 726d2aee9d2b97b32daa08824857c77f9536609f
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Mar 12 10:29:40 2009 -0400
+
+    Generate matplotlib plots for btt generated data
+    
+    btt_plot.py: Generate matplotlib plots for BTT generated data files
+    
+    Files handled:
+      AQD   - Average Queue Depth           Running average of queue depths
+    
+      BNOS  - Block numbers accessed        Markers for each block
+    
+      Q2D   - Queue to Issue latencies      Running averages
+      D2C   - Issue to Complete latencies   Running averages
+      Q2C   - Queue to Complete latencies   Running averages
+    
+    Usage:
+      btt_plot_aqd.py       equivalent to: btt_plot.py -t aqd
+      btt_plot_bnos.py      equivalent to: btt_plot.py -t bnos
+      btt_plot_q2d.py       equivalent to: btt_plot.py -t q2d
+      btt_plot_d2c.py       equivalent to: btt_plot.py -t d2c
+      btt_plot_q2c.py       equivalent to: btt_plot.py -t q2c
+    
+    Arguments:
+      [ -A          | --generate-all   ] Default: False
+      [ -L          | --no-legend      ] Default: Legend table produced
+      [ -o <file>   | --output=<file>  ] Default: <type>.png
+      [ -T <string> | --title=<string> ] Default: Based upon <type>
+      [ -v          | --verbose        ] Default: False
+      <data-files...>
+    
+      The -A (--generate-all) argument is different: when this is specified,
+      an attempt is made to generate default plots for all 5 types (aqd, bnos,
+      q2d, d2c and q2c). It will find files with the appropriate suffix for
+      each type ('aqd.dat' for example). If such files are found, a plot for
+      that type will be made. The output file name will be the default for
+      each type. The -L (--no-legend) option will be obeyed for all plots,
+      but the -o (--output) and -T (--title) options will be ignored.
+
+commit c2039a2eebe7d48d8e1f62e727affa28f0e2b65e
+Merge: 40502e4 5d65b5e
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed Feb 18 13:11:48 2009 +0100
+
+    Merge branch 'master' of ssh://axboe@router.home.kernel.dk/data/git/blktrace
+
+commit 40502e47ffbe93fd14138769f4eee56c3c439c18
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed Feb 18 13:08:08 2009 +0100
+
+    Update Jenkins hash to lookup3() variant
+    
+    It both mixes and performs better than lookup2().
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 5d65b5e6333cfdd14ab0e944cef8474445e531b3
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Feb 17 08:48:40 2009 -0500
+
+    Fixed EAGAIN handling in blktrace.c
+    
+    EAGAIN was causing header failures in network mode. Added in a usleep
+    and retried the recv().
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit 358504bb7869e73e38abcbc78b50d441f693711e
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Tue Feb 17 13:39:40 2009 +0100
+
+    O_NOATIME isn't always present
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit ee27874baa43db7d697b5de72938e4ccb71bdabb
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri Feb 13 12:38:54 2009 -0500
+
+    btt: Added no remap option
+    
+    Trying to run btt on pre-2.6.19 kernels has problems handling the
+    previous remap PDU - it did not include a proper device-from field.
+    (Probably should have bumped the blktrace version when we did that.)
+    
+    This option just tosses those out as it just results in lots of crazy
+    stuff being handled.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit c053af429559c8f4311cd773262ff223097cdcb3
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri Feb 13 12:43:45 2009 -0500
+
+    btt general cleanup plus valgrind clean
+    
+    Lots of general clean up of code, getting interfaces across different
+    files to be similar (all are no alloc/free), and made it valgrind clean.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com
+
+commit 8f34184f8c7905bb929862d224a7c4969bc9190e
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Feb 12 14:28:51 2009 -0500
+
+    btt: Missed fopen conversion to my_fopen
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com
+
+commit 055cc3e52d0d0d0663c6e85ea4ea26dbf40cfcda
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Feb 12 13:30:47 2009 -0500
+
+    Code review updates
+    
+    Re-coding large functions, re-arranging some stuff.
+
+commit df81fdb531a0437a22f88639249d23c1d12ddc45
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Feb 12 11:13:20 2009 -0500
+
+    Reworked blktrace master/thread interface
+    
+    Allows parallel initializations.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit 52481561c1f0cdc6fa76a15d800b2b228fda7877
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Feb 12 08:01:42 2009 -0500
+
+    Cleaned up devs that have no data
+    
+    Working around an issue with older kernels (pre-2.6.19): remaps did not
+    include device-from, so the pad field is being used for a device which
+    never has any Q or Ds done to it (it's an invalid ID). This code removes
+    all such devices before output processing.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit 3b552a2d1ff8ecccbbb82668f73d1cb134fca1e9
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Feb 11 16:16:12 2009 -0500
+
+    Moved starting of tracing after tracers are going
+    
+    Hold off BLKTRACESTART to threads are ready to consume tracers.
+
+commit e6855475478967e7cf92f8beece05ea55d31e6f1
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Feb 11 13:40:09 2009 -0500
+
+    btt: fixed open in setup_ifile
+    
+    Took my_open & my_fopen code from blktrace 2.0: needed to add in open
+    resource limit increasing stuff.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit 6488ca487c5695b784db56c79b67007e92eeb2ac
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Feb 11 13:23:21 2009 -0500
+
+    Synchronized trace gathering
+    
+    Previously, each tracer thread would start gathering traces as soon as
+    it got going - which might slow down later thread start ups. This change
+    allows each thread to be ready to gather traces, and then the main
+    thread starts all the threads gathering at the same time.
+
+commit e58f3937548ed115ac5104817f2a9df53830f381
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Feb 11 13:10:13 2009 -0500
+
+    Invoke gethostbyname once, handle errors better
+    
+    Instead of invoking gethostbyname once per client, we only need to do it
+    once at initialization time. Plus: gethostbyname has a non-standard
+    errno reporting mechanism, handle this better.
+
+commit d5302b03b2728a27f14c4f260ce6a5247ea87c6e
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Feb 11 11:42:09 2009 -0500
+
+    Added accept as a system call needing resource increases
+    
+    accept(2) opens a socket, and thus needs to handle EMFILE/ENFILE errors
+    like other system calls.
+
+commit 3fe0b570b01622e329b9c999ebf867b1f1cb2e20
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Mon Feb 9 15:11:49 2009 -0500
+
+    Rewrote blktrace to have a single thread per CPU
+    
+    Massive changes: mostly around the notion of having much fewer threads
+    (instead of N(devs) X N(cpus) threads, we'll have just N(cpus)). This
+    is very important for larger systems (with lots of devices to
+    trace). A lot of the code was stolen from the original blktrace code,
+    major changes include:
+    
+    o  On the client side we only have a single thread per client CPU. Each
+    thread will then open all device files for that CPU, and use poll to
+    determine which file needs processing.
+    
+    o  For network client mode w/ sendfile, this means that a single socket
+    will carry all data to the remote network server. The network server
+    side will then distribute its reads off that one socket onto different
+    trace files.
+    
+    o  For network client mode w/out sendfile, we fall back to doing things
+    like piped mode: keep buffers of tracers read in, and then the main
+    thread will issue these on sockets to the server. In this case, the main
+    thread will still have a single socket per CPU.
+    
+    o  For networked mode we added an OPEN concept on the client side: as
+    soon as the connection to the server is set up, a "header" is sent
+    signifying that this connection will handle a <cpu, device> tuple. For
+    each socket opened on the client side, it will send a header per device
+    being managed. The server side will handle utilize opens to set up
+    appropriate data structures to handle incoming data streams.
+    
+    o  For both the OPEN and CLOSE headers the server will acknowledge with
+    a short write back to the client. This allows the client & server sides
+    to gracefully close socket connections.
+    
+    o  I also re-did the resource limitiation issue a bit differently: for
+    open calls (including socket) or for memory map/lock calls I have
+    provided a wrapper function that will try to increase specific limits as
+    needed. The previous method (attempting to do it at the beginning of the
+    run) fails for network server mode - you don't know at initialization
+    how many devices and CPUs will be handled.
+    
+    o  The standard output is slightly different in a few places, if this is
+    a problem w/ compatibility we can work to rectify that. The command line
+    argument handling is identical though.
+    
+    o  Using code stolen from Linux to manipulate doubly-linked lists. I've
+    found that this makes the code easier to read/write (but may be a bit of
+    overkill here...)
+    
+    o  The code passes valgrind quite well (at least for my tests so far).
+    The only nit has to do with inet_ntoa - but that is out of our control.
+    
+    Thanks to Stefan Raspl <raspl@linux.vnet.ibm.com> for testing and
+    finding some issues and for providing suggestions.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit 99bb5ebc255618e4af913d2e5f1bf268af552bdf
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri Jan 23 09:48:21 2009 -0500
+
+    Fix btt to handle large numbers of output files
+    
+    Simply bump resource limits if file opens fail, and retry.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit 69dd57c2986bb025d7de12ab6eb52d5cd130d453
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Jan 23 11:04:42 2009 +0100
+
+    Increased limits to allow for large system runs
+    
+    On 16-way w/ 104 disks and a 32-way w/ 96 disks, I was getting:
+    
+    $ sudo blktrace -b 1024 -n 8 -I ../files
+    ./cciss_c1d6.blktrace.10: Too many open files
+    Failed to start worker threads
+    
+    Due to the nature of our N(cpus) X N(devices) order of file opens, and
+    our N(cpus) X N(devices) X N(buffers) X (buffer size) amount of mmaps()
+    going on we're exceeding both the RLIMIT_NOFILE and RLIMIT_MEMLOCK
+    limits.
+    
+    This patch raises limits for RLIMIT_NOFILE and RLIMIT_MEMLOCK to
+    "infinity", and allows blktrace to handle the large(ish) systems. (If
+    these settings fail, we "guestimate" about how much we really need.)
+    
+    There is still an underlying blktrace and/or kernel problem: The
+    directory /sys/kernel/debug/block/<DSF> where <DSF> is the device that
+    encountered the limit is left behind (not cleaned up correctly). This
+    stops blktrace from running a second time (even on another device):
+    
+    $  ls /sys/kernel/debug/block
+    cciss_c1d6
+    $ sudo blktrace /dev/sda
+    BLKTRACESETUP: No such file or directory
+    Failed to start trace on /dev/sda
+    
+    and requires a reboot. (Looking into that next, as this patch - whilst
+    stopping the original problem from happening - does not address the
+    secondary problem. And there may be some other ways for the secondary
+    problem to still occur...)
+    
+    I also fixed a warning concerning ftruncate's return value being
+    ignored.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+    Signed-off-by: Jens Axboe <axboe@carl.(none)>
+
+commit 61165962f86cb2de0b163f6083bff5649f692e91
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Wed Jan 21 14:58:35 2009 +0100
+
+    A couple of min-counters weren't initialised correctly (thrput_r,
+    thrput_w).
+    We have got a perfectly working init function for this purpose.
+    Removing partially duplicated code.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Stefan Raspl <raspl@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit b3ee499dd143aeaed311bf3bc6d14871168b6657
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Wed Jan 21 14:58:35 2009 +0100
+
+    The git commit 11914a53d2ec2974a565311af327b8983d8c820d added __BLK_TA_ABORT
+    to blktrace_api.h. A corresponding addition to the blktrace tools repository
+    has been missing, breaking the API. Blkparse complained:
+    "Bad fs action 40010011"
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 19cfaf3f4d8e53ce43cccd809676f8f2a40f0b34
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Jan 12 18:29:53 2009 +0100
+
+    Added no messages option to blkparse.c
+    
+    Added a new option (-M, --no-msgs) option to blkparse: I have found that
+    the CFQ I/O scheduler sends a *tremendous* amount of messages, that
+    bloat the .bin file generated when using the -d option. The file sizes
+    can shrink by >50% when using the -M option in those case.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit ef02006b0131f298595b37afb07562ee50fae5cc
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Nov 12 07:11:22 2008 -0500
+
+    gcc 4.3.2 has started to warn about:
+    
+    gcc -Wall -W -O2 -g -I. -I.. -D_GNU_SOURCE -D_LARGEFILE_SOURCE
+    -D_FILE_OFFSET_BITS=64 -c -o output.o output.c
+    output.c: In function ‘output_section_hdr’:
+    output.c:57: warning: format not a string literal and no format
+    arguments
+    output.c: In function ‘__output_pip_avg’:
+    output.c:496: warning: format not a string literal and no format
+    arguments
+    output.c:496: warning: format not a string literal and no format
+    arguments
+    
+    so this patch cleans this up.
+
+commit 0f067275d74a96ca9d574e9912a60bfa81b4df97
+Merge: 7ae1d0b a22df98
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Nov 11 13:51:33 2008 -0500
+
+    Merge branch 'add-P'
+
+commit 7ae1d0bfcaaf46102fb747a4a21fcbe0a1887800
+Merge: f3db347 d00dcee
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Nov 11 13:50:23 2008 -0500
+
+    Merge branch 'fix-m'
+
+commit a22df989ded0fb438dcad77a08c59a1a16b6b849
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Nov 11 13:46:13 2008 -0500
+
+    Added -P to create a data file w/ Q, D and C per line
+    
+    Easy parsing for graph creation
+
+commit 9638f3909854d936f4a55a48f787364abdbda71f
+Merge: f3db347 d00dcee
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Nov 11 13:42:55 2008 -0500
+
+    Merge branch 'fix-m' into add-P
+
+commit d00dcee7f0d77f64c59ee47bfcf09809dad366ff
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Nov 11 13:41:05 2008 -0500
+
+    Fixed 'M' displays on per-io output and added in I/O separator
+
+commit f3db34733e7c8a46e9e26305e424a3ecd49ac06d
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Nov 11 13:40:10 2008 -0500
+
+     Fixed segfault in aqd.c : need to check for NULL (not requested)
+
+commit e47ada103e028a691d296d09d0bc673a3af6a3dc
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Mon Nov 10 10:35:44 2008 -0500
+
+    Added in -z to provide running waiting-for-issue latencies
+
+commit cdc033a3e6615142697e99b6be43319b8b8233e9
+Merge: 57425a8 07b9682
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Mon Nov 10 10:34:02 2008 -0500
+
+    Merge branch 'master' of ssh://alanbrunelle@git.kernel.dk/data/git/blktrace
+
+commit 07b96824e26286321b99c30526d8d67aca16e584
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Thu Oct 30 15:06:01 2008 +0100
+
+    Set release version 1.0.0
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 0bc6b06188c993a9d64a4833e329446d37f553e8
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Thu Oct 30 15:04:20 2008 +0100
+
+    Update rbtree to version with unified parent + color
+    
+    This saves 4-8 bytes per node, which can be quite a bit of memory
+    with blktrace.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 57425a8a0c1238a9fc9dbc70a597c4011ea82f31
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Oct 29 15:04:03 2008 -0400
+
+    Moved btrecord/btreplay to version 1.0.0
+
+commit 53cab5f58afd61525674ba7d6de8ac111f173a90
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Tue Oct 28 17:08:12 2008 +0100
+
+    blkiomon: add through-put statistics
+    
+    Add accounting of per-request throughput in bytes per millisecond
+    both for read ad write I/O.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 29ec9a38dabc610005c5b8d11dba2a0824117c97
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Tue Oct 28 17:08:10 2008 +0100
+
+    blkiomon: separate statistics for read and write requests
+    
+    Split min/max/avg statistics for request sizes and dispatch-to-completion
+    latencies into separate statistics for read and write requests.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 9b26a3a85a21f1b4ae61ba243143202eff1fd1e4
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Tue Oct 28 17:08:07 2008 +0100
+
+    blkiomon: fix some debug messages
+    
+    Cleaning up error messages. Some perror()'s didn't make sense.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 4bd8e3ba5553be4e6dad03b8f9ef5a7ef984124b
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Tue Oct 28 17:08:05 2008 +0100
+
+    blkiomon: fix trace debug output
+    
+    Removed leftovers of trace tree and made debug code work by using trace
+    hash instead of trace tree.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 369ba3dec9e78c65f9405f20a2b14c8e9cf2940c
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Tue Oct 28 17:08:02 2008 +0100
+
+    blkiomon: fix unit in histogram output
+    
+    Fix unit of request sizes as printed in histogram (it's bytes not kilobytes).
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 7aa3ebcec011bfe9cc60d6476252c03376a37551
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Tue Oct 28 17:07:57 2008 +0100
+
+    blkiomon: fix cross-arch data analysis issue
+    
+    This fixes cross-arch issues. Binary data gathered on System z could not
+    be read on x86.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 3bc3451b471fe4cea365654481258a1a1913018e
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Mon Oct 20 18:14:21 2008 +0200
+
+    blkiomon: drv_data traces pass-through
+    
+    This patch adds pass-through support for device driver specific traces
+    to blkiomon. This way we can aggregate block I/O statistics and device
+    driver specific statistics at the same time.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit c701176c4befb44efe68e3b5e09ca710b4be357d
+Author: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+Date:   Fri Oct 17 15:09:05 2008 +0200
+
+    blkparse: add hint for discarded drv_data traces
+    
+    Display an informational message on blkparse exit to notify users that
+    additional data was available which would require to be dumped to binary
+    output.
+    
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 2baef5087c57d39ee2fc488cd52348f61f32b1fc
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Oct 16 12:03:45 2008 -0400
+
+    Added in -L option - output periodic latency information
+
+commit 4ae2c3c6215de3f9016b5211ac83893cb061b1e1
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Oct 16 10:53:07 2008 -0400
+
+    Added in -Q / --active-queue-depth option
+    
+    This will output a data file containing the time stamp and number of
+    I/Os issued to underlying drivers per device. It will give you an idea
+    as to how many I/Os are being actively worked per device at any time
+    during the run.
+
+commit c54b9dd9a993fc76f3649279e6a4295f6aba2054
+Author: Stefan Raspl <raspl@linux.vnet.ibm.com>
+Date:   Thu Oct 16 08:14:17 2008 +0200
+
+    Add driver data support
+    
+    Adds a new type of action 'drv_data' for blktrace to handle binary
+    driver-specific data. Since the data is binary, blkparse will only put it in
+    a binary file, not in the regular human-readable output.
+    
+    Signed-off-by: Stefan Raspl <raspl@linux.vnet.ibm.com>
+    Signed-off-by: Martin Peschke <mpeschke@linux.vnet.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 5d4f19d9812264bfb45427716330d0bd2529dfd9
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Thu Oct 16 08:05:53 2008 +0200
+
+    blktrace: accept -v (lower case) for version info as well
+    
+    Christof Schmitt <christof.schmitt@de.ibm.com> points out that the
+    documentation uses -v but blktrace supports only -V, so change
+    blktrace to accept both cases.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit cc19ddd696e8931a969e943523e1dcf7a11ffe79
+Author: Martin Peschke <mp3@de.ibm.com>
+Date:   Thu Oct 16 07:48:25 2008 +0200
+
+    blkiomon: I/O monitor
+    
+    blkiomon periodicaly generates per devive 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.
+    
+    There are options for binary output and human-readable output to files and
+    stdout. Output to a message queue is supported as well.
+    
+    #blktrace /dev/sdw -a issue -a complete -w 200 -o - | blkiomon -I 8 -h -
+    
+    time: Tue Sep 30 17:39:25 2008
+    device: 65,96
+    requests: read 62, write 40, bidir: 0
+    sizes: num 102, min 4096, max 430080, sum 13312000, squ 3102442782720,
+     avg 130509.8, var 13383296793.3
+    d2c: num 102, min 393, max 14261, sum 359441, squ 2830211755, avg 3523.9,
+     var 15329081.8
+    sizes histogram (in kB):
+                0:     0         1024:     0         2048:     0         4096:     6
+             8192:     0        16384:    15        32768:     4        65536:    24
+           131072:    11       262144:    30       524288:    12      1048576:     0
+          2097152:     0      4194304:     0      8388608:     0    > 8388608:     0
+    d2c histogram (in usec):
+                0:     0            8:     0           16:     0           32:     0
+               64:     0          128:     0          256:     0          512:    13
+             1024:    21         2048:    27         4096:    14         8192:     8
+            16384:    19        32768:     0        65536:     0       131072:     0
+           262144:     0       524288:     0      1048576:     0      2097152:     0
+          4194304:     0      8388608:     0     16777216:     0     33554432:     0
+        >33554432:     0
+    
+    time: Tue Sep 30 17:39:33 2008
+    device: 65,96
+    requests: read 312, write 47, bidir: 0
+    sizes: num 359, min 4096, max 430080, sum 13197312, squ 1575816790016,
+     avg 36761.3, var 3038067547.5
+    d2c: num 359, min 294, max 9211, sum 387134, squ 1262489694, avg 1078.4,
+     var 2353807.5
+    sizes histogram (in kB):
+                0:     0         1024:     0         2048:     0         4096:    32
+             8192:    17        16384:   133        32768:    87        65536:    59
+           131072:     9       262144:    18       524288:     4      1048576:     0
+          2097152:     0      4194304:     0      8388608:     0    > 8388608:     0
+    d2c histogram (in usec):
+                0:     0            8:     0           16:     0           32:     0
+               64:     0          128:     0          256:     0          512:   129
+             1024:   164         2048:    33         4096:    15         8192:    13
+            16384:     5        32768:     0        65536:     0       131072:     0
+           262144:     0       524288:     0      1048576:     0      2097152:     0
+          4194304:     0      8388608:     0     16777216:     0     33554432:     0
+        >33554432:     0
+    
+    Signed-off-by: Martin Peschke <mp3@de.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit abf63eafd11e42e0f065e56fc4773e6854087d41
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri Oct 10 08:40:57 2008 -0400
+
+    Removed excessive amounts of seek modes (for random sets of I/Os)
+    
+    When doing a random load, we'd get a LARGE amount of single-seek buckets,
+    this patch just notes that fact, without dumping all the data...
+
+commit 129babbbb691f87ba66101f0df7ccf463e2e56a6
+Merge: 32ff7e3 4133e83
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri Oct 10 08:40:21 2008 -0400
+
+    Merge branch 'master' of ssh://alanbrunelle@git.kernel.dk/data/git/blktrace
+
+commit 4133e838c72f5f66e0c5b57af1aa24bf10a23b07
+Author: Nathan Scott <nscott@aconex.com>
+Date:   Fri Sep 26 11:05:51 2008 +0200
+
+    spec file tweak
+    
+    I found I needed this tweak to make the spec file usable on a RHEL5
+    system (I hit rpmbuild errors about unpackaged files without this).
+    Not sure if its correct though, maybe someone with stronger rpm-fu
+    than I have could take a closer look?
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 5eace3dbc1b0f0832c900c86d5a9c96af242dfa7
+Merge: 6f2cb32 64c0316
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Sep 26 11:05:16 2008 +0200
+
+    Merge branch 'master' of ssh://axboe@router.home.kernel.dk/data/git/blktrace
+
+commit 6f2cb32b05c8800d68f3e61f196d417bfea80049
+Author: Nathan Scott <nscott@aconex.com>
+Date:   Fri Sep 26 11:05:13 2008 +0200
+
+    man page typo
+    
+    This fixes up a formatting problem when displaying the blktrace
+    man pages - just a typo (bold mode not correctly terminated, so
+    it flows on until the next bold-mode-termination a few lines on).
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 32ff7e3b023c655c63d53b2b14e151f82bd83229
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Sep 23 08:06:41 2008 -0400
+
+    Added in %done for btt
+
+commit 84feb18fb1e50d3356fdc202fa0f4e54918517ac
+Merge: 0dc8ade 64c0316
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Tue Aug 26 17:11:03 2008 +0200
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit 64c031619f9d7fbafce96d6e6c29f945b589141b
+Author: David Woodhouse <dwmw2@infradead.org>
+Date:   Fri Aug 15 11:12:20 2008 +0200
+
+    Add documentation of 'D' discard operation
+    
+    Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 37081bf5636d1bef1dd141a03a64b3c516867ac9
+Author: David Woodhouse <dwmw2@infradead.org>
+Date:   Fri Aug 15 10:44:39 2008 +0200
+
+    blktrace: support discard requests
+    
+    Add support for discard requests to blktrace userspace tools.
+    
+    Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit ea86559e392fc012f9b30eb109d3421d463c8848
+Author: Jeff Moyer <jmoyer@redhat.com>
+Date:   Tue Jul 1 13:35:29 2008 +0200
+
+    spelling and grammar fixes for btreplay.tex
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 84a26fcd9adebd1537bf2c4eee69d1ca23ccbc5f
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue May 27 10:39:14 2008 -0400
+
+    Put message notes from kernel into a separate file for easy tracking
+    
+    Also made made_dev_hdr standard for all usages.
+
+commit ac00378edac625cc01abb2647ef6c4f377971a78
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue May 27 08:34:13 2008 -0400
+
+    Added in new message updates to the documentation.
+
+commit 1a15f6a82d62babb9d2f04a7400ff316a666dd42
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue May 27 08:19:57 2008 -0400
+
+    Added in handling of MESSAGE notes
+    
+    Sample output:
+    
+      8,16   1   691118    17.417000000     0  C   R 2660776 + 8 [0]
+      8,16   1   691119    17.417000000     0  D   R 2660792 + 8 [swapper]
+      8,16   1   691120    17.417000000  4688  U   N [dd] 42
+      8,16   1        0    17.418000000     0  m   N elv switch: noop
+      8,16   1   691121    17.418000000  4638  C   R 2660784 + 8 [0]
+      8,16   1   691122    17.418000000  4638  D   R 2660800 + 8 [bash]
+      8,16   1   691123    17.418000000  4638  C   R 2660792 + 8 [0]
+    
+    Thanks to Carl Henrik Lunde <chlunde@ping.uio.no> for adding in sequence
+    printing & time-stamp correction.
+
+commit 5bebfd168c3f3f42acfd4a0263e9f4d1f5faea16
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed May 21 15:55:57 2008 -0400
+
+    Handled no difference in seek times
+    
+    For some reason recent kernels (2.6.25.4, for example) we've lost a lot
+    of resolution in our blktrace times. This can result in lots of things
+    happening "simultaneously." This change at least tries to handle the
+    case where all the seeks happen at once.
+    
+    Probably have other issues that need to be looked into...
+
+commit ccf6d55e4875989ebb57d8a9c031d177bdc2e43a
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed May 21 10:55:20 2008 -0400
+
+    Added in -m option, seeks-per-second
+    
+    btt can now output data files containing seeks-per-second information.
+
+commit ebe2d1aa7f334fc526a97f8acf62f1fe7dac9a8a
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Sun May 18 20:55:25 2008 +0200
+
+    blkparse: cope with missing process notify event
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit dd14158dca460522c22afbd7e22343e4012fffe0
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Mon May 12 09:56:33 2008 -0400
+
+    Fixed percentage calculations for phases of an I/O
+
+commit 354db430eeaced3b8234668e6527910875d54e50
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri May 9 13:46:47 2008 -0400
+
+    Added S2G times + fixed up -X output to include X2X
+    
+    Including Q2Q, Q2G, S2G, G2I, Q2M, I2D, M2D, D2C, Q2C.
+    
+    S2G is part of Q2G, and shows the number of times we had to sleep to
+    get a request.
+    
+    Ignored 0-byte I/Os - coming from barrier I/Os...
+
+commit f028c9584055737f429979e18ab7436583ed41b5
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu May 8 15:28:32 2008 -0400
+
+    Added -X option - generate easily parseable file
+    
+    Writes a portion of the default output into a separate file that more
+    easily parsed.
+
+commit 4a7968cc672f39573abc6002f0afbed2a8e8139b
+Author: Luis Useche <luis@cis.fiu.edu>
+Date:   Mon May 5 20:53:13 2008 +0200
+
+    Add -x accellerator option
+    
+    This patch adds a new functionality to the btreplay tool, the -x option.
+    This parameter accelerate the replication by the factor specified. This
+    means that the stall time is divided by the number introduced.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 7072ee3f2f12a1363d6f7378df3f268350e5bd52
+Author: Luis Useche <luis@cis.fiu.edu>
+Date:   Mon May 5 20:53:10 2008 +0200
+
+    Fix problem with -w option
+    
+    This patch fixes the problem when the -w option is used in the file mode
+    (i.e., no fifo mode). It just consists of moving the checking of the
+    stopwatch_end after the time is updated with genesis. This also includes
+    the checking of the stopwatch_start.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit a26daeb87cd49c2d6640965337cf625ae800c35a
+Author: Luis Useche <luis@cis.fiu.edu>
+Date:   Mon May 5 20:53:07 2008 +0200
+
+    eliminate check of empty -F format
+    
+    This patch eliminates the checking of -F format when it is empty. I am
+    using this in order to blank out the events that I do not want for
+    certain act mask. Note that there is no real motivation to have this
+    checking.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 0dc8ade0a99f47539702e5ce36aece56e440ecc8
+Merge: f0fa9d0 801646d
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Thu May 1 20:19:50 2008 +0200
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit 801646d63fe28ae2c50ab5bd0e9ea4f75ff64d97
+Author: Christof Schmitt <christof.schmitt@de.ibm.com>
+Date:   Wed Apr 2 09:21:08 2008 +0200
+
+    blkparse: Introduce optional accounting of PC requests
+    
+    The current blkparse lists only PC requests, but does not account for
+    number of PC requests and the size of the attached data.  This patch
+    introduces optional accounting for PC requests.  If any PC event was
+    encountered, the summary output will also include data from PC
+    requests.
+    
+    For PC completion events the amount of transferred data is not
+    available, since the kernel uses the data_len field as residual bytes
+    count on event completion.
+    
+    Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit c82a8c9d6d21b15732a92f9481ea1bcb45c9ce8c
+Author: Christof Schmitt <christof.schmitt@de.ibm.com>
+Date:   Wed Apr 2 09:21:08 2008 +0200
+
+    blkparse: Add PC requests to depth trace
+    
+    The PC requests use the same queue and also contribute to the
+    queue length, so they should be added to the queue depth trace.
+    
+    Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit f0fa9d008999c2450de24e522b3018968b0c849f
+Merge: 2352b59 967492e
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 21:25:22 2008 +0100
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit 967492e81cd045b058fc93dacc15924bebd00b9b
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 12:58:12 2008 +0100
+
+    Fix section of btrecord and btreplay man pages
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit cd10564816a3c095f4fac1d5e28f1fb7d2245a17
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 12:51:42 2008 +0100
+
+    Don't like btrecord against libaio and librt, as it doesn't use any of their symbols
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit ee43a14384e16eb456a44a18ee5027c67dba55f2
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 11:27:04 2008 +0100
+
+    Really commit the changes to btt.1
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit bf46286a9e537ee177f795195bf059a09d1f4089
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 11:25:51 2008 +0100
+
+    Added man page for bno_plot and updated btt man page to refer to bno_plot
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 2352b59425d2464e0d490940baad9e9da596bc9e
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 12:58:12 2008 +0100
+
+    Fix section of btrecord and btreplay man pages
+
+commit 822ad6d88a2fcb9eb077c9fa1d405e0a57fce876
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 12:51:42 2008 +0100
+
+    Don't like btrecord against libaio and librt, as it doesn't use any of their symbols
+
+commit 9e55f05fa18be1e1cdb7d6851c5768d4cd7f23b3
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 11:27:04 2008 +0100
+
+    Really commit the changes to btt.1
+
+commit 3d76c6ecdf13546816102655237133d03c4cd549
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Feb 22 11:25:51 2008 +0100
+
+    Added man page for bno_plot and updated btt man page to refer to bno_plot
+
+commit 66cb279c23b29efdf97f2dac3d32a10a6b8f0db2
+Merge: 0e0d2a3 8b10aae
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Sat Feb 16 22:45:19 2008 +0100
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit 8b10aae0cd4137f1cc9848181e4f45a9fa20de24
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Wed Feb 13 11:46:22 2008 -0500
+
+    Cleanups: Fixed IOPs in btt left over at end of run
+    
+    o  Using valgrind, determined we had Q IOPs left over that weren't
+       used. Added "all" list, and then deleted these at end.
+    
+    o  Removed old debug stuff (COUNT_IOS, DEBUG, ...)
+    
+    o  Fixed a bunch of white space at end of lines.
+    
+    Signed-off-by: Alan D. Brunelle <alan.brunelle@hp.com>
+
+commit c8aea612abc714072e346366cb0e5cf9da8a2f5f
+Author: Aaron Carroll <aaronc@gelato.unsw.edu.au>
+Date:   Wed Feb 13 18:48:14 2008 +1100
+
+    btt: fix missing cleanup call
+    
+    clean_args() exists but is never called, thus any files opened in args remain
+    open while the buffers backing those files are closed.
+    
+    Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
+
+commit 3e95108c8e2c1e804f54d1512f83eb6eff90cc13
+Author: Aaron Carroll <aaronc@gelato.unsw.edu.au>
+Date:   Wed Feb 13 18:46:40 2008 +1100
+
+    btt: fix iostat interval default
+    
+    Change the default iostat interval from 1ns to 1s, which is the
+    default implied by btt.1 and common sense.
+    
+    Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
+
+commit ef14423994b40499402269896fc1aa5567bcdba9
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Feb 12 08:58:25 2008 -0500
+
+    Added info about bno_plot.py and clean ups
+    
+    o  Added description of bno_plot.py, including sample screenshot
+    o  Various spelling clean ups
+    o  Updated sample btt output
+    o  Cleaned up table of contents
+
+commit feb161907bf39fab6bedacf066fe7de6639cea93
+Merge: b70a664 1306385
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Fri Feb 8 10:03:13 2008 -0500
+
+    Merge branch 'bno_plot.submit'
+
+commit b70a66427b4674b2a37660a196e5c6db181dd4ec
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Feb 5 17:31:21 2008 -0500
+
+    Added new IOs per unplug table
+    
+    ==================== Plug Information ====================
+    
+           DEV |    # Plugs # Timer Us  | % Time Q Plugged
+    ---------- | ---------- ----------  | ----------------
+     (  8,  0) |       1171(       123) |   0.280946640%
+     (  8, 32) |          4(         0) |   0.000325469%
+    ---------- | ---------- ----------  | ----------------
+       Overall |    # Plugs # Timer Us  | % Time Q Plugged
+       Average |        587(        61) |   0.140636055%
+    
+           DEV |    IOs/Unp   IOs/Unp(to)
+    ---------- | ----------   ----------
+     (  8,  0) |        9.2          8.8
+     (  8, 32) |        2.5          0.0
+    ---------- | ----------   ----------
+           DEV |    IOs/Unp   IOs/Unp(to)
+       Overall |        9.2          8.8
+
+commit 1306385d0dca139437b447785edf2e19d0f5c960
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Feb 5 13:46:51 2008 -0500
+
+    Added bno_plot.py - generate interactive 3D plot of IO blocks and sizes
+    
+    bno_plot.py
+    	[ -h | --help       ]
+    	[ -K | --keys-below ]
+    	[ -v | --verbose    ]
+    	[ <file...>         ]
+    
+    Utilizes gnuplot to generate a 3D plot of the block number output
+    from btt.  If no <files> are specified, it will utilize all files
+    generated after btt was run with -B blknos (meaning: all files of the
+    form blknos*[rw].dat).
+    
+    The -K option forces bno_plot.py to put the keys below the graph,
+    typicall all keys for input files are put in the upper right corner of
+    the graph. If the number of devices exceed 10, then bno_plot.py will
+    automatically push the keys under the graph.
+    
+    To exit the plotter, enter 'quit' or ^D at the 'gnuplot> ' prompt.
+
+commit 00a47cd169f2cc87b5f63fe93226b7231dee678c
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Jan 31 17:10:52 2008 -0500
+
+    UNPLUG does the timing stuff, UNPLUG TIMEOUT only does timeout
+    
+    Each UNPLUG TIMEOUT should be followed by an UNPLUG, so we were getting
+    double information on time outs.
+
+commit 5683cbf679d2a03239f075661282bf4537a06130
+Author: Alan D. Brunelle <adb@bannor.(none)>
+Date:   Thu Jan 31 13:02:24 2008 -0500
+
+    Fixed excess bucket information for unplug histograms.
+
+commit 0e0d2a37803989818112d35e5ee5e172ed5c8ee5
+Merge: 1d4e6f4 461afe8
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Sat Jan 5 16:46:19 2008 +0100
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit 461afe819c41fa811f9c6264524cb8edbd2acc63
+Author: Dave Boutcher <boutcher@cs.umn.edu>
+Date:   Thu Jan 3 10:21:32 2008 -0500
+
+    Fix Q counts during requeue and merges.
+    
+    It looks to me like btt doesn't correctly keep track
+    of the number of requests currently in the queue for
+    a device.  n_act_q gets incremented in trace_queue
+    and decremented in trace_issue, but I think it also
+    needs to get updated in trace_merge and trace_requeue.
+    
+    The one thing I'm not sure about is whether we want
+    r_iop->dip->n_qs++ in the new handle_requeue routine.
+    
+    The following patch makes the "active requests at Q"
+    count a little more sane for me.  This is against
+    git as of yesterday.
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+
+commit 1d4e6f4dec4684d174f1bdfa0c762d0473d2061e
+Merge: 1a56637 ae6d30f
+Author: Bas Zoetekouw <bas@ophelia.zoetekouw.net>
+Date:   Fri Dec 14 22:58:38 2007 +0100
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit ae6d30f4475181d685d1f33faf056755803f189b
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Dec 10 13:41:37 2007 -0500
+
+    Separated out g/i/m trace handling.
+    
+    Also separated out DM-device calculations.
+
+commit 1a56637964244e1f2efed49709e126cf7214c698
+Merge: 0673f05 a84a97f
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Sun Dec 9 22:05:57 2007 +0100
+
+    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit a84a97fdf8ce07ccda8dcc4f32f0df2291f2f54f
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Sun Dec 9 19:43:16 2007 +0100
+
+    btreplay/btrecord man pages
+    
+    Attached are manpages for the btreplay and btrecord utilities for
+    inclusion in the git repo.  I'm about to upload anew version to Debian
+    which will include these manpages, too.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 0673f05ec8905faf82df6f8c40dbe69057cdc8d6
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Sat Dec 8 15:20:39 2007 +0100
+
+    Added man pages for btreplay and btrecord.
+
+commit 02a94ed057ba88861ed041496646a8be53d0b2e7
+Merge: 951ea56 99a55a0
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Dec 6 09:00:47 2007 -0500
+
+    Merge branch 'master' into add-q2d
+
+commit 99a55a0392b1634ce81e594f48a1105e8ebc1d58
+Author: Joshua Root <jmr@gelato.unsw.edu.au>
+Date:   Thu Dec 6 09:13:48 2007 +0100
+
+    Remove strange make dependency
+    
+    Listing "-lpthread" as a dependency in a make rule doesn't make much sense.
+    
+    Signed-off-by: Joshua Root <jmr@gelato.unsw.edu.au>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 951ea56c26b7d828c2783f98ca5e2df3e9dad6c8
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Dec 5 18:08:10 2007 -0500
+
+    Added in Q2D histograms (requires -A)
+    
+    As an example, the buckets are in seconds:
+    
+    ==================== Q2D Histogram ====================
+    
+           DEV | <.005 <.010 <.025 <.050 <.075 <.100 <.250 <.500 < 1.0 >=1.0
+     --------- | ===== ===== ===== ===== ===== ===== ===== ===== ===== =====
+     ( 66, 80) |  61.2   7.9  12.1   7.9   3.0   1.4   1.5   0.2   0.0   4.6
+     ( 65,192) |  42.3   5.0   8.7  30.0   8.9   3.0   1.8   0.1   0.0   0.1
+     ( 65,128) |  34.3   5.3   8.9  32.0   9.7   3.7   5.3   0.6   0.0   0.1
+     ( 66,  0) |  45.5   9.9  19.0  14.8   4.6   1.2   0.3   0.0   0.0   4.7
+     ( 65, 48) |  50.2   4.6   7.2  27.6   6.9   2.1   1.1   0.0   0.0   0.1
+     ( 66, 32) |  66.4   6.7  10.9   7.0   2.5   1.1   0.6   0.1   0.0   4.7
+     ( 65,224) |  33.9   9.6  20.6  17.8   7.3   3.1   3.3   0.5   0.1   3.8
+     ( 65,112) |  35.3   5.2   8.7  30.8   9.3   3.9   5.6   0.9   0.1   0.1
+     ( 65, 80) |  57.9   4.6   6.6  25.2   4.7   0.8   0.2   0.0   0.0   0.1
+     ( 65,240) |  62.6   8.1  13.1   7.7   2.3   0.6   0.5   0.0   0.0   5.1
+     ( 66,112) |  59.6   8.0  13.1   8.6   3.3   1.5   1.2   0.1   0.0   4.6
+     ( 65,144) |  45.8   5.1   7.9  29.3   7.8   2.5   1.4   0.0   0.0   0.1
+     ( 65,176) |  43.2   5.2   8.9  30.8   8.3   2.5   1.0   0.0   0.0   0.1
+     ( 66, 16) |  77.0   5.4   7.4   3.3   0.7   0.3   0.7   0.1   0.0   5.0
+     ( 65, 96) |  54.6   4.9   7.2  26.6   5.3   1.0   0.2   0.0   0.0   0.1
+     ( 66, 48) |  71.0   6.8  10.5   5.4   0.9   0.1   0.1   0.0   0.0   5.2
+     ( 65,208) |  43.5   5.6   8.5  31.0   7.2   2.2   1.9   0.0   0.0   0.1
+     ( 66,128) |  69.5   7.0  10.3   6.2   1.5   0.3   0.1   0.0   0.0   5.0
+     ( 65, 64) |  59.9   4.2   6.0  24.6   4.2   0.8   0.1   0.0   0.0   0.1
+     ( 66, 64) |  62.6   8.1  12.7   7.9   2.4   0.6   0.1   0.0   0.0   5.4
+    ========== | ===== ===== ===== ===== ===== ===== ===== ===== ===== =====
+           AVG |  52.9   6.2  10.0  20.1   5.3   1.7   1.4   0.2   0.0   2.1
+
+commit 24c7e97eb6a28a3cfcc966aa2d38af6caed01997
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed Nov 14 10:45:23 2007 +0100
+
+    memset() must be done after NULL check
+    
+    Pointed out by Jan Blunck <jblunck@suse.de>
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 50f7389936188591eda0f114ab682520e6fe90c9
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Nov 13 17:16:38 2007 -0500
+
+    Added active requests at Q information.
+    
+    An important consideration when analyzing block IO schedulers is to know
+    how many requests the scheduler has to work with. The metric provided
+    in this section details how many requests (on average) were being held
+    by the IO scheduler when an incoming IO request was being handled. To
+    determine this, btt keeps track of how many Q requests came in, and
+    subtacts requests that have been issued (D).
+    
+    Sample:
+    
+    ==================== Active Requests At Q Information ====================
+    
+           DEV |  Avg Reqs @ Q
+    ---------- | -------------
+     ( 65, 80) |          12.0
+     ( 65,240) |          16.9
+     ( 65,112) |          13.3
+     ( 66, 64) |          32.8
+     ( 66, 80) |          21.5
+     ( 65, 96) |           8.6
+     ( 66, 16) |          16.2
+     ( 65, 64) |          20.4
+     ( 66, 96) |          18.3
+     ( 65,176) |          17.4
+     ( 66, 32) |          13.6
+     ( 65,144) |          13.4
+     ( 66,  0) |          21.4
+     ( 65,192) |          19.4
+     ( 66,128) |          18.4
+     ( 66,144) |          16.2
+     ( 65,128) |           8.0
+     ( 66,112) |          44.2
+    ---------- | -------------
+       Overall | Avgs Reqs @ Q
+       Average |          17.4
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+
+commit 77f256cda4b2f076f5169fdf1bc815f629eea361
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Nov 8 08:34:44 2007 -0500
+
+    Fixed REMAP to update Q2A & fixed #Q calculations
+
+commit c0c1840adae820efa96fb0ff797b8bc60a672d63
+Author: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
+Date:   Mon Oct 29 20:47:28 2007 +0100
+
+    blktrace segfault
+    
+    Core was generated by `blktrace -d /dev/hdc'.
+    Program terminated with signal 11, Segmentation fault.
+    #0  0xb7e4cdec in ?? ()
+    (gdb) where
+    #0  0xb7e4cdec in ?? ()
+    #1  0xb7dbf000 in ?? ()
+    #2  0x00021000 in ?? ()
+    #3  0xb7dee6e8 in ?? ()
+    #4  0x0804ecf0 in ?? ()
+    #5  0x00000001 in ?? ()
+    #6  0x6c616367 in ?? ()
+    #7  0xbfee3f68 in ?? ()
+    #8  0xb7f51300 in ?? ()
+    #9  0x00000168 in ?? ()
+    #10 0x0804ecf0 in ?? ()
+    #11 0x00000001 in ?? ()
+    #12 0xbfee3f88 in ?? ()
+    #13 0xbfee3f68 in ?? ()
+    #14 0x080499dc in close_thread (tip=0xb7f1eff4) at blktrace.c:637
+    Backtrace stopped: frame did not save the PC
+    (gdb)
+    
+    the below diff fix the same.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 60d658630cfe397a93a97f1b38350b27eacc317e
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Oct 10 13:25:20 2007 -0400
+
+    Added O_NOATIME to replay file
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+
+commit cbb3e69ee7499d2df365e2dbc1dfd367a4d997f8
+Author: Joshua Root <>
+Date:   Wed Oct 10 07:17:56 2007 -0400
+
+    Fix segfault in replay_sub when verbose is 1
+    
+    tip->vfp is only initialised when verbose > 1, so we must only use it
+    under the same circumstance.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+
+commit 143d41ae9daaf96fa09738d3fa0b93b494b9421d
+Merge: 65a7043 0106d9c
+Author: Alan D. Brunelle <adb@korik.(none)>
+Date:   Fri Oct 5 18:30:27 2007 -0400
+
+    Merge branch 'master' of git://brick.kernel.dk/data/git/blktrace
+
+commit 0106d9cfa13b912042bace7bbb2d2475dfd35e10
+Author: Alan D. Brunelle <adb@korik.(none)>
+Date:   Fri Oct 5 16:32:46 2007 -0400
+
+    Converted fatal to an inline function
+    
+    Removes warning from gcc-4.2.1
+
+commit 65a7043b1102901880fa6e3173ba2ab34e0cf113
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Oct 3 10:49:42 2007 -0400
+
+    Converted fatal from macro to inline
+    
+    Hopefully this will fix a gcc-4.2.1 warning.
+    
+    Signed-off-by: Alan D. Brunelle <adb@korik.(none)>
+
+commit d47a3fec3f4bbcf6b0c6ef757a4eb449dd81d10a
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Oct 2 12:35:07 2007 -0400
+
+    Add btrecord/btreplay capability
+    
+    These facilities allow one to attempt to replay a stream of IOs
+    captured with blktrace. The general workflow is:
+    
+    1. Initiate blktrace to capture traces
+    2. Do whatever to generate initial IO stream...
+    3. Stop blktrace
+    4. Run btrecord to convert traces into IO records
+    5. Run btreplay to replay IOs
+    
+    The IO stream characteristics during replay will try to respect the
+    following characteristics of the original IO stream:
+    
+    1. The IOs will target the same device(s) as originally seen. [One can
+       alter this behavior by specifyin the -M option to btreplay, which
+       allows one to remap IOs slated to one set of devices to a specified
+       other set of devices.]
+    
+    2. IO direction: the IOs will follow the same read/write
+       (from-device/to-device) characteristics of the originating flow. [Note:
+       By default replay will /not/ do writes, one must specify the -W option
+       to do this. THis is a meager attempt to stop someone from shooting
+       themselves in the foot (with a very large-caliber weapon).]
+    
+    3. IO offset & size are maintained.
+    
+    4. CPU: IOs are submitted on the originating CPU whenever possible. [Note:
+       Since we are using asynchronous IO, IOs may be routed to another CPU
+       prior to being processed by the block IO layer.]
+    
+    In order to try and replicate inter-IO timing as much as possible,
+    btrecord will combine IOs "close in time" into one set, or bunch, of
+    IOs. Then btreplay will replay all the IOs in one go (via asynchronous
+    direct IO - io_submit). The size of the bunches are configurable via
+    the -m flag to btrecord (which specifies the a time-based bunch size)
+    and/or the -M flag (which specifies the maximum amount of IOs to put
+    into a bunch). At the low-end, specifying '-M 1' instructs btrecord to
+    act like fio - replay each IO as an individual unit.
+    
+    Besides the potential to remap devices (utilizing the -M option to replay,
+    as noted above), one can also limit the number of CPUs on the replay
+    machine - so if you have fewer CPUs on the replay machine you specify
+    the -c option to btreplay.
+    
+    Lastly, one can specify the -N option to btreplay to instruct it to ignore
+    inter-IO (inter-bunch of IOs) timings. Thus, this instructs btreplay
+    to replay the bunches as fast as possible, ignoring the original delays
+    between original IOs.
+    
+    The utilities include a write-up in the docs directory.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 4f93192893f41acfe1ded673c1111142b8f4cddd
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Oct 2 12:08:34 2007 -0400
+
+    Added list_splice to btt/list.h
+    
+    list_splice is needed for the addition of btrecord/btreplay.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 9a8e0e1766abcf7fbc71b7a60cd6d0c85573bd52
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Mon Oct 1 08:33:37 2007 +0200
+
+    btt manpages
+    
+    Attached is an update for the btt.1 man page that should bring the man
+    page in sync with the TeX documentation.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 0730bfb48a303c7b62b45ff6b8661d2356601da1
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Mon Oct 1 08:32:29 2007 +0200
+
+    Fix compilation on m68k
+    
+    Missing defines for store_barrier()
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 4c48f14ea8ae2fae86811ac4dc1d72ad9bb601c2
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Sep 10 18:37:49 2007 +0200
+
+    Major revamping (ver 2.0)
+    
+    After a lot of fighting with maintaining a tree-styled design (each trace
+    having it's own node), it was just getting too cumbersome to work in all
+    circumstances. Taking a clue from blkparse itself, I decided to just keep
+    track of IOs at queue time, and updating fields based upon later traces.
+    
+    The attached (large) patch works much faster, handles larger test cases
+    with less failures, and is managing some pretty large jobs I'm working on
+    (large Oracle-based DB analysis - 32-way box w/ lots of storage).
+    
+    I've also added a Q2Q seek distance feature - it's come in handy when
+    comparing results of IO scheduler choice: We can see what the incoming IO
+    seek distances are (at queue time), and then see how the scheduler itself
+    manages things (via merges & sorting) by looking at D2D seek distances
+    generated.
+    
+    As noted in the subject, I arbitrarily bumped this to version 2.00 as the
+    innards are so different. The documentation (btt/doc/btt.tex) has been
+    updated to reflect some minor output changes. I also fixed a bug dealing
+    with process name notification: there was a problem that if a new PID came
+    up with a name that was previously seen, btt wouldn't keep track of it
+    right. [When running with Oracle, a lot of processes have the same name but
+    different PIDs of course.]
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit a5981e2e795319502cc8dda629482928f3b7b204
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Tue Aug 28 15:03:59 2007 +0200
+
+    blktrace 0.99.3
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 0bf926817ed82ef0b014a329af79826905ed54c3
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Tue Aug 28 15:00:33 2007 +0200
+
+    blktrace man page: mention buffer size / number of buffers defaults.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit bb4afebb049c1a1ba6adb4a564413337ca985805
+Author: Valerie Henson <val@nmt.edu>
+Date:   Mon Aug 27 21:50:57 2007 +0200
+
+    blktrace: fix indent typo
+    
+    Fix minor indentation typo in blktrace man page.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit e2d964ec9f7f92da9abe0fb2588606dda39306ce
+Author: Jan Blunck <jblunck@suse.de>
+Date:   Sun Aug 26 19:35:31 2007 +0200
+
+    Makefile fixes
+    
+    Here is a patch with small fixes to the Makefiles which I use in the
+    openSUSE blktrace package.
+    
+    Signed-off-by: Jan Blunck <jblunck@suse.de>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit f806a4478092ab8e2383efd05aa88073e55df7e7
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Mon Aug 20 15:31:50 2007 +0200
+
+    Disregard generated doc files in .gitignore
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 2885ecaa19a04ab9980896d1a849cdae9238b7d1
+Author: Vincent Legoll <vincent.legoll@gmail.com>
+Date:   Mon Jul 30 15:23:43 2007 +0200
+
+    Fix Makefile buglets
+    
+    - make install without having called make before
+    - create man directories if non pre-existent
+    
+    Signed-off-by: Vincent Legoll <vincent.legoll@gmail.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 98eee4e48b9461a04c2461a856c9592d504a6fb1
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Tue Jul 24 16:02:28 2007 +0200
+
+    Add man pages
+    
+    Thanks to Bas Zoetekouw <bas@debian.org> for providing these! And
+    shame on me for forgetting to add them to the git repo.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit e0ede9d3eec5d558abf98d94fa9b6098dc5ee013
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed Jul 18 13:51:56 2007 +0200
+
+    git:// url location update
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 758019ab551c13f57ba95c3512c73d61322632da
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed Jun 13 16:16:00 2007 +0200
+
+    Update email address
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 683ffbab5860bf116b9c07abd7641892d8d0a39f
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Thu May 31 16:27:37 2007 +0200
+
+    Make the %C format specified explanation more clear
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit d57450af7817f35ddaa3241426a6213689a3eec6
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed May 30 13:02:01 2007 +0200
+
+    Small format update for empty requests
+    
+    The kernel can use empty bio's or requests for signalling purposes
+    (such as sending a barrier down with no data attached), update the
+    format to output more appropriately for those.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fb2ec7961d3cfc7fb8f84bcf6ae803ed1c7bd180
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Mon May 21 10:25:38 2007 +0200
+
+    Account size of merges
+    
+    Just like we do for queues/dispatches/completions etc.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 986259305d0f5a91b4118685e8c9bb763200308a
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Mon May 21 10:16:59 2007 +0200
+
+    Fix queued vs dispatch numbers
+    
+    A merge trace includes a queue trace. blkparse accounted both
+    of them, resulting in the queued transfer number being a lot
+    larger than it should be. Fix that by not accounting bytes
+    in the merge handling.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 00cd304410a4e750ef929823dca3b932baa797b0
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed May 16 11:02:18 2007 +0200
+
+    Fix crash with '-' stdin input
+    
+    Need to use argv[optind], not optarg.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 3b79b22702659877d9ced51d77b175f2cbdbf940
+Author: Alan D. Brunelle <Alan.Brunelle@pobox.com>
+Date:   Fri May 11 15:43:06 2007 +0200
+
+    btrace: Add in -r support for btrace
+    
+    Using Ubuntu, debugfs is mounted on /debug instead of /sys/kernel/debug.
+    [Perhaps, we should put in blktrace a search through "common" areas
+    where debug could be mounted, and or do a simple parsing of the output
+    from a 'mount' command to /find/ the directory.]
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 5406b9715ffa8deecea13185a281196f878c53c6
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Apr 18 14:53:52 2007 +0200
+
+    Fix unplug histogram placement.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fc16a815417c438ed6d980d3a08d2f37122810cc
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Apr 16 19:17:12 2007 +0200
+
+    Add in unplug IO count histogram
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 77ed842eb4ee96f0e7a69ec58bb63eb99469a087
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Apr 16 19:16:55 2007 +0200
+
+    Cleaned out the btt/README file.
+    
+    The documentation under btt/doc/btt.tex is current, while this is woefully
+    out of date.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 6904079488cd3063d171021c8954f955f4236849
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Sat Apr 14 08:05:06 2007 +0200
+
+    Combine all outstanding patches into one /big patch/
+    
+    o  Added seek absolute option -- allows one to specify whether they want
+       seek distances to be calculated based upon nearness to previous IO or
+       from start to start.
+    
+    o  Added block number dumping
+    
+    o  Updated btt documentation for above.
+    
+    o  Significant clean up of memory used and files opened. All allocated
+       memory and opened files are cleaned up prior to normal program exit.
+    
+    o  Fixed problem where Q & M traces were not being freed properly.
+    
+    o  Fixed problem where bilink structures were not being freed properly.
+    
+    o  Fixed omission -- output combined seeks in addition to read and
+       write seeks.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit c8b0b334cc1028ad8aa5407667233747af96a942
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Apr 13 20:12:47 2007 +0200
+
+    A couple of weeks ago Ming Zhang had noted that btt was using tremendous
+    amounts of memory to accomplish a run. After looking at the code, and
+    doing some testing, I determined the cause - please find a patch to the
+    latest tree that seems to fix the problem for me...
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 425c69552d4fbf7705c74aef4761324ed641cb28
+Author: Bas Zoetekouw <bas@debian.org>
+Date:   Fri Apr 6 17:46:09 2007 +0200
+
+    [PATCH] Add store barrier defines for a bunch of archs
+    
+    This makes blktrace work/compile on: alpha, hppa, sparc, m68k, mips and arm.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 7174703f7b648246e68651d7364daa5baccff9d3
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Mar 6 20:18:07 2007 +0100
+
+    Some fixes - added in 4 figures, fixed an error in a section label.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 37d40cb2de1bd35e278004490eabd99867978d12
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Mar 5 18:20:37 2007 +0100
+
+    Fix warning in output.c where __u64 is a long, not a long long
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 512566d40074e9d263182e5df6a87993c198323e
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Mar 5 12:41:38 2007 +0100
+
+    BTT: Added user guide
+    
+    o  Added in new btt/doc directory w/ Makefile.
+    o  Added in btt/doc/btt.tex: First pass at a User Guide for btt.
+    o  Fixed usage for btt (missing -A in the usage).
+    o  Bumped version of btt to reflect this document.
+    o  Cleaned up a leftover debug entry
+    
+    Note: The document does /not/ have the charts intended in the final
+    copy yet. Hasn't even gone through a spelling & grammar & consistency
+    check yet.
+    
+    But it's a start...
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 74dc9101593183cbf464680dc9c2278734449469
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Mar 5 12:41:19 2007 +0100
+
+    BTT: Clean up output in preparation for first major documentation effort.
+    
+    Took out non-useful verbose per-device and per-process data from
+    default output. Added in -A option to put that out.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 67f9c3db3c13979be2d350b108ec2e5705cbf0eb
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 26 20:44:29 2007 +0100
+
+    Fix a typo in unplug's due to timers.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 11997716f0b60e3602a807b60c85636aa17af984
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 26 20:44:28 2007 +0100
+
+    Add in the notion of pre-culling IOs per device until a Q is hit.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit cf1edb17bb790c348393aff20685dbafe99ee48f
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 26 20:44:27 2007 +0100
+
+    Added ability to add device names from a file to blktrace.
+    
+    Added new argument to blktrace:
+    
+    -I <devs file>
+    
+    Where <devs file> has one device per line, each device is added to any
+    explicit -d arg, or the trailing device arguments.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fa0ab85de6801b1ebfddf9b697ac0293c14c3e00
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 26 20:44:24 2007 +0100
+
+    Add Q and D histograms (based upon IO size)
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit a6c42403c52df673378c30586f673b5fa86b4122
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 26 20:44:23 2007 +0100
+
+    Fix remap handling (again).
+    
+    I guess majors 253 and 254 are both right.
+    Fixed typo in bilink_first_up.
+    
+    I'm seeing stuff like:
+    
+    253,0    0       13    30.716486276 31815  Q   R 0 + 8 [mount]
+    253,0    0       14    30.718087082     3  C   R 0 + 8 [0]
+    
+    Without any intervening stuff (remaps and gets and inserts and ...). So
+    added some support for this case.
+    
+    (Note: This requires the kernel patch I submitted on 2007/02/15 to make
+    any sense, although this code will "work" in any event.)
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit db8570e94bedcb7196af5c209ae970afe2918643
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 26 20:44:21 2007 +0100
+
+    Fix plug output to only display when there are plug events to show.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 2b9df5a16d88c33139e5f85f40ca7fd55e43b35c
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 12 17:24:28 2007 +0100
+
+    Added return from blkrawverify to signal success or failure.
+
+commit 33f35150fdb42f350c13c6dd2bb5a3a2d17c23b0
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 12 17:24:04 2007 +0100
+
+    Added in plug totals
+    
+    (Also, moved plug information header so it only prints out once for all
+    devices, rather than per-device.)
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+
+commit b2822ceaae6f8b1d3601bde11a72a40a63fb8a32
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Thu Feb 8 21:03:48 2007 +0100
+
+    [PATCH] Add in measuring of Plug and Unplug traces.
+    
+    Added in the display of plug information on a per-device basis.
+    
+    % Time Q Plugged: Percent of the total time during which the queue
+                      was plugged
+    
+    ==================== Plug Information ====================
+    
+           DEV |    # Plugs # Timer Us  | % Time Q Plugged
+    ---------- | ---------- ----------  | ----------------
+     ( 68, 64) |        833(         0) |   0.36%
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 1790bf56c7bf3862b058d69ef2a1cc2df3986824
+Merge: fd97728 756d1f4
+Author: Jens Axboe <axboe@carl.home.kernel.dk>
+Date:   Thu Feb 8 21:01:38 2007 +0100
+
+    Merge branch 'master' of ssh://git.kernel.dk/data/git/blktrace
+
+commit 756d1f4633715a4185ff946618a95c6d90eacbfb
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 8 15:59:02 2007 +0100
+
+    Added overall averages for seek information
+    
+    Results in the following addition:
+
+commit 773c17a071933bb82fefdcff0414ede00db5405a
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 8 15:58:58 2007 +0100
+
+    Added overall averages for merge information.
+    
+    Results in new tail to merge information:
+
+commit 2fa934ce1551ff524d1b9fc3034c3995d240f415
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 8 15:58:55 2007 +0100
+
+    Fixed a problem where not all of a device structure was being cleaned out
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 65e3c3f6c84c9068061a57551406c3cb10e1d31c
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 8 15:58:45 2007 +0100
+
+    A couple of miscellaneous clean up operations.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 6dee1e200c8fd7e667a5d96ce60b04caa6942691
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 8 15:58:43 2007 +0100
+
+    Changed triggering on INSERT to GETRQ (temporary?)
+    
+    This is backwards compatible with previous versions, with the one
+    difference being that the Q2I information may be a bit shorter.
+    
+    The changes forthcoming with the explicit unplugging (2.6.20 + Jens'
+    unplag patches) require this. We may need to redefine and/or add a new
+    measurement once that settles down. When that happens, we'll most likely be
+    renaming things to better reflect GETRQ versus INSERT.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 5cd3c859704590a07b0f83ffe2fecdd2169df472
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 8 15:58:41 2007 +0100
+
+    Always output seeks averages, even if we are not tracking all ios
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 90ec4b1587d58b62c6c5a903c8f2179fc0e1f5c5
+Author: Vasily Tarasov <vtaras@openvz.org>
+Date:   Wed Feb 7 14:39:15 2007 +0100
+
+    [PATCH] Fix debugfs references in docs
+    
+    At several places in docs old mountpoint for debugfs is mentioned.
+    The patch just corrects these misprints.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fd977289b4b95ee2072d496ec90324ea9f62c1c7
+Author: Vasily Tarasov <vtaras@openvz.org>
+Date:   Wed Feb 7 14:02:03 2007 +0100
+
+    [PATCH] Improve dependency checking on builds
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit d76c5b81b99faca0959afcdd2e73330c61f69bfc
+Author: Alan D. Brunelle <alan.brunelle@hp.com>
+Date:   Tue Feb 6 20:46:16 2007 +0100
+
+    [PATCH]: btt - major fixes and speed improvements
+    
+    From:  Alan D. Brunelle <Alan.Brunelle@hp.com>
+    
+    Lots of changes to how we handle traces - adds robustness & quicker
+    
+    This large patch contains the following changes to the trace handling
+    aspects of btt:
+    
+    1. Use larger buffers for output options.
+    
+    2. Use mmap to handle the input of trace data.
+    
+    3. More precise btt statistics are output at the end.
+    
+    4. Added in (under DEBUG) the display of unhandled traces. I was running
+    into the problem where traces were not being connected, and the rb trees
+    would get quite large. This would slow things down considerably. (See
+    below for details on why traces weren't being handled.)
+    
+    5. Sprinkled some ASSERTs (under DEBUG).
+    
+    6. Added a new btt-specific trace type: "links" - since 'A' (remaps)
+    contain two separate pieces of information, I broke them up into a link
+    and a remap trace. [Thus, it is easy to find either end of the remap.]
+    
+    7. Added in the notion of retries of completes (and requeues). I'm finding
+    some discrepencies in the time stamps, in order to make btt handle these
+    better, I've added the notion of keeping the trace around for a bit,
+    to see if it gets linked up later.
+    
+    8. Separated trace streams into: simple IOs, and remapped IOs.
+    
+    9. Fixed up D2C averages - Q2I + I2D + D2C should equal Q2C averages.
+    
+    ----------------------------------------------------------------------------
+    I do not understand why it is so, but I am seeing two 'C' (complete)
+    traces for the same IO track at times. The sequence number is different
+    (+1 for the second one), and the time stamps are different (100's of
+    microseconds apart). I'm investigating this.
+    
+    At least on an IA64, I am seeing time inconsistencies amongst CPUs on very
+    heavy loads (48 disks, 4 CPUs, almost 300 million traces). I find the 'D'
+    (issue) and 'C' (complete) traces coming out ahead of the associate 'I'
+    (insert) and 'M' (merge) traces. It would be good to get this fixed in
+    the kernel, but I figure it is also goodness to attempt to account for
+    it in post-processing as well.
+    
+    ----------------------------------------------------------------------------
+    This work was done in order to handle some of these large data sets, and
+    I've found that the performance is reasonable - here are some stats for
+    very large file (the largest of which used to take well over 12 minutes,
+    now it takes about 5 1/2 minutes - and a lot of that is just getting the
+    18GiB of data read in):
+    
+    Size  Real     User     System
+    ----- -------- -------- -------
+     7GiB 123.445s  80.188s 11.392s
+    10GiB 179.148s 137.456s 16.680s
+    13GiB 237.561s 156.992s 21.968s
+    16GiB 283.262s 187.468s 26.748s
+    18GiB 336.345s 225.084s 31.200s
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 0ac4c20e46fc644b1ac9e3021e3ebaa88b9c536f
+Author: Vasily Tarasov <vtaras@openvz.org>
+Date:   Tue Jan 9 16:21:16 2007 +0100
+
+    [PATCH] Missed fixups wrt Bounce and Backmerge
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 7d34075678b7ed1dd2026831b46175b1b6247885
+Author: Ming Zhang <mingz@ele.uri.edu>
+Date:   Tue Jan 2 15:32:23 2007 +0100
+
+    [PATCH] Fixup filename on full file input
+    
+    If the user by mistake specifies the full filename, strip that back down
+    to avoid missing input files.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit bfabee7199b19ab3bd75b57e5833da4f47b7f540
+Merge: 4eb899a bd5e71c
+Author: Jens Axboe <axboe@nelson.home.kernel.dk>
+Date:   Tue Jan 2 09:20:54 2007 +0100
+
+    Merge branch 'master' of ssh://axboe@router.home.kernel.dk/data/git/blktrace
+
+commit 4eb899a6de14660e2ce722dcc069836e17a6bc3e
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Tue Jan 2 09:20:49 2007 +0100
+
+    [PATCH] Fix double free in error path
+    
+    Reported by zhuxudong <zhuxudong@nrchpc.ac.cn>
+    
+    If we fail reading, we will free the realloc'ed pointer and jump to
+    the error path which will free the original pointer. Fix this by clearing
+    the original pointer.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit bd5e71cf069defccb2a5200c03ae7e55697791f8
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Sat Dec 30 20:13:40 2006 +0100
+
+    [PATCH] Fix back descriptors
+    
+    The 'B' is really a bounce, not a backmerge. Fixup other merge
+    descriptors as well.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fb863d7ccfc7105bd71c89129e472f5eae14be9c
+Author: Ming Zhang <blackmagic02881@gmail.com>
+Date:   Thu Dec 21 15:56:19 2006 +0100
+
+    [PATCH] check do_foo return value before show_stat()
+    
+    current code will show_stats() even when do_foo() return non zero.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 8a82e321006f3a44d766a53d34f60a472375b8fc
+Author: Ming Zhang <blackmagic02881@gmail.com>
+Date:   Thu Dec 21 08:39:55 2006 +0100
+
+    [PATCH] fix a divide by zero error
+    
+    When pdi->events and pdi->seq_skips are both 0, current code will do
+    0/0.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 67076cbc20112afd833a2d04cd8f1c8d2fbcfaeb
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Wed Dec 20 14:00:54 2006 +0100
+
+    [PATCH] Enable use of FIFO as input
+    
+    Just reuse the stdin stuff for handling a named pipe.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 8afe3d7d64eaae67e96ea48af2d98df1e15cfc65
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Dec 19 08:18:38 2006 +0100
+
+    PATCH: blkparse: fix probem with empty trace files stopping the check for other files
+    
+    Fix problem where empty input files cause premature parsing of files.
+    Had a problem where CPU 0 opened a file with 0 traces, and that caused the
+    run to end before processing other trace files.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit fe92fbb89695321292b6bf97cffdab72836a999a
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Dec 1 10:57:50 2006 +0100
+
+    [PATCH] README updates
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit d84dec8e66fdf6b4afab5c2b7ff51001abab5c06
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Dec 1 10:55:23 2006 +0100
+
+    [PATCH] Bump version
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit e977fa915b278585aa63914bac03d79b955e8c1e
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Dec 1 10:52:20 2006 +0100
+
+    [PATCH] BTT patch: Fix problem with short runs
+    
+    Found a problem that if BTT took less than 1 second to execute, we'd get
+    Ktps of <nan> - this fixes that...
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 001b263355c68e219fb64d25564c41a0ee07a274
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Dec 1 10:51:31 2006 +0100
+
+    [PATCH] BTT patch: (3/3) time bounded trace analysis
+    
+    Added in -t and -T options to allow bounding of traces analyzed. Be
+    forewarned: this can result in some excessive numbers of orphaned traces
+    (partial IO streams before the -t tiem and after the -T time won't
+    be analyzed).
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 095181f283c440c7669f2c14aef5e84c80ff433e
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Dec 1 10:50:45 2006 +0100
+
+    [PATCH] BTT patch: (2/3) per-IO stream output
+    
+    Two major updates:
+    
+    (1) Added in some robustness - can accept out-of-order traces, and can
+    "orphan" unfinished IO streams.
+    
+    (2) Added in ability to put IO streams to a file, sending Q-to-C traces
+    on a per-IO bases.
+    
+    The additional robustness comes at some expense (performance), and
+    so I will look into that next. (Perhaps see what those Judy trees buy
+    us... :-) )
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 4a5cddba3b29a5356f883563b4909a0ee5a699ea
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Fri Dec 1 10:49:19 2006 +0100
+
+    [PATCH] BTT patch: (1/3) 'iostat' totals
+    
+    Added in totals for IOSTAT output (per snapshot and overall totals)
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 4c446dc0e8cb964d8a191b475ca3015b818dd33e
+Author: Olaf Kirch <okir@lst.de>
+Date:   Fri Dec 1 10:36:12 2006 +0100
+
+    [PATCH] blkparse: fix -f format override
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 7bd4fd0a4fca645bb50a641afac1e460a4e32dfd
+Author: Olaf Kirch <okir@lst.de>
+Date:   Fri Dec 1 10:34:11 2006 +0100
+
+    [PATCH] Add timestamp support
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit b22050b50f412c4c6567eebbcd2f3364e74908d9
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Nov 13 14:53:37 2006 +0100
+
+    [PATCH] btt: handle cases where we remap to a device which has no IO's (yet) in the trace.
+    
+    Fix remaps when referred to device has not been added.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 8091de936d9c64d6da1c7dccb031e8e6296e2205
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Nov 13 14:52:53 2006 +0100
+
+    [PATCH] blkparse: A couple of fixes: correct time output & flush files.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit cfa8ef19ab702e05797173f9255fd188e8581a94
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Nov 13 14:52:03 2006 +0100
+
+    [PATCH] Update doc/blktrace.tex to reflex blkparse updates.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 70317a16ae0c6b8f6972972f908fd167b2151846
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Nov 13 14:51:35 2006 +0100
+
+    [PATCH] blkparse: Converted do_file() to use a merge sort instead of RB trees.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 346d8a74d012a0c0ec0264bede7a7a401df1da14
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Nov 13 14:50:30 2006 +0100
+
+    [PATCH] blkparse: Make binary dumps buffered (reduces system calls).
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 234db09d1aa776f92738bb8d20771d945039b348
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Nov 13 14:49:48 2006 +0100
+
+    [PATCH] blkparse Added --no-text-output (-O)
+    
+    Removes textual output, useful for bin only.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit ec685dd2e5c6030493e4fc4ae23619227e93129c
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Mon Oct 30 10:42:47 2006 +0100
+
+    [PATCH] Ignore -o (output_name) when in server mode
+    
+    Reported by ehrhardt@de.ibm.com.
+    
+    It doesn't make a lot of sense to allow directories inside the session
+    private directory, and we currently do not handle multiple directories
+    inside the generated dir. So just ignore that option and inform the user.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit c76adfc177a182b72c430ce36bab3f9a21fe1616
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Mon Oct 30 10:38:34 2006 +0100
+
+    [PATCH] Default debugfs path to /sys/kernel/debug
+    
+    This seems to be where distros put it.
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 69d5a9157db1089a0c7c724b9217403b674dc880
+Author: Jens Axboe <jens.axboe@oracle.com>
+Date:   Tue Oct 3 14:51:26 2006 +0200
+
+    [PATCH] Add btt/btt to .gitignore
+    
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit 6eb42155679cfa6fcd03d23199c5ba0a233b53e7
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Oct 3 14:44:18 2006 +0200
+
+    [PATCH] Convert to using on-the-fly RB trees, no post-traversal.
+    
+    From: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    
+    - Converted to using RB trees as much as possible - significant speed
+      up in general.
+    
+    - Changed from constructing IO bushes to just doing things inline as we
+      get the traces. Significant speed up and reduction in complexity.
+      Lost ability to absolutely handle REQUEUE traces (may put out the wrong
+      min/max information for certain stats).
+    
+    - Added btt/dip_rb.c
+    - Removed btt/traverse.c btt/iofree.c btt/cylist.c
+    - Fixed message concerning stats & range data to include '.dat'
+    - Added in timing statistics (K traces per second handled)
+    - Changed verbose to just update once per second
+    - Added notions of "foreach" iterators for devices, processes, IO traces, ...
+    - Removed a lot of redundant code in output (using iterators instead)
+    - If not interested in seek information, don't calculate a lot of stuff -
+      again, significant speed up.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit d216e9ce50602b7a7f99e1196e42d52d00f1b4f5
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Oct 3 14:42:14 2006 +0200
+
+    [PATCH] btt: Fixed %utilization computation: idle not being computed right.
+    
+    Need to adjust last time device was looked at to include sparse times
+    when we don't have many IOs coming in.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+
+commit b2ecdd0fc9f93e7a2bea09dcd7b2c472eb4e0d94
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Sep 21 09:17:43 2006 +0200
+
+    [PATCH] Added in Q2C and D2C latency output option.
+    
+    Also: cleaned up empty seek and latency files on exit.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit 80c27cbe67449fb2e4bdb682002d87f2f0c07e72
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Sep 21 09:17:02 2006 +0200
+
+    [PATCH] Cleaned up old LVM/MD references, cleaned up btt/README.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit 21e47d90eb3160c797a9d5ef5032cd371eacedc5
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Sep 21 09:16:27 2006 +0200
+
+    [PATCH] Added iostat-style statistics to btt
+    
+    Added iostat-style statistics: rrqm/s, wrqm/s, r/s, w/s, rsec/s, wsec/s,
+    rkB/s, wkB/s, avgrq-sz, avgqu-sz, await, svctm, %util.
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit 6119854cc2acfdd1a545fa028f86e3e4b6c040dc
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Sep 21 09:15:41 2006 +0200
+
+    [PATCH] Added '-' and '_' in dev IDs in devmap file; output dev name, not numbers
+    
+    Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit 165e0a18ea7449be53a28b4b2907cc2071486e8d
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Sep 15 02:02:08 2006 +0200
+
+    [PATCH] btt: seek statistics fix
+    
+    Fixed problem with seek statistics when disk has no data.
+    
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit fb72d4bc53d9122ad3ad81aef2d8c3f5d8a98ce2
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Sep 15 02:00:54 2006 +0200
+
+    [PATCH] btt: Fix invalid q2a
+    
+    Fix for invalid q2a's under certain circumstances: need to clear out
+    timeline information as we pop back up stack.
+    
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit 97d13fb0f2a680668a79e64b7c71f93bd2664b0d
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Sep 15 01:57:24 2006 +0200
+
+    [PATCH] btt: Cleaned up patches for SEEK additions, DM, Q2A and seek fixes
+    
+    Added changes to handle DM devices:
+    
+    - Used __pad field in struct blk_io_trace_remap to store from device,
+      contains partition device information. Required modification in
+      blkparse_fmt.c:process_default() to handle this change.
+    
+    - To better handle DM devices, noted that REMAP traces can refer to other
+      REMAP traces, and thus added A_A and A_Q types (much like Q_A and Q_X)
+      types.
+    
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit 5225e7882fcf560afe419c49e03d6fd1ead60eb1
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Sep 15 01:53:19 2006 +0200
+
+    [PATCH] btt: seek additions
+    
+    Added seek analysis to btt:
+    
+    ==================== Device Seek Information ====================
+    
+           DEV |          NSEEKS            MEAN          MEDIAN | MODE
+    ---------- | --------------- --------------- --------------- | ---------------
+     (  8, 16) |           15573      10297802.6               0 | 0(10710)
+    
+    Shows the:
+    - Device (major, minor)
+    
+    - Number of seeks (IOs issued to driver)
+    
+    - Average (mean) of sector differences IO-to-IO
+    
+    - Median seek (sector difference)
+    
+    - Mode(s) - showing the mode and the number of times it occurred, thus in
+      this example we see 68.8% of the "seeks" were contiguous (or overlapping).
+    
+    Also added in the ability to dump all read and write seek values:
+    
+    [ -s <output name> | --seeks=<output name> ]
+    
+    Will create files with the name:
+    
+    seek_<mjr,mnr>_[rw].dat
+    
+    like:
+    
+    seek_008,016_r.dat
+    seek_008,016_w.dat
+    
+    Which contain relative sector offsets for reads and writes respectively.
+    
+    Signed-off-by: Jens Axboe <axboe@kernel.dk>
+
+commit b8801569f7d26e8bb730a47d2e4dd89c1457bcad
+Author: Jens Axboe <axboe@kernel.dk>
+Date:   Thu Sep 7 18:36:04 2006 +0200
+
+    [PATCH] Added store_barrier() for S390
+    
+    Signed-off-by: Jan Blunck <jblunck@suse.de>
+
+commit 584961e486d9fbf1d11c673cb1635cd85816590f
+Author: Jan Blunck <jblunck@suse.de>
+Date:   Thu Sep 7 18:35:17 2006 +0200
+
+    [PATCH] Fixed the Makefile in btt/
+    
+    Signed-off-by: Jan Blunck <jblunck@suse.de>
+
+commit aa994ec52b9ab09c445504cb39c12042cecf2d37
+Author: Martin Peschke <mp3@de.ibm.com>
+Date:   Wed Sep 6 16:54:45 2006 +0200
+
+    [PATCH] bug in btt/output.c
+    
+    This patch fixes a copy'n paste bug.
+
+commit 9f11c1a7906eb99eb90ff8a182cf7ca190cd8cbb
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Sep 6 15:55:28 2006 +0200
+
+    [PATCH] BTT: Improve correctness of average block size merged
+    
+    Made merge average block size predicated by IOs issued.
+
+commit 46e37c559d34896d51f06ab668458642e30c4c4e
+Author: Jens Axboe <axboe@kernel.dk>
+Date:   Tue Sep 5 10:47:37 2006 +0200
+
+    [PATCH] email update
+
+commit f8d501e119a3e3c782e078fec61fd808854b240d
+Author: Alan David Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Sep 1 09:26:30 2006 +0200
+
+    [PATCH] Ignore PC packets in btt
+    
+    BTT isn't really meant to trace those, and is causing problems with some
+    seek additions to btt I'm working on.
+
+commit e33da1d51a823921d769125320b977a967be4030
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Aug 7 12:25:08 2006 +0200
+
+    [PATCH] Fixup relayfs references and kill kernel patch
+    
+    2.6.17 has shipped and has support for blktrace, so no need to
+    carry around the older 2.6.16 patch anymore.
+
+commit 711e4d252464a658aeca93593a985383eeeb8b7f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Jul 23 02:13:20 2006 +0200
+
+    [PATCH] Support for logging metadata IO requests
+
+commit f86990edd23e465f8a865c34d308f888b8e6ee2d
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Thu Jul 6 10:04:23 2006 +0200
+
+    [PATCH] Support for readahead tracing
+    
+    These are the userspace changes to allow blktrace to distinguish
+    readahead from non-readahead reads.
+
+commit 871ef6d09b45f1e60d52abc2c0ede07ae47796a1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jul 5 13:03:13 2006 +0200
+
+    [PATCH] Fixup git web reference
+
+commit e71e4b780508e492cec4eb997390ab532170a3b3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri May 26 01:23:56 2006 +0200
+
+    [PATCH] btt: finalize the INLINE fixup
+
+commit d487b4ad0b7c823d2410cdb50c08b5fa980ab7d1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri May 26 01:19:50 2006 +0200
+
+    [PATCH] btt: Kill DO_INLINE and add -g
+
+commit 63eba14776dbafe34ebc4aade8f66456825d7514
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri May 26 01:16:17 2006 +0200
+
+    [PATCH] Add Alan's btt tool
+
+commit e94cf8d72bbc19141b644fc56d010c3b88f6f7da
+Author: Tomasz Torcz <zdzichu@gmail.com>
+Date:   Wed May 17 15:13:02 2006 +0200
+
+    [PATCH] docs updates: relayfs->debugfs
+    
+    documentation still mentions relayfs, but I believe debugfs is correct.
+    Small fix attached.
+
+commit 38e1f0c68bb7a808d889e639530c69830d110f75
+Author: Alex Polvi <alex@polvi.net>
+Date:   Mon May 8 07:15:50 2006 +0200
+
+    [PATCH] blktrace.c should ignore SIGPIPE
+    
+    After sending a SIGINT to a "blktrace .. | blkparse .. " pipeline,
+    occasionally I would not be able to run blktrace again. On my next run
+    of the same pipeline I would get the following error:
+    
+    cs411vm:/usr/src/bt# ./blktrace -d /dev/sdb -o - | ./blkparse -i -
+    BLKTRACESETUP: No such file or directory
+    Failed to start trace on /dev/sdb
+    
+    After rebooting, I could reproduce this by starting the pipeline, and
+    kicking off a big write and sending a SIGINT to blktrace. The following
+    is what I used for a write:
+    
+    while [ 1 ]
+    do
+        dd if=/dev/zero of=/test/write bs=1M
+    done
+    
+    It seemed like blktrace was not handling signals correctly, so I
+    strace'd the process to see what was happening.
+    
+    Sure enough:
+    
+    --- SIGINT (Interrupt) @ 0 (0) ---
+    ioctl(3, 0x1275, 0xb7fa6000)            = 0
+    sigreturn()                             = ? (mask now [])
+    write(1, "O\0\0\0\20\0\200\0\0\0\0\0\0\0\0\0\7taeN3\1\0\257R\260"...,
+    4096) = -1 EPIPE (Broken pipe)
+    --- SIGPIPE (Broken pipe) @ 0 (0) ---
+    +++ killed by SIGPIPE +++
+    
+    Any idea what clean-up is not happening? I tried to figure it out, but
+    my only work-around was a reboot.
+    
+    My patch against 2.6.17-rc3 just tells blktrace to ignore SIGPIPE.
+    Nothing crazy. :) blktrace already does enough error checking elsewhere
+    to handle a bad write.
+    
+    On a completely unrelated note, the write_data function calls fwrite,
+    which will not return -1 on error. Instead you'll need to use ferror to
+    check if there was a problem. I'm not sure if this is a cause of any
+    bugs, but it seemed worth mentioning.
+    
+    Furthermore, I updated the URLs in the documentation to point at a valid
+    git repo.
+
+commit 1452478f2d1b27916c7cba6e3976ed2129533c73
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon May 8 07:13:39 2006 +0200
+
+    [PATCH] fread/fwrite error handling
+    
+    Need to check ferror(), not return value. Thanks to Alex Polvi.
+
+commit 6a6d3f0f61a8325b4d986e25bb0a61a82ca79e57
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Tue Mar 28 08:15:22 2006 +0200
+
+    [PATCH] blktrace: fix sendfile problem with > buf_size xmits
+    
+    Basically, it add buf_size, buf_nr and page_size to the net header and
+    this info is put into each tip, for easy access in mmap_subbuf().  The
+    global buf_size, etc is still used by clients, since the global value is
+    all they need (for clients, the tip is filled in with the global values
+    anyway, so that mmap_subbuf() can use them, maybe the tip->buf_size
+    should be used everywhere instead for consistency and only use the
+    global values for initial args.  Also, each tip doesn't really need to
+    have these values, they could be stored in tip->device but I thought it
+    would be easier and quicker to access tip->buf_size rather than
+    tip->device->buf_size).  Actually, this data only needs to be sent once
+    per trace, but since there's no header covering the entire trace, sends
+    it each time.  Could be an optimization to make later...
+    
+    I've tested it using sendfile over the network with different buffer
+    sizes, and with normal non-sendfile network and non-network tracing
+    straight to disk, and haven't seen any problems.  Each test generated a
+    little over 1Gb of trace data in a little under 2 minutes, just under 23
+    million events after parsing, so it looks to me like it's doing the job
+    at this point...
+
+commit 67c0cf46ee7055e8681968de25db9d3a9d452cb0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Mar 24 11:16:46 2006 +0100
+
+    [PATCH] Remove sysfs bits from kernel patch to match 2.6.16+
+
+commit e91ed1d35aa9eb19d19e5cf15b35ca0fba3af2a2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Mar 24 11:15:03 2006 +0100
+
+    [PATCH] Rename kernel patch to 2.6.16 proper.
+
+commit c8255c5a4f93740f26a760728ad4aa4f41261ba3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Mar 24 11:14:37 2006 +0100
+
+    [PATCH] Update references to kernel patch and its inclusion in mainline
+
+commit e9f883ca480064f5a7c18b4a9145b6afb1da6de2
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Mar 24 11:06:59 2006 +0100
+
+    [PATCH: Change remap format to have mapped-to information on the left of the ->
+    
+    Pretty self-explanatory, works fine for MD devices. Looking into DM
+    devices next (I think that _may_ take a kernel change).
+
+commit 2f0647932059d868904c7f21e87c3ddaae404531
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Mar 16 09:32:55 2006 +0100
+
+    [PATCH] blktrace: fix get_subbuf() leak
+
+commit 2689be58c1d2633b84751d8e482c368cd1458e21
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Mar 16 09:28:56 2006 +0100
+
+    [PATCH] blktrace: sendfile() poll can use -1 timeout with the flush change
+
+commit 506cdb6d96b18c261cce16802d92efa36916dd34
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Mar 15 13:57:41 2006 +0100
+
+    [PATCH] blktrace: only print one connection info per client
+
+commit 2aa193ce4ba2a9c36593514cd3f6a78d68272faa
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Mar 15 13:33:36 2006 +0100
+
+    [PATCH] kernel: remember to flush relay channel on trace stop
+
+commit 4aeec019b66acbcedfb14fe97ab24e4e09865dd5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Mar 15 13:29:26 2006 +0100
+
+    [PATCH] blktrace: fixes for the new net client sendfile
+
+commit f3292d5c853cc9930811a6f774e722523e0d412f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Mar 15 11:06:11 2006 +0100
+
+    [PATCH] kernel: drop POLLMSG hack again
+
+commit 232d6466b4d488661c4e713595e4f6ee7b539ecf
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Mar 15 09:04:53 2006 +0100
+
+    [PATCH] kernel: update to -rc6
+
+commit d042efdfe7697e5a4e38b012f4580af3760653d9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Mar 14 14:15:33 2006 +0100
+
+    [PATCH] blktrace: remember to check flush_subbuf() return value
+    
+    Also label 'maxlen' as unused instead of using casting tricks.
+
+commit ff11d54c003b568a6ab94f4aa499f4ede0d549f1
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Tue Mar 14 09:02:07 2006 +0100
+
+    [PATCH] blktrace: per-cpu net connections
+    
+    We can get reliable poll() without POLLMSG tricks, if we open a
+    net connection per CPU.
+
+commit dd870ef6bac0cd5eb9ef1fe199e0670b006a940b
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Mar 2 12:46:41 2006 +0100
+
+    [PATCH] blktrace: handle case where output directory is not set
+
+commit c135da93c5e0e0829234ba2070f6612260ca82c2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 27 16:37:08 2006 +0100
+
+    [PATCH] kernel: update kernel patch to include Toms read/sendfile consolidation
+
+commit 79971f4310bc3dba0d1cc680f692e7f0128e761d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 27 12:15:49 2006 +0100
+
+    [PATCH] blktrace: make sendfile usage the default
+
+commit 62a268bd01cb37fd7c08f68f81b704ccccb05717
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 27 12:01:47 2006 +0100
+
+    [PATCH] kernel: -rc5 update
+
+commit a2594911b74688e3b971526bbcad9e07db0c917c
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Feb 27 08:10:32 2006 +0100
+
+    [PATCH] blkprase: binary dump capability + notify added
+    
+    Here is a proposed patch which would allow blkparse to dump its output
+    to a binary file (in addition to the ascii output). It adds a new '-d
+    <file>' parameter.
+    
+    The purpose of this would be to allow for the easier handling of the
+    collected data by analysis tools. [Rather than having to parse the
+    textual output from blkparse, or duplicate the collation efforts of
+    blkparse itself.]
+
+commit b2ecb3804b464b36e158f517d9a13abb0f1db9c6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 27 08:06:17 2006 +0100
+
+    [PATCH] kernel: relay files are now in debugfs
+
+commit 3d06efea104b3f3999ce3a5b20b19126106b88f4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 27 08:05:22 2006 +0100
+
+    [PATCH] blktrace: relay files are now in debugfs
+
+commit a3225fed88b248d2b84d773ad0290c7d1da5e92d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 15:16:18 2006 +0100
+
+    [PATCH] Mark as 0.99.1
+
+commit ce0206765a13934c8aaeb0c4d360be80bd888b99
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 15:14:29 2006 +0100
+
+    [PATCH] blktrace: add __for_each_foo() for nc's, and fix crash on bad realloc
+
+commit c196b5f2f8ee6d7d0e15683a25a788e9737d6152
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 14:51:17 2006 +0100
+
+    [PATCH] blktrace: fix possible crash on exit without ever opening an ofile
+
+commit e0a1988b94de5bee7f0b7d8084694f451a6339ee
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 13:29:06 2006 +0100
+
+    [PATCH] blktrace: support multiple network connections
+
+commit 97159c021d81078fed5c298179c126175805f38d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 11:49:38 2006 +0100
+
+    [PATCH] blktrace: make sure net traces for multiple devices end up in same dir
+
+commit 7ab2f837a01ef11ab624fed5e27261cf6e913f6f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 10:53:25 2006 +0100
+
+    [PATCH] blktrace: make net server dropped count be per-device
+    
+    Require client to send a close event for each device.
+
+commit b9c60a202de4db0cae390f5a40860d7d827ae10c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 10:46:00 2006 +0100
+
+    [PATCH] kernel: update relayfs to set POLLMSG on subbuffer switch
+
+commit 7934e6680d1c07eb8e65ea086ea1099ac692136f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 10:43:56 2006 +0100
+
+    [PATCH] blktrace: reduce context switches a lot, event count fix, etc
+    
+    Transmit dropped events over the net as well, so the other end know if
+    we lost events.  Use POLLMSG from relayfs to indicate subbuf switch.
+
+commit c5334e1b5860585e12aa86c98d1e471f0ee1fb3e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 23 08:56:20 2006 +0100
+
+    [PATCH] kernel: update to latest patch
+
+commit bcbeb60f9ecff9ed9e8556d71090a541397eb7c9
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Thu Feb 23 08:46:32 2006 +0100
+
+    [PATCH] blktrace: remove padding logic, it's not needed with the new sendfile()
+
+commit 659bcc3f45c77a466d693499399a915099216eec
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 22 21:57:00 2006 +0100
+
+    [PATCH] blktrace: get rid of signal hacks in accepting new connections
+
+commit 05831aca666fabcc3464129c1e334bfecf0ceb5f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 22 20:12:21 2006 +0100
+
+    [PATCH] README and blkrawverify minor update
+    
+    Don't create an output file if the input argument is bogus or fails
+
+commit e076d33bfa9a5ef334e8db6e143c624d15a7c30f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 22 13:23:30 2006 +0100
+
+    [PATCH] blktrace: no need to track ts->offset anymore
+
+commit acc0ff42ae8cda75191cc4cb1d58d2baddf49ee1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 22 13:11:29 2006 +0100
+
+    [PATCH] kernel: update to fix padding read
+
+commit 116293475923ede05e0a6c213f6cfc324846ea9e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 22 13:12:32 2006 +0100
+
+    [PATCH] blktrace: serialize sendfile sendout, then we can use poll reliably
+
+commit 3ef0de89bec1ed77fb6d3266b6745b509e33cc79
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 16:37:20 2006 +0100
+
+    [PATCH] kernel: last minute typo in kernel commit...
+
+commit 75c1fdcc76cbccb4a32d8f7ecc6ae819ba7017cd
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 16:35:32 2006 +0100
+
+    [PATCH] kernel: redo the relayfs ->sendfile implementation
+
+commit 42e96d8a6f2a5bf06c071189308142af77582790
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 15:36:05 2006 +0100
+
+    [PATCH] blktrace: is_done() typo...
+
+commit 36808255414e109cd209bfc88699771aff13048d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 15:29:01 2006 +0100
+
+    [PATCH] blktrace: missed net_sendfile argument update
+
+commit f6fead259103956824803abe5121bbc77a0d602b
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 15:32:12 2006 +0100
+
+    [PATCH] blktrace: sendfile() improvements
+
+commit 227f89ffd4da431cd05f9b54ea7882c70b63f3dd
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 15:24:40 2006 +0100
+
+    [PATCH] blktrace: valid magic in received header always
+
+commit 921b05fed251b6352a07635aa91e7fbad7f5b7f9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 21 13:21:34 2006 +0100
+
+    [PATCH] blktrace: only do ioctl stop on local trace
+
+commit 0c0b75b4bbb87987242204d71fe1f30e779aa423
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 13:41:37 2006 +0100
+
+    [PATCH] blktrace: tip_open_output() cleanup
+
+commit e3bf54d8d29efa83f6802b689627aff265e160f5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 13:34:05 2006 +0100
+
+    [PATCH] blktrace: store server output in client-date directory
+    
+    Otherwise it's hard to do multiple traces without overwriting data.
+
+commit 7035d92ddbcbfe121c08f409b75a37a02443ff51
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 11:59:49 2006 +0100
+
+    [PATCH] blktrace: stop trace on SIGINT to allow drain
+
+commit 1366e53a12ed21f10c11aef72ef5efe49c10a89a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 11:17:39 2006 +0100
+
+    [PATCH] blktrace: ->fd and ->pfd init in net client mode
+
+commit 112a166e3545d9f1d9b718a00cc33422f7c3b246
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 11:12:11 2006 +0100
+
+    [PATCH] blktrace: final (hopefully) data read stat updates
+
+commit dbfbd6db54bafab784e9019169671d4361c27e2e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 11:06:18 2006 +0100
+
+    [PATCH] blktrace: net server stat fixes
+
+commit 663962f7f02e893347220dbe6527c493d0bbca60
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 10:19:30 2006 +0100
+
+    [PATCH] blktrace: bad ->data_read increment, and poll() delay fix for sendfile()
+
+commit 18eed2a721adb13ab374700d7ded3cfb26ed73c6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 09:56:56 2006 +0100
+
+    [PATCH] blktrace: use send() for last data on quit in sendfile() path
+    
+    We need to do that, as we can only use full subbufs in the sendfile() path.
+
+commit 1be42f3d3db5576ab892c769cadf488d3562017c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 09:30:53 2006 +0100
+
+    [PATCH] blktrace: be a little more conservative on 'ready' subbuf bytes
+
+commit 4b802b3170cf3948fe21510ee405c8af0da38165
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 09:19:29 2006 +0100
+
+    [PATCH] kernel: update to -rc4, include changes for sendfile() support
+
+commit 11eedd9bd54b82b860c9825e0d6d9a1c1f32ffb8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 20 09:18:36 2006 +0100
+
+    [PATCH] blktrace: improve sendfile support (requires kernel change)
+
+commit 380f17748cc395071079c6b13ad9857007efc6fe
+Merge: ddf2284 d3a2c8a
+Author: Jens Axboe <axboe@nelson.home.kernel.dk>
+Date:   Thu Feb 16 20:07:11 2006 +0100
+
+    Merge branch 'master' of ssh://axboe@router.home.kernel.dk/data/git/blktrace
+
+commit ddf2284295cd4ee05d01dd3157b6f7c6ba20292c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 16 20:07:00 2006 +0100
+
+    [PATCH] blktrace: don't truncate/open local files when in net client mode
+
+commit d3a2c8aa133817ed63c49e32869a44660c30fc3e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 14:04:07 2006 +0100
+
+    [PATCH] blktrace: bad alloc in sendfile() handler
+
+commit c207e39393ddb803fa6e495daf6460c1bc49aa57
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:37:41 2006 +0100
+
+    [PATCH] kernel: update to -rc3 (has little fixes/optimizations, too)
+
+commit b46a03422222e58a1574d15a6892a11175313deb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:32:20 2006 +0100
+
+    [PATCH] blktrace: don't leak the accepted socket fd on reconnect
+
+commit 18d8437d6b0e2bcd437f8eccfac06654c78361ec
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:26:23 2006 +0100
+
+    [PATCH] blktrace: one more round up of data transfer
+
+commit 54824c20971051de0486d4e5e97d3ef20934af82
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:25:28 2006 +0100
+
+    [PATCH] blktrace: round up data read to nearest kb
+
+commit e85ee0f2b7a65ee8354a3dbbfd8820aa558e49d1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:17:39 2006 +0100
+
+    [PATCH] blktrace: show incoming connection
+
+commit bbb1c18a1b0cc12701b67ccc18ced62d1c4a788e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:14:57 2006 +0100
+
+    [PATCH] blktrace: allow quit when waiting for repeat connection
+
+commit 898bbd3b03540f9276487a4e25480f255e727126
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:07:45 2006 +0100
+
+    [PATCH] blktrace: proper end-of-run cleanup for restart
+
+commit 976dd5c306066a3576ad886d0c4f8933b0ccc062
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 10:01:29 2006 +0100
+
+    [PATCH] blktrace: fill ops in net tip as well
+
+commit 6a752c90cc10d192f7c22af00689f0ec2f9785e6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 09:58:23 2006 +0100
+
+    [PATCH] blktrace: allow client/server to signal end-of-run properly
+
+commit f531b94dbe7948e479a6cfa838cda9fb3c321f0c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 09:33:45 2006 +0100
+
+    [PATCH] blktrace/README: update to include description of new net parameters
+
+commit b444507cc5cfae28347b45ea73a2e8bb4845f760
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 09:26:08 2006 +0100
+
+    [PATCH] verify_blkparse: -W warning
+
+commit 32f18c488b531a7bcd4ccab0db3cc9799964a481
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 09:22:30 2006 +0100
+
+    [PATCH] blktrace: add -s sendfile option (doesn't work right now)
+
+commit 0cc7d25edc4aeb57e52e0115f87948202251813c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 15 09:03:55 2006 +0100
+
+    [PATCH] blktrace: add ->ops for the read/get/flush methods
+
+commit 410d7c623c962833282bc97d5fc140b7539788b4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 14 14:52:28 2006 +0100
+
+    [PATCH] blktrace: various net related fixes (accounting, stats, etc)
+
+commit f0597a7eeb83ae4f2750373a949ffc778b88c80c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 14 14:05:59 2006 +0100
+
+    [PATCH] blktrace: need to free ts->buf for networked transfer
+
+commit 22cd0c0225f4ee589c4427113cf8eff360a8957f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 14 14:04:58 2006 +0100
+
+    [PATCH] blktrace: fix network support, don't use sendfile() yet
+    
+    We need relayfs changed for that to work (which I only have half-done)
+
+commit 8e86c98a76fc3796d0ef0ac7d749475aa1e0ad02
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 14 10:51:39 2006 +0100
+
+    [PATCH] blktrace: first cut at adding network support
+
+commit 4ff24a34c39259181e52edee36106b81759d647d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 14 10:22:42 2006 +0100
+
+    [PATCH] blkrawverify: check and convert data appropriately
+
+commit e5413c3cea0ced8c967255f9bf69ca4fe80f3fc2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 14 10:20:22 2006 +0100
+
+    [PATCH] check_data_endianess left in half-done state
+
+commit 9e4cd1b80b79a96f634b5d749e3a29aa0f4c1abe
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 13 15:53:38 2006 +0100
+
+    [PATCH] blkparse: __u32 -> pid_t
+
+commit 57c9f4e8433fbc99c4dac6b25864ad0fbe45feb1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 17:08:35 2006 +0100
+
+    [PATCH] kernel patch update again
+
+commit 248eac8f98dd5ef87b5f623b4c93cb5bde1143ea
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 16:09:06 2006 +0100
+
+    [PATCH] blkparse: ignore multiple process pid <-> name notifications
+    
+    This can happen if you are doing multiple traces at the same time, then
+    you would get a notification after a new trace has been set up.
+
+commit 2990e589cf82e927f05f4bcd58851078b4754659
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 15:07:33 2006 +0100
+
+    [PATCH] blkparse: start unification of ppi and ppm
+
+commit 2def0d9826dc830999a13050406b975819e7b1a5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 14:19:20 2006 +0100
+
+    [PATCH] kernel: update to work with latest Linus -git tree
+
+commit 62fb68f5f79c7ebfdc47649d4b97ef7a7982ccc3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 14:01:12 2006 +0100
+
+    [PATCH] kernel: update patch to match ->comm changes in blkparse
+
+commit bfc70ad577ae97011eed84b86b3c6ba01e23e80a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 13:58:34 2006 +0100
+
+    [PATCH] Shrink the trace by 1/3 by removing ->comm[16]
+    
+    We now send notify messages out when we see a new process, so we don't
+    need to repeatedly send the same 16 bytes of name info everytime.
+
+commit 5975d309ac40b9724f70b46bbfa3747e8dc24ea5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 9 08:34:51 2006 +0100
+
+    [PATCH] Pin the mmap'ed output buffers in ram
+
+commit 43ec3d6acbe433723f553d8898821bb3a2666d2e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 8 15:52:45 2006 +0100
+
+    [PATCH] kernel: update to include the locking/md+dm fix
+
+commit 753f9091a2794d46819331ddfb8c86ff58e4a467
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 8 15:21:18 2006 +0100
+
+    [PATCH] blkparse: allow tracking of Queue -> Complete time for md/dm
+    
+    For remapper devices, we want to track the Queue -> Complete cycle,
+    as that is all we have the option of doing there.
+
+commit 19a67de341ca90bea2aa3e7da276ceb3977380e1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 8 15:19:52 2006 +0100
+
+    [PATCH] btrace: allow -v option for blkparse -v
+
+commit e62a64706b9c7fb801f0a28ba586f75b89e11d6c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 8 11:36:30 2006 +0100
+
+    [PATCH] kernel: update to latest
+
+commit ed71a31e1d2de558800f0fbd7091ea0cac4f76e1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Feb 8 11:25:46 2006 +0100
+
+    [PATCH] blktrace: use the new setup/start/stop/teardown ioctls
+
+commit ea0018ad42fc8805bd2c95696a9c70b7ef331edd
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 7 16:59:21 2006 +0100
+
+    [PATCH] blktrace: remove unused defines
+
+commit b71063118f6dc116a6e23a7586fb18bd0e235017
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 7 14:25:47 2006 +0100
+
+    [PATCH] blktrace: remove one user -> kernel copy by mmap'ing output buffers
+
+commit 4ba99bfccc5ced4b57254d8df8edd616a6a923c0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 7 14:23:54 2006 +0100
+
+    [PATCH] blkrawverify: account bad traces, don't dump a warning for each of them
+
+commit 86368eb510bcc9b918eb870c90d5eb4271083267
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Feb 7 09:05:33 2006 +0100
+
+    [PATCH] data_is_native can't be both static and extern
+
+commit 07d0d5e3e9fbaecec1a5db4606741fe6bb22b811
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 6 13:02:45 2006 +0100
+
+    [PATCH] Remove native/non-native print
+
+commit 017d166066b6c8afe22b75f6dc5e91bfa8f9c67a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Feb 6 12:06:44 2006 +0100
+
+    [PATCH] Allow trace data to stay CPU endianness
+    
+    Basically just check whether we need to convert the trace or not
+    in blkparse, then we can get rid of the endianness conversion
+    in the hot path (blktrace:write_tip_events()).
+
+commit 2505038d06676b31df2f65e08009474335140834
+Merge: 21f5565 65f2deb
+Author: Jens Axboe <axboe@ipf.home.kernel.dk>
+Date:   Fri Feb 3 14:58:46 2006 +0100
+
+    Merge branch 'master' of ssh://axboe@router/data/git/blktrace
+
+commit 21f556518d86641f91344e1509c811e1fae65003
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Feb 3 14:57:47 2006 +0100
+
+    [PATCH] blktrace: Make the subbuf adding/removing lockless
+
+commit 65f2deb557a13728eb4662037609a0820b3fd1bf
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Feb 3 12:55:49 2006 +0100
+
+    [PATCH] blkparse: don't let ->cur_depth go below zero
+    
+    This can happen if we miss traces, so check for it.
+
+commit 158f0231bfab044bd34fb48bc7d00189b1e33261
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 21:42:00 2006 +0100
+
+    [PATCH] kernel: previous patch was reversed by mistake
+
+commit b9f751ef37465b097c80de4981f848d220338055
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 19:16:28 2006 +0100
+
+    [PATCH] blkrawverify: note what file the output went to
+    
+    I didn't actually realize this until I looked at the source...
+
+commit d04130832ccca445051eda86f9129a4eda2446be
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 18:39:40 2006 +0100
+
+    [PATCH] kernel: update to recent fixes
+
+commit 4ab4280173d8ad828e5f1428ecc44c53479ad2fe
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 13:50:09 2006 +0100
+
+    [PATCH] blkparse: do_stdin() needs to increment read_sequence too
+
+commit a43c1c17c979674a3f03a858fa42e1dfd4bba5ed
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 13:47:51 2006 +0100
+
+    [PATCH] blkparse: Fix bad ordering due to non-global sequence
+    
+    We need to let events simmer in the queue for at least one iteration
+    of all devices, to prevent bad outputs if one CPU has late events.
+
+commit 6693017725e653359ec2b1862162c1c30655fe06
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 13:20:57 2006 +0100
+
+    [PATCH] blkparse: make skip detection per-CPU as well
+
+commit 212421d888f11106dc2b35eab4946e29fbce0b99
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 13:20:03 2006 +0100
+
+    [PATCH] verify_blkparse: improve output
+
+commit ced8a9bfde18818f157efd02d0bd8af9ac86d487
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 12:06:34 2006 +0100
+
+    [PATCH] verify_blkparse: update for per-CPU sequences
+
+commit 36652af405cfc21cfb22aca8e32cd9c3bf42cb67
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 12:00:14 2006 +0100
+
+    [PATCH] .gitignore: add blkrawverify
+
+commit 210824c332e30b543676a537ddd34d380bc9c69d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 11:56:56 2006 +0100
+
+    [PATCH] Make the sequence per-CPU so the kernel side can be lockless
+
+commit 89482da65bbe96da701e2c873e3eeb3016b4e651
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 11:16:05 2006 +0100
+
+    [PATCH] blktrace: remove check_time, we always need to check it
+
+commit 6480258ab0432d3a09ef884d4cc49e11f8c3ccee
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Feb 2 09:23:56 2006 +0100
+
+    [PATCH] blktrace: make write_data() return early with buflen == 0
+
+commit 9cfa6c2bcbae0d5c5857d6917520afe77aebf2a5
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 2 09:23:20 2006 +0100
+
+    [PATCH] blktrace: speedup write out by aggregating writes
+
+commit 74b9237944a560bbc20e705a15e092dcaac3d28a
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Feb 2 09:16:58 2006 +0100
+
+    [PATCH] blktrace: remember to initialize mutex
+
+commit f83a0ff33ec942eb952f7483ddbd07d9f4a68ddb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 31 20:21:15 2006 +0100
+
+    [PATCH] kernel: update to include Alan's relay_reserve() method
+
+commit db7e0552967aed47a6310122869ee261cd3f9162
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 31 09:24:29 2006 +0100
+
+    [PATCH] blkparse: be sure to propagate read_data() error all the way back
+
+commit c0e0dbc2b9f2865832f937650a617477a350cb55
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 31 09:21:04 2006 +0100
+
+    [PATCH] blkparse: cut down on excessive number of fcntl() calls
+    
+    Cache the blocking state locally and only issue it if changed.
+
+commit 5c0f40f757e864e11e2844955776dedd14e4d3cd
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 31 09:11:01 2006 +0100
+
+    [PATCH] blkparse: don't do partial reads in read_data()
+    
+    If we do a partial read, the trace may look ok because the magic is there,
+    but we will have lost it and the next read() will be confused. So only
+    return early if we read zero bytes and we must not block, otherwise wait
+    around for the remaining data.
+
+commit eea01dfc2e0eb1521dbbd481ab5a3e660e6cb588
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Jan 30 21:35:31 2006 +0100
+
+    [PATCH] btrace: don't be quiet by default, and fix -h parameter
+
+commit 965eca2da26f61895871b9c1ef43600edf98858c
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Mon Jan 30 19:03:43 2006 +0100
+
+    [PATCH] blkparse: Remove negative skips
+    
+    The following patch does not insert skips that go backwards. I am not
+    sure why we do, but on occasion we find events that are behind where we
+    should be, and we don't have an entry in skipped ones - that would make
+    me thing it's a duplicate. But in any event, we should not be reporting
+    such things - they cause huge skip numbers by wrapping on an unsigned long.
+
+commit c44b85a116a0ecd8601cff2db641d6e8894acf31
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Jan 30 14:37:04 2006 +0100
+
+    [PATCH] blkparse: don't let SIGINT show stats right away, we might not be done
+
+commit b4aabcb3cdf273988273667dcd7d7e42c81f1641
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Jan 30 14:36:25 2006 +0100
+
+    [PATCH] blktrace: allow live tracing to get full subbuffers as well
+    
+    The poll() timeout will keep us reading smaller buffers, if the data
+    generation rate isn't high enough.
+
+commit 9e8b753cc696b08beaaa3218c2a59595d19ee6f2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Jan 30 14:31:01 2006 +0100
+
+    [PATCH] blktrace: fix leftover_ts offsetting
+
+commit 05e2c5594c7e5078abbdca1094e0fe6577ad4656
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sat Jan 28 20:39:11 2006 +0100
+
+    [PATCH] blkrawverify: Check for EOF in error reporting
+    
+    A check of fread returning 0 is not sufficient towards determining an.
+    error - 0 also indicates EOF. Added check for that.
+
+commit 27223f197c1694066a489b1153a9127b7ba377b1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sat Jan 28 20:36:09 2006 +0100
+
+    [PATCH] blktrace: really fix the loop logic
+
+commit d7b524bdd7361435107991bbbd8ca89668e59f5f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sat Jan 28 20:15:27 2006 +0100
+
+    [PATCH] blktrace: fix logic for write out loop when exiting
+
+commit c0cb7fabc87d26a8ec1a7a5d3b347e54b9ae65cc
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sat Jan 28 20:06:28 2006 +0100
+
+    [PATCH] blkrawverify: cast __u64 to unsigned long long for printing
+
+commit 79ee97049eba635757c474a66f133822f3edff78
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 27 19:42:30 2006 +0100
+
+    [PATCH] blktrace: fix hang and no output if first sequence is not expected
+
+commit 7de86b12eb7aafa7cddd370f4e777b813e7cd703
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Jan 27 17:12:35 2006 +0100
+
+    [PATCH] blktrace: cleanup the leftover subbuf code
+
+commit 5be4bdaf2c5a06261f0f36603190f67cc7164a7b
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 27 16:26:25 2006 +0100
+
+    [PATCH] blktrace/blkrawverify: get rid of pesky signedness warnings
+
+commit 2f903295293f72f88639a3c0e97a3b028aa89415
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 27 14:47:15 2006 +0100
+
+    [PATCH] Need to still use outputname to check no_stdout
+
+commit 7ce7c56bafa2bd2cbdb634df4eadd4c2b4a2f131
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 27 14:41:59 2006 +0100
+
+    [PATCH] Forgot to add list.h
+
+commit 9db17354639022d75377c81811242d0cc10d87f9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 27 14:39:35 2006 +0100
+
+    [PATCH] blktrace: completely rewrite the event pull/pushing loops
+
+commit 41824f0010e8c177ebfcd10d0ef889d4522bd04a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 27 10:35:47 2006 +0100
+
+    [PATCH] kernel: update kernel patch with the HT sibling time offset fix
+
+commit b1a3b0ed93c337ca0eb139260256489003c401f1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 26 20:07:26 2006 +0100
+
+    [PATCH] blkrawverify: u64 types need %llu format
+
+commit f17c879dcf9c34d42cddfc5e9c4275fe08a90475
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Jan 26 16:03:12 2006 +0100
+
+    [PATCH] Added blkrawverify utility
+
+commit 7126171a8c687c5f455887939bdaa37436893d61
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 25 21:48:45 2006 -0800
+
+    [PATCH] blktrace: improve live tracing
+
+commit 74b2def6e39fbbbd20ef597be05b7b0cd12b64d3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 25 18:59:38 2006 +0100
+
+    [PATCH] kernel: update patch for the SMP fix
+
+commit d416628af560913b42c69344cc675f24fb9fbff2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 25 18:54:14 2006 +0100
+
+    [PATCH] blkparse: fill unitialized pci->cpus.fd with -1
+
+commit 57e8a2ad93e3f27694b9ab0d9a56abd631e36562
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Wed Jan 25 15:10:43 2006 +0100
+
+    [PATCH] blktrace: Don't overwrite buf_size for the vbuffer
+    
+    Here's another patch to fix a problem I noticed - the code that sets
+    the buffer size passed to setvbuf() uses the global buf_size variable
+    and thus unintentionally sets that variable, which is used elsewhere
+    later e.g. setting tip->fd_max_size in extract().
+
+commit ac5b39c070396ff8b73363bded859055d2cc6250
+Merge: cb7b061 c9735e6
+Author: root <root@centera.home.kernel.dk>
+Date:   Wed Jan 25 15:29:47 2006 -0800
+
+    Merge branch 'master' of ssh://axboe@router/data/git/blktrace
+
+commit cb7b061dee71a4a1987f22a356bdf8f69bebd000
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 25 15:27:28 2006 -0800
+
+    [PATCH] blkparse: make sure new pci infos have ->fd initialized to -1
+    
+    This avoids hangs in blktrace when seeing potentially invalid samples, since
+    it will attempt to read from fd == 0 (stdin) in that case.
+
+commit 649c7b6641e4c0b23bb2e51d4aca126fae893653
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 25 15:05:58 2006 -0800
+
+    [PATCH] blkparse: add max read/write queueing depth stats
+
+commit c9735e6583d66f1d411b03719f32adf5310878aa
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 25 14:51:06 2006 +0100
+
+    [PATCH] kernel: Update patch to include ISSUE fix
+
+commit b3ab182dacd2da79168ff6790f1a19e719208a2d
+Merge: 0685312 ac740d9
+Author: Jens Axboe <axboe@nelson.home.kernel.dk>
+Date:   Tue Jan 24 19:08:14 2006 +0100
+
+    Merge branch 'master' of ssh://axboe@router.home.kernel.dk/data/git/blktrace
+
+commit 0685312fdd24afa24ebfa9746f65baa0797b56a1
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Jan 24 19:08:05 2006 +0100
+
+    [PATCH] blktrace: fix for potential data overwrite
+    
+    Here is the situation before the realloc:
+    
+                   fd_max_size
+                   |
+                   v
+       XXXOOOOXXXXX
+              ^
+              |
+              fd_off
+    
+    The X's are data, the O's are empty. What we start with after the realloc:
+    
+                   fd_max_size
+                   |
+                   v
+       XXXOOOOXXXXXOOOOOOOOOOOO
+              ^
+              |
+              fd_off
+    
+    In the original code we have the movement of data from byte 0
+    (tip->fd_buf) to tip->fd_off - over-writing data. I think if we use
+    tip->fd_max_size, we get the desired result (note: tip->fd_max_size is
+    updated to 2 times the size AFTER the memmove).
+
+commit ac740d98c8c83f5d5ae3e16ef96704933c648b4a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Jan 22 19:15:39 2006 +0100
+
+    [PATCH] blkparse: hash-by-name is -h, not -n. correct help info.
+
+commit be4a60c31460bff2cd827c62ae1abb56fb74c41c
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Sun Jan 22 19:10:04 2006 +0100
+
+    [PATCH] blktrace: bad ret = len assignment that should be ret == len
+
+commit f4f763cab2ef0210088e35c336f217293222ee7b
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Jan 19 15:15:45 2006 +0100
+
+    [PATCH] blkparse: reverse the order of the skips out for when verbose is enabled
+
+commit 8c0221bf0fcf15bfdbdff5ed8555b6604dfc7196
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 19 08:45:04 2006 +0100
+
+    [PATCH] verify_blkparse: init last_seq to -1 to avoid alias on sequence 0
+
+commit 5cc96acba28248e124451bd1023ba985af248599
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 20:31:43 2006 +0100
+
+    [PATCH] blktrace: woops, left debug fprintf() in there, kill it
+
+commit ae9f71b3a2d7839a0025f75997208433b220f3ac
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 20:29:14 2006 +0100
+
+    [PATCH] blktrace: better poll fix, just return every x msec instead
+
+commit bbabf03a6476d57c8e6507857fb7bf5b29018432
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 20:27:10 2006 +0100
+
+    [PATCH] blktrace: improve poll() handling, relayfs uses subbuffer granularity
+
+commit e2369c59e441dc0318918caa0951de0f6b46df0c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 16:25:16 2006 +0100
+
+    [PATCH] blktrace: __refile_ringbuffer() needs to return size
+
+commit 3b8164f96ea2f32947b23dbbca1ef0c42b444dac
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 15:00:05 2006 +0100
+
+    [PATCH] blktrace: signedness fixes
+
+commit 1c99bc2122136be9d3f812fd7e590f71fec378a1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 14:53:23 2006 +0100
+
+    [PATCH] blktrace: remember to resize ringbuffer before each fill
+
+commit eb3c81081fc65a4e1de84c529e2bcc9d74ccf3af
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 18 14:34:54 2006 +0100
+
+    [PATCH] blktrace: fix ringbuffer and event drop reaping
+
+commit 492da111fbed2ec299892b32d332f0ec989b3986
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Jan 18 14:33:24 2006 +0100
+
+    [PATCH] blkparse: improve skip detection / logging
+
+commit 7ac25441fb7bc3c53f4ad20500591c749dcddda6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 17 14:06:44 2006 +0100
+
+    [PATCH] blktrace: we don't need ->closed anymore
+
+commit 91816d548771dc7823275b2e5ea7381797ab8e1e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 17 13:39:00 2006 +0100
+
+    [PATCH] blktrace: let the threads shut themselves down
+    
+    This gets rid of the problem where the main and worker threads race
+    for killing the various file descriptors and buffers.
+
+commit a3e4d3309ff982311ab8b7d5865b5458b0349aae
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 17 13:38:17 2006 +0100
+
+    [PATCH] blktrace: add ringbuffer in front of kernel buffers
+    
+    This greatly improves the skipping, I now get full skip free down to 32k
+    kernel side buffers where I needed 1024k before.
+
+commit 23f5e2577fd100c6c1f568b60a5633f9d8b79516
+Merge: ecede8c 6517813
+Author: Jens Axboe <axboe@ml370.home.kernel.dk>
+Date:   Mon Jan 16 15:42:58 2006 +0100
+
+    Merge branch 'master' of ssh://router/data/git/blktrace
+
+commit ecede8ca480968a8f52c90a140090096cad8ca4c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Jan 16 15:42:48 2006 +0100
+
+    [PATCH] blktrace: kill unused tip members
+
+commit 6517813e56d496fa29a50a8d12e93781841c9658
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 13 15:33:23 2006 +0100
+
+    [PATCH] kernel: dropped events and cciss support
+
+commit 56070ea4b5efb32b54aaecd83ff2881560eb99a8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 13 15:28:01 2006 +0100
+
+    [PATCH] blktrace: add warning about increasing buffer size with dropped events
+
+commit dce0f678e3a7b9b7dc1e4c5f9c8cbed528a920ed
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Fri Jan 13 15:21:00 2006 +0100
+
+    [PATCH] blkparse: Count forward and backwards skips seperately
+
+commit 4054070af867f170e7cf85f1cb3cf4f0a3f138d8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 13 15:05:30 2006 +0100
+
+    [PATCH] blkparse: dump requeue info as well
+
+commit e21dc4dd837779466cf867a56bfd0902938188d4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 13 13:26:27 2006 +0100
+
+    [PATCH] blkparse: __account_c() needs to take a signed integer
+    
+    Otherwise requeues passing negative byte count don't work as expected.
+
+commit 8ea6249518a81ef48f2aaaba473b91b42e76699f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Jan 13 09:09:59 2006 +0100
+
+    [PATCH] blktrace: show stats on sigint as well
+
+commit da39451f5ebdac940dff762a0a5580cda4e957dd
+Author: Tom Zanussi <zanussi@us.ibm.com>
+Date:   Fri Jan 13 09:01:15 2006 +0100
+
+    [PATCH] blktrace: add support for checking events dropped by the kernel
+
+commit 587f359bf460166e292225de00a6aa824b0df269
+Merge: 99c1f5a 6f7da51
+Author: Jens Axboe <axboe@ml370.home.kernel.dk>
+Date:   Thu Jan 12 18:58:33 2006 +0100
+
+    Merge branch 'master' of ssh://router/data/git/blktrace
+
+commit 99c1f5ab3e6347240e56bd9fcecccfab12f96acb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 12 18:57:26 2006 +0100
+
+    [PATCH] blktrace: smaller code cleanups
+
+commit 6f7da51bb793961dae5a6bc0590aa63a56bb1ba2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 12 15:05:31 2006 +0100
+
+    [PATCH] kernel: update kernel patch (mutex update, and device name fix)
+    
+    This makes blktrace work with device names that includes slashes, such as
+    cciss (/dev/cciss/c0d0, for instance).
+
+commit 007c233c30bac31d5082f98607294f9ca26a3432
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 12 14:01:14 2006 +0100
+
+    [PATCH] blktrace: use buffered output, halves the CPU usage of tracing.
+
+commit 80c536086fdcaa805050a0a08aa82f3d1e646335
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 12 12:44:05 2006 +0100
+
+    [PATCH] blkparse_fmt: missing 'requeue' event handling
+
+commit cf4839171e2c12b3cf471be168016a7586fbd2f3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Jan 12 11:19:24 2006 +0100
+
+    [PATCH] Fix typo in blk_add_request in elevator.c (kernel patch)
+
+commit 8f551a39c5c48ec15e2f21e67bebf3d00713ea8f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 11 16:21:34 2006 +0100
+
+    [PATCH] Increase blktrace default subbuffer size
+    
+    We generate so much data, that we cannot keep up with the smaller 128kb
+    buffer. So increase it to 512kb.
+
+commit 08fe97d6e6f8f2160a5312d44838c17bc1845af2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Jan 11 09:47:03 2006 +0100
+
+    [PATCH] Update kernel patch to newest 2.6.15-git
+
+commit 663af81986ad392529b4d0d17e1ef43a9877db82
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Jan 10 21:51:34 2006 +0100
+
+    [PATCH] Work-around for 32-bit be64_to_cpu() weirdness
+
+commit fdf9780fa74eda26dee83223e7e7534fc6d2a693
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Nov 16 14:07:37 2005 +0100
+
+    [PATCH] Update kernel patch to match the one in the block git repo
+
+commit 04faffa6b08c2a313730796229336ef2414e1933
+Author: Christoph Hellwig <hch@lst.de>
+Date:   Wed Nov 16 14:04:26 2005 +0100
+
+    [PATCH] blk_io_trace_remap structure needs padding on 32-bit
+    
+    Signed-off-by: Jens Axboe <axboe@suse.de>
+
+commit 3489dd6454f86f3d695ff9b65a103b38584d45d5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 31 11:12:23 2005 +0100
+
+    [PATCH] Add .gitignore fil
+
+commit 6c8d81e4b5692821708c8205b11a678bfbfb1801
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 31 11:11:31 2005 +0100
+
+    [PATCH] update kernel support for recent kernel
+    
+    Also add ->start_lba ->end_lba support for tracing a range, and
+    ->pid for only following a specific app.
+
+commit 31382e5dcd8ae57a3ba852065c2f7d4ec4a3e2c1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 11 13:14:56 2005 +0200
+
+    [PATCH] rpm should work for version 3.x now (with changed RPMBUILD)
+
+commit a6f3b5ba931a50d3c514313182ca5f9fef7d3e31
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 11 13:11:02 2005 +0200
+
+    [PATCH] Include tar ball in clean target
+
+commit fa503a0cccf49885a1d0c8fecfb575c856f1c8ae
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 11 13:09:23 2005 +0200
+
+    [PATCH] Add make rpm target
+
+commit 13d928f089e91f985c6ff9f67c84dd97331cc672
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 11 12:57:36 2005 +0200
+
+    [PATCH] 1.0 preparations
+
+commit 1c8a9524b4ef98cd669b241a21727ee43e8874fb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 11 11:36:52 2005 +0200
+
+    [PATCH] Bump version, should be about good to go for 1.0
+
+commit 6e0073ed0b872275aa6271b2daaaba6a0ab8019e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 11 09:50:47 2005 +0200
+
+    [PATCH] blkparse: be a little more flexible in mixing -i and -D
+
+commit aa61fd87772adef15ac5a98ff41636ea776d69d8
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Oct 11 09:05:58 2005 +0200
+
+    [PATCH] kernel: update remap to work for dm as well
+
+commit 43a7306214196e7264c0f42b78cd9dcef388f479
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 16:54:19 2005 +0200
+
+    [PATCH] btrace.spec: spelling error
+
+commit f572317d20c6d4249bdb63c9dd8b5f6cfa394aeb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 16:52:51 2005 +0200
+
+    [PATCH] Add rpm spec file
+
+commit bc17157980e0e99a65052bc55b001531dd0cec2e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 16:52:38 2005 +0200
+
+    [PATCH] blkparse: sparse and friends don't like ULONG_LONG_MAX
+
+commit eb9bd4e96c29bd1a795f4983a6bd244d1f0a986b
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 13:28:13 2005 +0200
+
+    [PATCH] blkparse: fix memory leaks
+
+commit da19e768edd8f92d12086286d29db8ec3b721023
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:54:54 2005 +0200
+
+    [PATCH] blkparse: suff[] should not be static
+
+commit 0dc3602c57d48d2ca984c4ef2bf86ad0534e7f1f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:52:39 2005 +0200
+
+    [PATCH] blkparse: remember to bail out if conversion gets too large
+
+commit 4c5231655613159c5ffab37c75e5ae6e3c3f8263
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:47:47 2005 +0200
+
+    [PATCH] blkparse: pretty up stats print by converting to correct K/M/G
+
+commit c5b475b10654dd06778d386ed2babcb935211160
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:20:29 2005 +0200
+
+    [PATCH] blkparse: kill debug statement in rate calculation
+
+commit b1c8e61412a4d1bae47cb39e930d6aa306707ecb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:11:16 2005 +0200
+
+    [PATCH] blkparse: fix bad comment in recent checkin
+
+commit 20ed6177bb89f314f778f75d25b28f241f3db868
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:10:04 2005 +0200
+
+    [PATCH] blkparse: include rate dump for stats
+
+commit 824c2b39f542ab1ff02371fff2643904db93c4cf
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 10 12:09:20 2005 +0200
+
+    [PATCH] blkparse: maintain map of online CPUs instead of open files
+    
+    The ->nopenfiles fix is not enough, since it doesn't tell us if
+    the right CPUs are online or not.
+
+commit 0610d359c0fdb9c16fd627306535c4ceab3851c0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 9 16:07:14 2005 +0200
+
+    [PATCH] Add large file support for 32-bit platforms
+
+commit fd8a68ba0cd00775f3a22d6dd422962353de52a4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 9 12:35:49 2005 +0200
+
+    [PATCH[ verify_blkparse: dump number of events scanned
+
+commit 774a1a10d24094d233175f2aa41fdff4bcf21be9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 9 12:31:30 2005 +0200
+
+    [PATCH] stopwatch usage may misorder first event
+    
+    If the stopwatch_start happens to trigger when we only have
+    events from _some_ of the available cpus in the rb_sort tree,
+    the first event may be misreported. Check for that.
+
+commit 58261c756836677184f2588941293d7e3fda0ad9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 9 11:21:56 2005 +0200
+
+    [PATCH] verify_blkparse: check for correct number of arguments
+
+commit d372b4d9d6de13dc1daaa488a4e4459c59811d68
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 9 11:14:47 2005 +0200
+
+    [PATCH] Making the pdf requires tetex and latex
+
+commit 708713899dfdee90779dfce47907091327b1ae4d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 16:06:00 2005 +0200
+
+    [PATCH] doc: blktrace.pdf: blktrace.tex dependency
+
+commit d915dee697e306b914457bb78a429d2d8b98ec26
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 14:05:18 2005 +0200
+
+    [PATCH] Switch hash option -h, update btrace for all new options
+
+commit cbc927b61b683f6ec24cdb5cc7c2e8c3f57ba18c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 13:21:41 2005 +0200
+
+    [PATCH] blkparse: fix stat printing
+    
+    Forgot to increment pci->nelems.
+
+commit 57ea8602dc5da207879bd272ba2a0f6afdd5a067
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 12:49:17 2005 +0200
+
+    [PATCH] Add -v for being more verbose on non-fatal errors
+    
+    Move version to -V instead.
+
+commit 5512378ea65f48e42d8b7df49064de3e79d4ae65
+Merge: 63756b5 7b464f9
+Author: Jens Axboe <axboe@nelson>
+Date:   Fri Oct 7 11:18:13 2005 +0200
+
+    Merge branch 'master' of ssh://axboe@router.home.kernel.dk/data/git/blktrace
+
+commit 63756b50407dc9a5976210320dccbf6dc57cbaff
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 11:12:58 2005 +0200
+
+    [PATCH] blkparse_fmt: use memcmp() it is (usually) faster
+    
+    At least it has better worst case performance.
+
+commit 7b464f9fdf067d272f7a86ace990fe0d3e76dceb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 10:59:32 2005 +0200
+
+    [PATCH] doc: simplify the git checkout command
+
+commit b6dc7d6ecf5bb181dd00a7c230c1a8d6e9b35c77
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 10:58:16 2005 +0200
+
+    [PATCH] doc: add example of PC command tracing
+
+commit 1d6376a5e39ed9d13969f4217da386e49e028906
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 10:50:56 2005 +0200
+
+    [PATCH] blkparse_fmt: Check for repeated zeroes in pdu
+    
+    We can stop dumping the pdu (typically the cdb) if the rest is just
+    zeroes, append a .. to show that is the case. Saves screen space.
+
+commit 763d936e7aa0fbcbe3d090f81967c0d8138986ff
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 10:23:35 2005 +0200
+
+    [PATCH] blkparse: dump stdin entries on every iteration
+
+commit cf9208eac82ccd06074c026460d9bb256c2ea3a2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 10:22:41 2005 +0200
+
+    [PATCH] blktrace: fix error on stopping live trace and allow trace on CDROM
+    
+    We need O_NONBLOCK to trace on an empty CDROM device
+
+commit b47d077d5193e3cfd02b928f4ebcd68da288d97f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Oct 7 09:35:38 2005 +0200
+
+    [PATCH] Update README
+
+commit 64acacae1f49e1d0b525a53b30549263c454455a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Oct 6 17:29:31 2005 +0200
+
+    [PATCH] blktrace: gcc-4 signed vs unsigned warning
+
+commit ae957cbc4f0d0eb7b442dc3c4693db996bcd5170
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Oct 6 14:25:52 2005 +0200
+
+    [PATCH] blkparse: fix remap sectors dump, it was in kb
+    
+    Add t_kb(t) and t_sec(t) macros to help with this.
+
+commit a8f30e64d4d3e05fac70a918d175029412cb1ee7
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Oct 6 11:03:20 2005 +0200
+
+    [PATCH] Add support for remap actions
+
+commit 208660b112c49b844c8f7733ab30adc4d278ff36
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 17:54:17 2005 +0200
+
+    [PATCH] blktrace.tex: add description of each possible action
+
+commit 2fd00a615bc659d1fe8f58aa11b97120066af456
+Merge: e8ae3d0 ffcf46d
+Author: Jens Axboe <axboe@axboe-amaliegade>
+Date:   Wed Oct 5 17:28:41 2005 +0200
+
+    Merge branch 'master' of ssh://axboe@brick.kernel.dk/data/git/blktrace
+
+commit e8ae3d0990ca9d10714f0f18b0453ab32afbbbd8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 17:28:33 2005 +0200
+
+    [PATCH] blktrace.tex: add fs/pc request explanation
+    
+    Kill the 1.1 ideas/questions section, everything in there has been
+    covered by now.
+
+commit ffcf46d839159db38a4e6b543ee24f97e6dd1f88
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 17:22:51 2005 +0200
+
+    [PATCH] Typo: __BIT_ENDIAN -> __BIG_ENDIAN
+
+commit 1e3c4225dbb79342c8c341b7a726663805945e5a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 15:16:19 2005 +0200
+
+    [PATCH] Better endianness check
+
+commit 4ac5831f3396d504c6397a09be0f60c6f25d705e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 15:16:02 2005 +0200
+
+    [PATCH] Makefile: only include .c files in deps
+
+commit 183a0855c6cc254df40ef443373afda9c6930561
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 13:05:00 2005 +0200
+
+    [PATCH] blktrace: sanity check the buf_size argument, cap at 16MiB.
+
+commit cdaf6af77b233b71fa82c0743c36ade285cada60
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 11:48:14 2005 +0200
+
+    [PATCH] Makefile: dep fixup
+
+commit c5d9acbb32bd2c2eda8b95730462c3f407e72024
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 11:47:25 2005 +0200
+
+    [PATCH] Makefile: add dependencies
+
+commit 574b089f588a2748b4082f02580c425c520c7173
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 11:44:50 2005 +0200
+
+    [PATCH] Forgot to kill root blktrace.tex
+
+commit ff8a07c9182e7c91090f6279abd75f3437b89937
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 11:38:23 2005 +0200
+
+    [PATCH] Move docs to doc/
+
+commit 8865ed9c11db379415cc9292304e0f6887269f68
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Oct 5 11:07:49 2005 +0200
+
+    [PATCH] Add blktrace users guide
+
+commit a141a7cde9a8679385207f2e364e5404eaafc00d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 10:23:36 2005 +0200
+
+    [PATCH] blkparse: old patch broke the sequence check again
+
+commit 1ca323a52a36bf34d05c5330e2c34343da4252cd
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 09:54:55 2005 +0200
+
+    [PATCH] blkparse: we have to allow one skip to prevent sequence screwups
+    
+    If one CPU file is completed in the first run, check_sequence()
+    would allow it to skip too early causing unordered events.
+
+commit b99d16379d8dfde1986ff1b882460ca0a80bbd87
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 09:53:31 2005 +0200
+
+    [PATCH] verify_blkparse: correct sscanf return
+
+commit 8d1fb00b10f1a27acc9fc1afeddec091e0e11057
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 09:32:53 2005 +0200
+
+    [PATCH] Makefile: kill -W again
+
+commit 3f65c5858b11997e04605386bb160aabe3548ea3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 09:28:20 2005 +0200
+
+    [PATCH] Fix long options
+    
+    Partly from Alan.
+
+commit 0f2d84ba9f690ad1814c939c2a8e52fe7b90f2b6
+Merge: 71ef8b7 fb39f32
+Author: Jens Axboe <axboe@linux>
+Date:   Wed Oct 5 09:24:49 2005 +0200
+
+    Merge refs/heads/master from origin
+
+commit 71ef8b7c47a4b2a9e75e7ae15234a51cf074eeb0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 09:24:44 2005 +0200
+
+    [PATCH] Remember to terminate options structure
+    
+    If not an unknown option will segfault, woops.
+
+commit fb39f32f8392ad464f6b157de2ed79931ee2d0ad
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Oct 5 09:13:29 2005 +0200
+
+    [PATCH] blktrace: fix a few -W warnings
+    
+    And leave -W on in the Makefile
+
+commit 98f8386bc828cc00671b3e5ca4ee1b99332424fb
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Oct 5 09:12:17 2005 +0200
+
+    [PATCH] blkparse: Add -a/-A options to blkparse as well
+    
+    This moves the mask stuff into a seperate file, act_mask.c
+
+commit d1d7f15fb45b67e1b0fd077055f8e514cf4c156e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 4 20:05:53 2005 +0200
+
+    [PATCH] Add -D output/input directory option to blkparse and blktrace
+
+commit 62873474e0fdba703a2ad0ab141ffcb0050566af
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 4 19:54:09 2005 +0200
+
+    [PATCH] blktrace: note that the -b option is in KiB
+
+commit 3a9d6c13e905b35f3ae63d3c809ad131b9a57f1e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Oct 4 11:13:58 2005 +0200
+
+    [PATCH] blktrace: optimize the get_event() normal case
+    
+    We usually only see partial traces in very few numbers (like
+    a few in a million), so optimize the normal case by getting
+    a full trace instead of splitting it into a 4-byte and remainder
+    read.
+
+commit dd90748fb0fa9f603fc9eac3a2e4682d17fef6b4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 14:27:05 2005 +0200
+
+    [PATCH] blkparse: only break out of last loop if not dumping to stdout
+    
+    Otherwise sending a ctrl-c when running btrace will quit, leaving
+    entries never dumped.
+
+commit 0b07f23e59f480d566f267c5d344556a264aa305
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 14:06:33 2005 +0200
+
+    [PATCH] blkparse: stdin sequence and aliases fixes
+
+commit 4b5db44a063baeace0690456f8f7a46681659fcf
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 14:06:07 2005 +0200
+
+    [PATCH] blktrace: allow for unaligned events
+    
+    Unfortunately it looks like we have to support this for now,
+    as it appears relayfs will still miss events on buffer wraps
+    for the read cases.
+
+commit 63c7bd7576615978d0091c5a0c56c3e1a0c685fc
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 14:05:12 2005 +0200
+
+    [PATCH verify_blkparse: dump number of sequence aliases as well
+
+commit 0698729e1f2d78815da1ba1b84a01134d78ce2cb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 14:04:48 2005 +0200
+
+    [PATCH] btrace: need large rb batch count for stdin sorting
+
+commit db6fe5bc1c299517bd3cb3d3b9bec957a8863f72
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 11:33:59 2005 +0200
+
+    [PATCH] blktrace: various fixes
+    
+    - Better exit_trace() backoff
+    - Don't assume that write() always writes the full chunk
+    - kill mmap(), we will never use it for packet driven workloads
+    - Bug in get_data_read/read_data() for incremental reads
+    - Optimize tid_fd_lock() holding, drop before freeing memory
+
+commit c9d46c9054dc71eeb44469c6c07e9a1e08dec9b5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 10:06:01 2005 +0200
+
+    [PATCH] blkparse: kill old force debug print
+
+commit bc4fd908769eebef9223397759386bdf6c7fc071
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Oct 3 09:05:01 2005 +0200
+
+    [PATCH] kernel: update patch to 2.6.14-rc3
+
+commit 7d1c04111392f9d0dcd0392cc48f04b5d0a2a1dc
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 2 21:34:10 2005 +0200
+
+    [PATCH] blkparse: Add option to print missing entries
+    
+    And default to off, it can be fairly verbose.
+
+commit 1c7c54aa02106d097ef7ec772cc8555d9d6634e8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Oct 2 15:39:14 2005 +0200
+
+    [PATCH] blkparse: check smallest sequence read
+    
+    This allows check_sequence() to know when a skip happened and
+    when it is ok to proceed. Should be the final fix, now we now
+    when a sequence is missing and we nicely limit the memory
+    consumed in presence of large traces and missing entries.
+    This change brings down memory consumption of a skippy 1.3
+    million trace here down from 130MiB to 15MiB.
+
+commit 3c8413cb8d85f28622e9fefb5a6bcb0705f3b26f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 30 12:34:19 2005 +0200
+
+    [PATCH] blkparse: invert alloc checks, more intuitive
+
+commit 1d24fc14547bf4197f0a6f1203e513fe584cb0ed
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 30 11:52:24 2005 +0200
+
+    [PATCH] blkparse: reduce memory consumption
+    
+    - Better skip detection
+    
+    - Limit maximum number of t/bit allocation cache entries
+
+commit 85e84946efa0bb4b548f843ff40d10d49937b6e4
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 30 07:33:30 2005 +0200
+
+    [PATCH] blkparse: fix ->sector printing warnings
+
+commit ab9b41a797a48e2ed26a3d9849f70a6447b152bc
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 29 13:08:50 2005 +0200
+
+    [PATCH] README: add reference to gitweb on brick
+
+commit e820abd79354e5b8596e1ec8105ffe36d36f9c20
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 29 12:01:37 2005 +0200
+
+    [PATCH] Assorted compiler warnings
+
+commit cf4b68a59f5b5a7758d9e58b54edd9e59554d23e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 17:57:03 2005 +0200
+
+    [PATCH] verify_blkparse: print events not ordered
+    
+    And fix exit code.
+
+commit 54aa4b1c9f410181a01996a7288056a58b456d1f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 17:50:56 2005 +0200
+
+    [PATCH] Add verify_blkparse description to README
+
+commit 42a58cd1b3940ca1c70619f8af8009273c545b3c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 17:45:51 2005 +0200
+
+    [PATCH] verify_blkparse: implement in C instead
+    
+    The C version checks a 92MB file in 2 seconds where the php
+    version takes 23 seconds.
+
+commit e8f652a66f46ab8d8f4799bfc8bc0eb343615630
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 16:27:52 2005 +0200
+
+    [PATCH] verify_blkparse: missing line break
+
+commit 1e6fbfb69043fd59d065a5313d325569f15711e7
+Author: Thomas Kenne <thomas@2ndfloor.dk>
+Date:   Wed Sep 28 15:51:16 2005 +0200
+
+    [PATCH] verify_blkparse: fix parsing
+    
+    Current version would break, if the device number didn't have
+    a leading space.
+
+commit 1c24add6afe134bb1f76e61891fb239d08471dee
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 15:41:22 2005 +0200
+
+    [PATCH] blkparse: prune old found entries in rb_last
+
+commit a9ae7e1219024e30189873862cea9ad33866bf59
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 15:40:16 2005 +0200
+
+    [PATCH] verify_blkparse: make sure file is readable
+
+commit 1f71a5e8d263341d3516a0d1b38898eae53489db
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 14:52:06 2005 +0200
+
+    [PATCH] verify_blkparse: proper check of file given
+
+commit 23211fdf46da1999d26cf05c6e91739e036d3fa2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 14:17:39 2005 +0200
+
+    [PATCH] blkparse: don't check time in last rb lookup
+
+commit 2671f35e16d5b6d3cb9386ed1230ca0fe040cec0
+Author: Thomas Kenne <thomas@2ndfloor.dk>
+Date:   Wed Sep 28 14:12:55 2005 +0200
+
+    [PATCH] Add script to verify correctness of blkparse output
+    
+    Only checks the time.
+
+commit f7bd1a9be79f865dc7c154ab273018a092635ac2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 11:34:29 2005 +0200
+
+    [PATCH] blkparse: make the rb track root per-device
+
+commit d6222db89aea11a0dfc39f431bc24849ba5b055c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 10:56:59 2005 +0200
+
+    [PATCH] blkparse: misc assorted fixes
+    
+    - Move the trace verification earlier, so that traces on
+      trace_list are always known valid
+    
+    - Start with -1 sequence so when using the stopwatch the
+      skip count is correct (first entry might not be 1)
+    
+    - stdin get_cpu_info() fix
+
+commit ca1880de2718d80f7033770b4fde74b1ba95de30
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 08:55:52 2005 +0200
+
+    [PATCH] kernel: move the plug/unplug logging around a little
+
+commit 2a1b34248fc192cc93d6d63f6c7f1b27f27bcc16
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 28 00:03:59 2005 +0200
+
+    [PATCH] blkparse: sequence fixes
+    
+    This should finally fix all the remaining sequence bugs. We
+    keep a backlog of already processed entries so we can lookup
+    any out-of-sequence events there. That takes care of one
+    direction of sequence and time mismatches. The other direction
+    is handled by fixing the trace_rb_find() lookup to work well
+    enough without having a precise time (which is the primary
+    key for the rb sort).
+
+commit acd70d216292cc61a7dd85761653918c52740eca
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 27 18:18:04 2005 +0200
+
+    [PATCH] blkparse: improve skip detection
+
+commit cdbda0722ab0995fdb5e6dc1a7bafeb2cb41b7b2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 27 15:38:08 2005 +0200
+
+    Forgot to kill old patch
+
+commit 892ca0d3124bc240d377e52fe9035674a53f7dd1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 27 12:18:14 2005 +0200
+
+    [PATCH] kernel: improve serialization and unplug logging
+
+commit 53c68c88e22a54e4305ef44dfb3253242dfcb25f
+Author: Jens Axboe <axboe@nelson.(none)>
+Date:   Tue Sep 27 11:04:43 2005 +0200
+
+    Forgot to include the change for the last stopwatch fix...
+
+commit 98c5a267d2fb53a100916847ee1f9e8e016a05e8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 27 10:22:33 2005 +0200
+
+    [PATCH] blkparse: another stab at stopwatch_end fixing
+    
+    This should work reliably, the check is moved after we
+    have definitely called find_genesis().
+
+commit 89d2e850a422e8af6ccb9312453a86f6472f2d43
+Author: Jens Axboe <axboe@nelson.(none)>
+Date:   Tue Sep 27 10:15:24 2005 +0200
+
+    Revert "[PATCH] blkparse: final stopwatch check"
+    
+    This reverts a795e5fae97e14d77c3c3c7d0f6543e6c5f8c850 commit.
+
+commit 8e68e38f387e121ccf808cc0d7137ee85feac004
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 27 10:15:17 2005 +0200
+
+    [PATCH] blktrace: fix sparse warning
+
+commit 1c8ca7b5a1016d63caa1248e4a62d22600234f93
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 19:05:40 2005 +0200
+
+    [PATCH] blkparse: add %N format for bytes
+    
+    We need this for PC requests, they are not multiples of 512
+    like the FS requests. At the same time change the default for
+    PC requests to dump in bytes.
+
+commit a795e5fae97e14d77c3c3c7d0f6543e6c5f8c850
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 15:42:05 2005 +0200
+
+    [PATCH] blkparse: final stopwatch check
+    
+    Delayed quit when all files have been read and there are no
+    further entries beyond that point, then it is safe to quit
+    out early there as well.
+
+commit 7f4d89e6f49fef4d813aaeaf2988adf8e0f43dd7
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 15:36:19 2005 +0200
+
+    [PATCH] blkparse: more stopwatch cleanups
+
+commit 4f0ae44f18675821f221153329765bc19d9cea9f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 15:34:37 2005 +0200
+
+    [PATCH] blkparse: improve stopwatch
+    
+    Move the checks much earlier, no point in doing a lot of
+    work for stuff we will toss out anyways.
+
+commit 715d80213ac4db03feeb382b4af56d7d69f7001d
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 14:38:23 2005 +0200
+
+    [PATCH] blkparse: hash-by-name fixes
+    
+    - Be more precise in dumping (name, ...) in the stats, only do it
+      when there really was more than one.
+    
+    - The -n option needs to clear the hash-by-pid variable.
+
+commit ae9a1c135c6de0465f711d54b56a5d600055bff9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 14:32:59 2005 +0200
+
+    [PATCH] blkparse: oops, missed removing a hash debug statement
+
+commit b5855279f28b6f8add041f5bd27e1214e26eb152
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 14:30:12 2005 +0200
+
+    [PATCH] TODO: add entry about fixing show_entries_rb() OOO logic
+
+commit bf0720afa8e5f5e2a2bb87abc0b015f35beadef3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 14:26:24 2005 +0200
+
+    [PATCH] blkparse: Add option to hash process by name
+    
+    For some traces, you really don't want to see thousands of cc1
+    processes in the stats, you want to collect the stats by name
+    instead. This adds the -n option to blkparse, enabling that.
+    
+    Switched to Jenkins hash at the same time, as it allows for
+    easy hash-by-u32 or hash-by-name as we see fit.
+
+commit 0583b6a25eaa259bf9ade5746452473464814f6e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 13:12:33 2005 +0200
+
+    [PATCH] blkparse: more sequence fixes
+
+commit e35569461a65bab6a78f20dc9c3ec9ef6f421414
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 12:26:29 2005 +0200
+
+    [PATCH] blkparse: improve skipping and genesis_time lookup
+
+commit 768277cc7274c608c35b7630973d2ca4e6657101
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 11:51:58 2005 +0200
+
+    [PATCH] blkparse: hardcode the default formats instead of parsing them
+    
+    It takes a lot of time to manually parse each individual trace,
+    and there's really no point in doing that work if the user did
+    not specificy a custom format. We now only parse the given custom
+    formats.
+    
+    Without any custom formats (eg the default), parsing a trace of
+    1.3 million entries now takes 4.3 seconds where it took 11.25 before.
+
+commit a649216c3028939192da8584e847faaa2478843c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 26 10:50:04 2005 +0200
+
+    [PATCH] blkparse: force dump of remaining rb entries on reading done
+    
+    Otherwise we may not display a significant chunk of entries.
+
+commit 407ab742c5c8e3b90b12d5ba45361bef4b06d2a0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Sep 25 14:31:24 2005 +0200
+
+    [PATCH] kernel: put back old syncronization
+    
+    It's actually the best - keep the trace on the stack, so multiple
+    invocations from the same CPU (ie from process and irq context at
+    the same time) get their own 't', and keep the local irq disable
+    to prevent interleaving of trace and PDU with other contexts.
+
+commit 71d5d4c9156c5946e76fe9909b234e9da64a8341
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sun Sep 25 07:37:11 2005 +0200
+
+    [PATCH] blkparse: split format parsing into seperate file
+
+commit 6f7de8cd76bec1f90ec2dced6aaed583841dc954
+Author: Jens Axboe <axboe@nelson>
+Date:   Sat Sep 24 21:54:44 2005 +0200
+
+    Revert "[PATCH] kernel: kill irq save/restore"
+    
+    This reverts 68bf440bf36d239ff3cb27b34b95ea7911c7c5a6 commit.
+
+commit 68bf440bf36d239ff3cb27b34b95ea7911c7c5a6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 17:24:04 2005 +0200
+
+    [PATCH] kernel: kill irq save/restore
+    
+    It should not be needed anymore, the writes a per-CPU and the
+    get_cpu()/put_cpu() will prevent preemption.
+
+commit 7f177fe713bc0128fdea68e221c0ea468caca1b5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 17:21:11 2005 +0200
+
+    [PATCH] kernel: avoid trace corruption on SMP
+    
+    Maintain a static trace structure per-CPU.
+
+commit be925321a07fb9dca627dd3c1a341aeab874d2e8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 16:54:56 2005 +0200
+
+    [PATCH] blkparse: sequence fixes
+    
+    Only set last sequence _after_ a potential break of the loop.
+    And remember to set last_allowed_time for stdin reads as well.
+
+commit 287fa3d6da77852d5c271136c1a70c77494a329a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 16:45:51 2005 +0200
+
+    [PATCH] blkparse: fix sorting of file events regardless of batch size
+    
+    If the batch wraps, it would be possible to start displaying events
+    way into the future if parsing multiple devices.
+
+commit dcf0f7ed6b773660bd8dcc64bb3d84a9c43610bc
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 23 15:09:37 2005 +0200
+
+    Revert "[PATCH] blkparse: rbtree sort primary key should be sequence, not time"
+    
+    This reverts acba447a946b022df6a30159425309f033e46ab7 commit.
+
+commit 129aa440adee4a68dfe5468a67e636ee46642f88
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 11:46:40 2005 +0200
+
+    [PATCH] blktrace: Add option for setting sub buffer size
+    
+    Use -b to give sub buffer size in KiB, -n to give number of
+    sub buffers wanted. This affects the relayfs trace setup.
+
+commit acba447a946b022df6a30159425309f033e46ab7
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 11:39:48 2005 +0200
+
+    [PATCH] blkparse: rbtree sort primary key should be sequence, not time
+    
+    Otherwise we may lose events if the event time is a little out
+    of sync.
+
+commit add75d526cdcacc8355137fd77e249ab534064fe
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 11:12:48 2005 +0200
+
+    [PATCH] blkparse: can't return on-stack variables
+    
+    Just make it static, access is serialized to it.
+
+commit 8d99d1419830b5c48fa5a2d20ad72444e58e03ef
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 10:07:54 2005 +0200
+
+    [PATCH] README: add link to mailing list at vger
+
+commit 7a9690c0cf6a4034873d7682904e19c8b4a48b70
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 23 08:49:22 2005 +0200
+
+    [PATCH] blkparse: don't append .log to the -o given output file
+
+commit 73877e12d566b8fb233a09f8be8d26daf7578052
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 23 08:34:23 2005 +0200
+
+    [PATCH] blkparse: make the nfiles counter live inside pdi
+    
+    Gets rid of the extra malloc and is cleaner.
+
+commit 0c39425cbd4ab4166cc6f17031b932991c45ae9d
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 23 08:33:20 2005 +0200
+
+    [PATCH] blkparse: fix pointer cast warnings
+
+commit 74feaeb5f088df903256dba366399774707533e8
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Sep 22 20:06:53 2005 +0200
+
+    [PATCH] blkparse: correctly account number of files per device
+
+commit 30f6be8dddebc3d408dfbce044f2850feadf32c9
+Merge: d36421e db51e53
+Author: Jens Axboe <axboe@wiggum>
+Date:   Thu Sep 22 20:02:41 2005 +0200
+
+    Merge refs/heads/master from origin
+
+commit d36421e4cfe847a8b6e2f4f20aeeba4cb5c23918
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 20:02:30 2005 +0200
+
+    [PATCH] blkparse: more optimizations
+    
+    The sort path unification and memory cutback introduced some
+    overhead, mainly due to lots of memory allocations and frees
+    of the same structures over and over again. Add a frontend
+    cache for struct trace and blk_io_trace allocations.
+    
+    Also concatenate a lot of the string operations in fmt_select,
+    it's quite high in the profiles.
+    
+    This brings us to the same performance as the memory hog version.
+
+commit db51e5314247ea99314400757902d0acd4b8593f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 16:47:40 2005 +0200
+
+    [PATCH] kernel: export the __blk_add_trace() symbol for modules
+
+commit 5ec550f7d997f9b6a4ccb815cd2876a79dbfb0a8
+Merge: 7d747d2 368f5b3
+Author: Jens Axboe <axboe@wiggum>
+Date:   Thu Sep 22 16:43:52 2005 +0200
+
+    Merge refs/heads/master from origin
+
+commit 7d747d22bc84545a8da10a1d02ff12bd3120ce59
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 16:43:48 2005 +0200
+
+    [PATCH] blkparse: drastically reduce memory foot print
+    
+    File reads needed enough memory to hold all events from all CPUs.
+    This quickly grew to hundreds of megabytes. Bring down this number
+    by interleaving reads from the files and relying on the same
+    mechanism as the piped reads to syncronize them. This makes file reads
+    use the same path as pipes and actually removes more code than it adds.
+    For a 900,000 entry file, memory consumption here is down from ~110MiB
+    from about 1MiB to process it.
+
+commit 368f5b35ae913dabdd6f0f213127f3dcbf48625f
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 22 16:40:44 2005 +0200
+
+    Revert "[PATCH] blkparse: bad ncpus check"
+    
+    This reverts 08d83c704fbda722d3040d643665e2c029744aa7 commit.
+
+commit 08d83c704fbda722d3040d643665e2c029744aa7
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 16:15:45 2005 +0200
+
+    [PATCH] blkparse: bad ncpus check
+
+commit 1f7afa7245d0ec40eb6214c198d199e157fd9f74
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 14:29:50 2005 +0200
+
+    [PATCH] blkparse: shave 20% off the runtime
+    
+    Various optimizations and moving code around a little.
+
+commit b2a8adbf29851b7e93402bee9c65d9d34c4765f3
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 13:33:55 2005 +0200
+
+    [PATCH] Add local master repo to documentation
+    
+    Note that it is using the git daemon, not rsync.
+
+commit 52724a0ef233f639c2fc6588bbc1cc05be74a422
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 12:30:12 2005 +0200
+
+    [PATCH] Update in-program help/usage info
+
+commit 1b92824775bd32cc4614c39138dfdbb09012f703
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 12:11:08 2005 +0200
+
+    [PATCH] blkparse: Fix stopwatch
+    
+    The option should be start:end, not start:duration (at least that is
+    what I intended and what is documented). Also fix the actual dumping,
+    we need to prune earlier entries from the rb tree or we will loop
+    forever.
+
+commit 182f2fccd5aaf89200c3f784460d2689ed50d0d0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 10:56:05 2005 +0200
+
+    [PATCH] blkparse: more PC fixes
+    
+    Add size of request as well, kill space at the end of pdu dump.
+
+commit 56f2af81debbc7d2b40b44c9ecfd9e3c3cdbff2c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 10:46:06 2005 +0200
+
+    [PATCH] blkparse: fix some pc command dumping
+
+commit 93f1c611e78c56722d0229532ef71a9658e678bb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 22 10:29:10 2005 +0200
+
+    [PATCH] Add support for bounce and split operations
+
+commit 638c1923160dc8ed032616c3857362a6ca59a4ad
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 18:45:29 2005 +0200
+
+    [PATCH] README: typo
+
+commit ff3a732ca4f9e307453d247f72e922d8478baa1e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 18:38:38 2005 +0200
+
+    [PATCH] blkparse: just skip unknown events, there are not fatal
+
+commit 448342af53bf134043bc768149722014a651dac9
+Merge: b6076a9 50c3870
+Author: Jens Axboe <axboe@ipf>
+Date:   Wed Sep 21 17:36:01 2005 +0200
+
+    Merge branch 'master' of ssh://axboe@master.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace
+
+commit b6076a9b2877a16f6d59f55a70dc01ab916a59e1
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 17:35:30 2005 +0200
+
+    [PATCH] blkparse: split queue and insert into two operations
+    
+    We need this to support md/dm actions.
+
+commit 9f6486bd321973c5b8d4ba570c25d90db0d347ad
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 13:59:23 2005 +0200
+
+    [PATCH] Fix output naming, really
+    
+    It's still confusing since the manual name wont include _out like
+    the automatically generated one will. So now a trace of /dev/sda
+    will generate sda.blktrace.cpu and blkparse -i sda will catch
+    those files. Similarly, a blktrace -o sda will generate the
+    same filename.
+
+commit 06e6f286262bb5c19ba2f2b3154b6f1ad27373b2
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 13:52:52 2005 +0200
+
+    [PATCH] blkparse: fix the alphasorting
+    
+    Bad qsort size passed in and missing increment in ppis assignment.
+    Verified that it actually works now :-)
+
+commit 50c3870259d1a95ec0e8b2d2bad47062d1def144
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 11:57:25 2005 +0200
+
+    [PATCH] blkparse: missing free of ppis
+    
+    Doesn't really matter since we exit after this, but...
+
+commit ce8b6b4ff6319927b016da515112358c4d239573
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 11:46:51 2005 +0200
+
+    [PATCH] blkparse: include pid in stat output
+    
+    Avoids name conflict with threads.
+
+commit 886ecf0ec096ec2acfe502a68e9bd48152f12268
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 21 11:45:39 2005 +0200
+
+    [PATCH] blkparse: sort the processes by name in stat output
+
+commit 428683dbdc487ef5e023b1f2420a4ad80c48db3e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 20 14:41:37 2005 +0200
+
+    [PATCH] Change output/input file expectations
+    
+    I think it's a little confusing right now with the naming, giving
+    -o foo to blktrace results in foo_dev_out.cpu files. Change this
+    to instead generate foo.cpu files, if the option is given.
+
+commit 3752a4331642e035c3ddec665eee84def5a4645e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 20 09:43:49 2005 +0200
+
+    [PATCH] blktrace: fix exit
+    
+    get_data() workers should return failure on is_done(), otherwise
+    extract() will attempt to verify a bad trace.
+
+commit ab197ca71ef9258ab8b1daa46c4602f7bee1add0
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Tue Sep 20 09:34:45 2005 +0200
+
+    [PATCH] blkparse: Add format specifiers and format field identifiers
+    
+    This allows the user to completely customize the output format.
+
+commit 8a43bac53a5280f8517644571983d4e367b1a15a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 20 09:13:34 2005 +0200
+
+    [PATCH] blktrace: prepare for mmap usage again
+    
+    It isn't enabled right now, we need a proper consumed/produced
+    notification model to signal availability of data. poll() doesn't
+    work well enough, since it only works on a sub-buffer granularity.
+
+commit a3983763165b2c002a6233212b8ab24c1964535b
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 20 09:12:34 2005 +0200
+
+    [PATCH] blkparse: account skips for file reads as well
+
+commit 0aa8a62d63360d87de8c4402fb1e33d1b3b07985
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 13:59:30 2005 +0200
+
+    [PATCH] blkparse: allow a few more skips
+
+commit c57451b815f8fd534a001f3140a0f52b644b06c6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 13:46:19 2005 +0200
+
+    [PATCH] btrace: need space between options
+
+commit f1327cc578a68df993b9ecf3d29b684c996f7b6a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 13:34:56 2005 +0200
+
+    [PATCH] blkparse: more file breakage
+    
+    If we have skipped entries in a file, don't wait around for more entries.
+
+commit e8741a4a92c233788d342686f63b8a87496d5bfb
+Author: Jens Axboe <axboe@nelson>
+Date:   Mon Sep 19 13:07:29 2005 +0200
+
+    [PATCH] blkparse: actually include blkparse diff
+    
+    Forgot to update the cache for the file breakage patch
+
+commit b141f9bb04aa54cdf0cdc84bd0a2be61474febfa
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 12:39:22 2005 +0200
+
+    [PATCH] blkparse: Fixup breakage in file reads
+    
+    The pipe fixed broke file reads:
+    
+    	- Don't kill individual entries in show_entries_rb(),
+    	  since it's a big chunk on file reads
+    
+    	- Need to "lookup" pdi, in case it was resized.
+
+commit 38749f2cc89072ebaddfd2e822d1cf87baa49bfa
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 12:25:14 2005 +0200
+
+    [PATCH] blkparse: reinstate __find_track() failures
+    
+    It's informational and can help find bugs.
+
+commit a01516dedb2ef69c01827c3e1fd8f13ed9247ce6
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 12:22:57 2005 +0200
+
+    [PATCH] blkparse: fix frontmerge tracking
+    
+    Need to lookup by sector + size and remember that sectors are shifted
+    9, not 10.
+
+commit cb2a1a62a595c9bdb238b8a00fa1686da2b5cebe
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 19 12:14:18 2005 +0200
+
+    [PATCH] blkparse: better sorting over a pipe
+    
+    It's quite easy to skip events when reading on an SMP system over
+    a pipe, since the events are per-CPU. Place incoming events in
+    a staging area and back off displaying traces if we detect skipped
+    events.
+
+commit 38968a72987757d3d17305f1dee804a90c793c4f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Sat Sep 17 20:48:56 2005 +0200
+
+    [PATCH] Add TODO of action items before 1.0 release
+
+commit 592166cadbae26ee1f2823138c88efe218c26d8f
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 16 15:25:05 2005 +0200
+
+    [PATCH] blkparse: don't print an error on failure to find request
+    
+    This can happen if we lose or have out-of-order events when
+    passing the data through a pipe.
+
+commit 06639b2732e9294975e20ac7cc74a5f9266a0595
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 16 14:08:49 2005 +0200
+
+    [PATCH] blkparse: include plugging in stats
+
+commit 07a55d6c7f59687ad0cd7239f93eb3867156eac4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 16 13:31:35 2005 +0200
+
+    [PATCH] Makefile: make sure to keep CFLAGS for link
+
+commit 3639a11e5e8bbe00662076a3d5161c26621b4947
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 16 10:10:50 2005 +0200
+
+    [PATCH] Improve unplug logging
+    
+    Extend it to capture whether this was an io based unplug (eg someone
+    doing a wait_on_page() or similar), or of it was a timeout based event).
+    The logging code also forget to turn the unplug payload into on-wire
+    big endian and the parsing pdu offset was wrong.
+
+commit 6d1b96577170e2dd26493a58b430d93a06e0fcf9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 15 18:03:41 2005 +0200
+
+    [PATCH] README: update to say it needs 2.6.14-rc1 or newer
+
+commit dfe34da1831c2e30b49046ba745aaf58f0db2c91
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 15 15:09:49 2005 +0200
+
+    [PATCH] blkparse: add log_action()
+    
+    For events where sectors and length don't really apply (eg plugging)
+
+commit 67e14fdc08ebb58b66824949c2d20cc1c651801a
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 15 15:07:30 2005 +0200
+
+    [PATCH] blkparse: improve unplug logging
+    
+    Add the queued number of requests count as the payload data.
+
+commit 88b1a526dde324f2d73cfb286af993eb15b2483e
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 15 10:26:20 2005 +0200
+
+    [PATCH] blkparse: Add support for the plug/unplug events
+
+commit 5feb563a9022cff6f1b8930601acbe3649e0c4e7
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 15 10:25:48 2005 +0200
+
+    [PATCH] kernel: Update to 2.6.14-rc1-git
+    
+    Includes functional changes as well:
+    
+    - Move the BLK_TA_QUEUE trace to where it belongs, in __elv_add_request(). This
+      will catch internal queueing of drivers as well.
+    
+    - Add tracing of plug and unplug events.
+
+commit e3e74029e507ca489308137c8a32dd02c77295d4
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Thu Sep 15 09:31:12 2005 +0200
+
+    [PATCH] blktrace: better check for mounted relayfs
+    
+    Don't just check for the presence of the directory, also check whether
+    relayfs really is mounted there.
+
+commit 46e6968bd3371eddf19d4392c270ff5ea4cf5f3f
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Thu Sep 15 09:29:24 2005 +0200
+
+    [PATCH] blkparse: add stopwatch functionality
+    
+    Like the blktrace -w option, but allow for defining an interval as well.
+
+commit ece238a66a0fa45b8e12c487a0b806204baab2bb
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Wed Sep 14 19:32:27 2005 +0200
+
+    [PATCH] blktrace: add stopwatch functionality
+    
+    Enables you to stop the trace after a defined period has passed.
+
+commit 1e1c60f1486f9301d8065a21d1828a677143d2be
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Wed Sep 14 19:30:49 2005 +0200
+
+    [PATCH] btrace: make the output easily parsably by default
+    
+    Drop CPU/device summary unless specifically requested.
+
+commit 1be606ce18a982e227148023f0b84c5c1806df3b
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Wed Sep 14 19:30:14 2005 +0200
+
+    [PATCH] Add btrace to Makefile
+
+commit 244ad71db83599dedee8f684f0facef4a13c5630
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Wed Sep 14 19:29:40 2005 +0200
+
+    [PATCH] Add btrace script
+    
+    Using blktrace and blkparse in the "standard" piped setup is a little
+    cumbersome and not very intuitive, so add a script to do this automatically.
+    This is what users would expect.
+
+commit e7c9f3ffe9833eae21b2601d1cecb2e5d5c7f35f
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Mon Sep 12 10:06:59 2005 +0200
+
+    [PATCH] Add support for tracing multiple devices
+    
+    This bumps the protocol number to 0x05, as device info was added to the
+    trace structure.
+
+commit 916b5501e4f8a38f0c2f23a6fcc1c1407f8ed532
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Mon Sep 12 09:21:00 2005 +0200
+
+    [PATCH] blkparse: Fix mistaken double rb lookup in find_track()
+
+commit 32fb90fe444885af9fbb73ae96ccd222c0e814bf
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 21:10:58 2005 +0200
+
+    [PATCH] README: document the -t option
+
+commit 51128a28b99cef8d8b830dc36d9284f9bb85e0cf
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 20:13:55 2005 +0200
+
+    [PATCH] blkparse: move magic check a little earlier in stdin read
+    
+    Otherwise we don't know if ->pdu_len and other fields are truly valid.
+
+commit c80c18a715f3dc08b544f1e44149cdb5bbd496cc
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 17:07:17 2005 +0200
+
+    [PATCH] blkparse: fix quit on stdin reads
+    
+    If the blocking read returns 0, we really are done. So safely exit.
+
+commit b9d40d6fec97474cee9aa32cb484b9fd39765e35
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 16:28:14 2005 +0200
+
+    [PATCH] blkparse: fixup stats
+    
+    Pretty up the output a little, split into read/write.
+
+commit 50adc0ba13d62e5390385665fad94bf9a377a96c
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 16:07:39 2005 +0200
+
+    [PATCH] blkparse: add per-process stats for longest waits
+
+commit 95c1501338b5db7492657c6fcc7b1084885ec18a
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 15:56:02 2005 +0200
+
+    [PATCH] blkparse: Add request allocation -> queue time
+
+commit 555d3a315392ed38e4a2ed94d0bf3a658628a749
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 15:47:26 2005 +0200
+
+    [PATCH] blkparse: change formatting of output a little
+
+commit 0a94916b85d509cbad4f706a0501f05e046412e9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 13:36:42 2005 +0200
+
+    [PATCH] blkparse: optimize the read_sort_events() memory allocations
+    
+    It's a little silly to malloc/free the buffer all the time, more practical
+    to let it settle on its own.
+
+commit c5404f89ca9217dd0824fd9f7824b60128bfc945
+Merge: 2e3e8de b570945
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 15:25:47 2005 +0200
+
+    Merge refs/heads/master from origin
+
+commit 2e3e8ded95e3b869e33397b11aec30df1dc186fb
+Author: Jens Axboe <axboe@ipf>
+Date:   Fri Sep 9 15:24:13 2005 +0200
+
+    [PATCH] blkparse: Display io queue/completion stats
+    
+    Display the time a request spent in the io scheduler and the time it took
+    that given request to be completed by the drive/driver.
+
+commit b5709454fe8d6d979f891353462665c8ebf227f5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 12:30:33 2005 +0200
+
+    [PATCH] blkparse: fix leak in stdin read and sort
+
+commit 7997c5b00f5957c589e9c48ad940ccfc9cae3a74
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 12:04:17 2005 +0200
+
+    [PATCH] blkparse: add framework for tracking individual ios
+
+commit a66877e6348a381b143c5ac931e44b2289d32666
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 09:25:31 2005 +0200
+
+    [PATCH] blkparse: change output buffering
+    
+    If logging to stdout, only use a per-line buffer instead of fully buffered.
+
+commit 984c63b782195c6d8994569dfb9821a878ed80ca
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 9 09:22:52 2005 +0200
+
+    [PATCH] blktrace: Fix whitespace in log_merge()
+
+commit 66efebf8c83faf70cdef59da095dca019309af1d
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 9 09:22:13 2005 +0200
+
+    [PATCH] blktrace: remove unneeded strdup
+
+commit 11e510683253056b4ce94e84bdd9b0e0472c4fc9
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 9 09:20:26 2005 +0200
+
+    [PATCH] Fix dispatch reporting
+
+commit f8fd8985b0d2434eee5cc32471e9b5e533d19821
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 9 09:19:26 2005 +0200
+
+    [PATCH] Fix time typo, it's in nanoseconds
+
+commit 16ef714eb7c8f14abe5706e24d1492f70c610044
+Author: Jens Axboe <axboe@suse.de>
+Date:   Fri Sep 9 09:18:49 2005 +0200
+
+    [PATCH] Use __WORDSIZE in hash
+    
+    Originally fron Nathan, improved to remove 'bpl' as well.
+
+commit 152f6476e62fa4f754fb8d60fe86a254fa3675cb
+Author: Jens Axboe <axboe@suse.de>
+Date:   Thu Sep 8 20:15:18 2005 +0200
+
+    [PATCH] blkparse: Add per-process stats and fix output
+    
+    Add the option (-s) to display per-process read/write stats as well as
+    the per-processor and total output. At the same time, fix the output so
+    it's a single file instead of per-processor (doesn't make sense here) and
+    put everything in the output file given with -o. If no output file is given,
+    stdout is used.
+
+commit 6432fd983c61b4f2992daa8d8830ba6a181d7aa4
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 8 11:34:26 2005 +0200
+
+    [PATCH] Update README with info about the snapshots
+
+commit 0e3ae6cefeae1c5ba8043c623f0901ab49fb6ebe
+Merge: 76c5a9c 9267405
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 8 08:37:57 2005 +0200
+
+    Merge refs/heads/master from origin
+
+commit 76c5a9c3ebaa11a8a9d408e9b0da878c7feaee6d
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 8 08:37:33 2005 +0200
+
+    [PATCH] Add patch for Linus' kernel
+    
+    relayfs has been merged now, so it's easier to provide a mainline patch as well.
+
+commit 9267405a1bb3b3d8da17d8cdb37dd6c74afcf0b5
+Author: Jens Axboe <axboe@linux>
+Date:   Wed Sep 7 16:17:07 2005 +0200
+
+    [PATCH] Fix unaligned access on pthread_join(..., &int)
+
+commit 2ff323b0972c257e1a3e384c6445f8bc007a963c
+Author: Jens Axboe <axboe@suse.de>
+Date:   Wed Sep 7 13:05:20 2005 +0200
+
+    [PATCH] Misc stdin fixes
+    
+    - Allow skipping in the returned stdin data, otherwise I've noticed loss
+      of as many as 'nr' events when reading from the network.
+    
+    - Use realloc() in resize_buffers()
+    
+    - Detect sort_entries() errors in stdin read
+
+commit d69db225cec28f8f03331b19b1264e7326a5ead8
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 14:52:04 2005 +0200
+
+    [PATCH] Set locale in blkparse
+    
+    Otherwise the 1000 numerator wont work.
+
+commit ebc37a0bca13f13ca8ed1f568b133a3b69889708
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 14:49:51 2005 +0200
+
+    [PATCH] Correct netcat examples
+
+commit 69e65a9e13f95201190a2d82c6fe327b708757df
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 14:46:45 2005 +0200
+
+    [PATCH] Minimize output fd lock time
+    
+    Extract both trace and payload before acquiring the output descriptor lock.
+    The writes should take very shortly thus minimizing the hold time, the read
+    may take much longer.
+
+commit 7425d456c54104620eaa7083dedfb7b3db46015b
+Author: Jens Axboe <axboe@wiggum>
+Date:   Tue Sep 6 14:10:33 2005 +0200
+
+    [PATCH] Unify error returns
+    
+    It's all a mess of dupes now anyway.
+
+commit d000992588451e1067057ab94814b9cc1671c1e9
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 09:34:28 2005 +0200
+
+    [PATCH] Update documentation
+    
+    Some of it was a little out of sync with reality. Add an example for live
+    tracing, locally as well as over the network.
+
+commit 79f19470a368c51828f02c82419509280d17c6d0
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 09:09:52 2005 +0200
+
+    [PATCH] Add option to limit rb batching for live traces
+    
+    Right now, blkparse keeps going until there's a delay in events read.
+    Add an option to cap the number of pending entries (-b) and default to
+    1024 events.
+
+commit e67265ea59442eacc5d1a09e359e07013e489f5e
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 09:01:30 2005 +0200
+
+    [PATCH] Missed the ->device in endianness conversions
+
+commit 7b41ec18f814b739107cf7cc3f879b44b94129ab
+Author: Jens Axboe <axboe@nelson>
+Date:   Tue Sep 6 09:00:17 2005 +0200
+
+    [PATCH] Update kernel patch to revision 4 protocol
+
+commit b704c63702e67ec266b862b55b71c6f7baad91e4
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 08:57:57 2005 +0200
+
+    [PATCH] Backout the ->device change from revision 4
+
+commit ee1f4158fd56744c17985c7d7dbfcb37f50778e9
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:53:36 2005 +0200
+
+    [PATCH] allow devices as arguments (as well as via -d option)
+
+commit 0a6b8fc4d6b5225ee5824ddb15b73d0cf04b9164
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:52:44 2005 +0200
+
+    [PATCH] Pretty up output on large SMP machines
+
+commit 35f85d4d877995298d0747361fcf1124a160d79b
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:51:55 2005 +0200
+
+    [PATCH] Missing colon in some output
+
+commit c499bf388206580d6411010d3d45dafff605f115
+Author: Jens Axboe <axboe@suse.de>
+Date:   Tue Sep 6 08:51:15 2005 +0200
+
+    [PATCH] Fix per_cpu_info->cpu setting
+    
+    Not all traces are from CPU 0! Noticed by Nathan.
+
+commit 2955af9da365042678a1afcb9dba97ab4fcec405
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:49:15 2005 +0200
+
+    [PATCH] Dump command process names, they are available now
+
+commit 654aaa528674a4e849337a89b820027a67d74bfb
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:48:11 2005 +0200
+
+    [PATCH] Bump ->cpu to 32-bits for alignment and add process name
+
+commit 72ca88010f8be84b601024d5ab1a07a218cdbb0a
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:46:31 2005 +0200
+
+    [PATCH] Fix some wierd pthread/atexit interactions
+
+commit 76718bcd6dec79f9a7c7454b927a190a11529f75
+Author: Jens Axboe <axboe@wiggum>
+Date:   Tue Sep 6 08:25:57 2005 +0200
+
+    [PATCH] Forgot to update last file on checkin
+
+commit 8b8f203acdcd1e2769b672eae78762043b4aba30
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:23:03 2005 +0200
+
+    [PATHC] Plug some more stoptrace holes
+    
+    I came across some more places where we can bail out of blktrace while
+    accidentally leaving the bdev trace running... this patch fixes them.
+
+commit a718bd37aff8b04363a1b044185a29d66fb63a1c
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:21:43 2005 +0200
+
+    [PATCH] Make per_cpu_info[] dynamically allocated and extendable
+
+commit fd613fc20b171bc9adc8f130abbed9c1199259f9
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Tue Sep 6 08:05:07 2005 +0200
+
+    [PATCH] Missing ->cpu endianness conversion
+
+commit 1f79c4a01e9bd3261529c83bc41e86e40c4321e5
+Author: Jens Axboe <axboe@suse.de>
+Date:   Mon Sep 5 19:50:29 2005 +0200
+
+    [PATCH] Misc error handling and style fixes
+
+commit 33b560191981ef2669d6a5d36a870c29ad23fbc4
+Author: Jens Axboe <axboe@wiggum>
+Date:   Mon Sep 5 16:35:10 2005 +0200
+
+    [PATCH] Move open of logging file
+    
+    It should not be in the sorting, move it to the dumping place instead.
+
+commit bc39777ce25bb0c8769777deb074dc37696af5e8
+Author: Jens Axboe <axboe@wiggum>
+Date:   Mon Sep 5 16:01:46 2005 +0200
+
+    [PATCH] Add support for killing running trace
+    
+    Sometimes if the program dies, it's really annoying to not be able to
+    terminate a running trace. Add option -k to manually kill such a trace.
+
+commit 412819cec12849b337be4dd4601fd1222c3196ab
+Author: Jens Axboe <axboe@wiggum>
+Date:   Mon Sep 5 15:51:33 2005 +0200
+
+    [PATCH] Read and sort events in chunks from stdin
+    
+    This should improve performance of the piped live tracing and at the same
+    time add support for sorting of incoming events at least in batches.
+
+commit 75da3c6af9c3445e4929902310546c7083415bb7
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Mon Sep 5 13:12:48 2005 +0200
+
+    [PATCH] Better strcmp fix
+    
+    I looked at that strcmp memleak again for some reason, and wondered why not
+    use strcasecmp instead to further simplify things?
+
+commit d5396421d8e54ccdd14f9e35c4bfd50864c61397
+Author: Jens Axboe <axboe@wiggum>
+Date:   Mon Sep 5 13:09:45 2005 +0200
+
+    [PATCH] Support for live tracing
+    
+    This patch adds support for doing live traces again, by allowing pipe of
+    data from blktrace to blkparse. A structural change was needed in blk_io_trace
+    to pass the CPU number info directly instead of inferring it from the filename.
+    
+    To parse realtime:
+    
+    $ blktrace -d /dev/xxx -o - | blkparse -i -
+
+commit 5c86134eb191e261cc01a4dfdfb06290b6c50488
+Author: Jens Axboe <axboe@apu.(none)>
+Date:   Sun Sep 4 17:37:06 2005 +0200
+
+    [PATCH] Style fixups
+    
+    Alan seems to be fond of replacing tabs with space.s
+
+commit 3a9995b97e67c406721d6b943ce216afa6610729
+Author: Jens Axboe <axboe@apu.(none)>
+Date:   Sun Sep 4 17:31:23 2005 +0200
+
+    [PATCH] Stop threads before stopping trace
+    
+    Otherwise the BLKSTOPTRACE will be called with the relayfs fd still being
+    open, and the <dev> directory wont be removed then causing subsequent
+    traces to fail.
+
+commit befe855d5f220b506a78049cb30ed54273262458
+Author: Jens Axboe <axboe@linux>
+Date:   Fri Sep 2 14:26:24 2005 +0200
+
+    [PATCH] Update kernel patch to match new relayfs layout
+    
+    Lay out the relayfs files a little nicer, so it's not so confusing to look
+    at.
+    
+    Original patch from Nathan Scott <nathans@sgi.com>
+
+commit 707b09141e49ae9de29b5358f6f5a0fd09ce79af
+Author: Jens Axboe <axboe@linux>
+Date:   Fri Sep 2 13:47:23 2005 +0200
+
+    [PATCH] Fix the stop trace logic to not attempt to stop it twice
+
+commit b9d4294e6519af66eda35fc438cd94db96353190
+Author: Jens Axboe <axboe@linux>
+Date:   Fri Sep 2 13:17:03 2005 +0200
+
+    [PATCH] blktrace fixes
+    
+    - Threads don't close the trace fd
+    - Switch to newer /relay/block/<dev>/trace<cpu> naming
+
+commit 7c516d8829f3ce02d6f698dd17bb25ba4f78ef36
+Author: Jens Axboe <axboe@linux>
+Date:   Fri Sep 2 10:57:07 2005 +0200
+
+    [PATCH] Kill silly changelog, it's too bothersome
+
+commit 9cc38a45c6dc4913c897b145be03d68211aeed15
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 2 10:56:20 2005 +0200
+
+    [PATCH] Fix usage of uninitialized array in pdu extraction
+
+commit 56bdefbb1021498ee04bcb9d3c0bda0367175a73
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 2 10:54:37 2005 +0200
+
+    [PATCH] Fix memory leak in blktrace arg parsing
+
+commit 18f9450857ab87ff38efecf2bb805661cf33a9a2
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 2 10:52:53 2005 +0200
+
+    [PATCH] blktrace-fix-double-close
+    
+    stop_trace() has already closed the devfd, don't do so again.
+
+commit 5270dddd203006f3bb0be7c0f1949a16758dce9a
+Author: Jens Axboe <axboe@linux>
+Date:   Fri Sep 2 10:51:59 2005 +0200
+
+    [PATCH] Remember to close devfd if start_trace() fails
+
+commit 9eb5b5675b45cc4f76d51e6fafe3b83be0e09dc5
+Author: Nathan Scott <nathans@sgi.com>
+Date:   Fri Sep 2 10:50:00 2005 +0200
+
+    [PATCH] Make relayfs mount path an option
+    
+    Provide an option allowing blktrace to find relayfs at mount
+    points other than /relay (keeps /relay as the default though,
+    of course).
+
+commit bf4df00ff8c3132c594416cd588441c7ba4fc9c4
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 1 17:25:00 2005 +0200
+
+    [PATCH] Move BLK_TA_QUEUE trace
+    
+    It makes more sense to do it after request allocation.
+
+commit 830fd65c783b5548d1ef736b1a2c0640a281a67d
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 1 16:43:36 2005 +0200
+
+    [PATCH] Always make sure we stop the trace properly
+
+commit 4fa2da54f4012c75309508b1e596e8029ba14c94
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 1 16:43:04 2005 +0200
+
+    [PATCH] Fix oops on starting trace on stacked devices (such as md, dm, etc)
+
+commit cfab07eb044128dac7da8ada10c5fb6b94cbb357
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Thu Sep 1 15:44:54 2005 +0200
+
+    [PATCH] Timestamp updates
+    
+    - Changed output format to seconds.nanoseconds (makes it easier on the eyes)
+    - Made a single time stamp reference point (instead of a per-cpu reference
+      point)
+
+commit 1c066f23e412a67f8f958447b80eb83f75557bdb
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 1 15:43:12 2005 +0200
+
+    [PATCH] Sync inter processor time
+    
+    Calibrate the time offsets of each processor in an SMP system on boot time
+    to attempt to keep the timestamps offsets in check.
+
+commit 56c7d54ddfb807b769bf42d5b6ba4d34283f6cc0
+Author: Jens Axboe <axboe@nelson>
+Date:   Thu Sep 1 13:11:25 2005 +0200
+
+    [PATCH] Update kernel patch to 2.6.13-mm1
+
+commit d956a2cd0923706f6f9965156d48e6143a54d6e7
+Author: Jens Axboe <axboe@linux>
+Date:   Wed Aug 31 09:41:36 2005 +0200
+
+    [PATCH] Add license and copyright information
+
+commit d39c04ca13e3bbc5e47107a8428e348414a65b5c
+Author: Alan D. Brunelle <Alan.Brunelle@hp.com>
+Date:   Wed Aug 31 08:49:05 2005 +0200
+
+    [PATCH] Add argument parsing for blktrace
+    
+    This patch adds the option of specifying the trace mask for blktrace, so you
+    can register an interest in only certain events.
+
+commit 18ada3d4deee8a58e56d3b8ee1dbec67815b77d8
+Author: Jens Axboe <axboe@nelson>
+Date:   Mon Aug 29 15:49:05 2005 +0200
+
+    [PATCH] blktrace: fix payload tracing
+    
+    Endianness conversion was done before reading ->pdu_len, thus screwing it
+    up and hanging forever waiting for data.
+
+commit afd2d7adffbd1b556fde00759bc48163bb0f2170
+Author: root <root@ipf.suse.de>
+Date:   Mon Aug 29 14:45:44 2005 +0200
+
+    [PATCH] stats update
+    
+    Split stats into per-cpu and don't display empty stats
+
+commit 5c017e4b313913de627da5b13977b26c11ec3261
+Author: Jens Axboe <axboe@nelson>
+Date:   Mon Aug 29 14:00:50 2005 +0200
+
+    [PATCH] Split output stats into per-cpu
+
+commit df0fae6de00f7dfef7b6c840e0ab42e18be03cad
+Author: Jens Axboe <axboe@nelson>
+Date:   Mon Aug 29 13:27:35 2005 +0200
+
+    [PATCH] blkparse: Don't clear rb_root in sort_entries()
+    
+    It will override the entries already sorted from the previous CPUs.
+
+commit 6fe4709e97f29162e075f029a2ce6a7c4a444ef1
+Author: Jens Axboe <axboe@apu.(none)>
+Date:   Mon Aug 29 09:45:41 2005 +0200
+
+    [PATCH] Always store trace data in big endian format
+
+commit 66fa7233b208860dae3c4ce7be1f5c1e93078720
+Author: Jens Axboe <axboe@wiggum>
+Date:   Mon Aug 29 10:14:11 2005 +0200
+
+    [PATCH] Don't overwrite magic in trace
+    
+    Leave the _dat file traces completely intact, get the CPU number from the
+    file in blkparse instead. Without this change, it's impossible for other
+    users to verify the sanity and version of a trace.
+
+commit 87b7277795788360348776ac0495f88fdc44fd92
+Author: Jens Axboe <axboe@wiggum>
+Date:   Mon Aug 29 08:45:19 2005 +0200
+
+    	- Improved error handling
+    	- Remove _dat files, include the payload in _out
+    	- Support for payload > 64 bytes
+    	- Add install target
+    	- Fix RELAYFS Kconfig selection (kernel patch)
+
+commit 9a5f57019f49e6a3f104c129614082c4255d51b3
+Author: Jens Axboe <axboe@nelson>
+Date:   Sat Aug 27 14:17:09 2005 +0200
+
+    Changelog
+
+commit 3aabcd8964b960fa68f56980a4b9467efe32792e
+Author: Jens Axboe <axboe@nelson>
+Date:   Sat Aug 27 14:16:56 2005 +0200
+
+    Various cleanups and killing unused variables
+
+commit 8fc0abbc65934154363812eb8f7b400a73441905
+Author: Jens Axboe <axboe@wiggum>
+Date:   Sat Aug 27 09:38:00 2005 +0200
+
+    Fixed the sorting and parsing of traces with payloads
+
+commit ba46ec782eb2db0786346f169cdcaf9cab118ece
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 14:38:26 2005 +0200
+
+    blkparse doesn't take a NR_CPU argument anymore
+
+commit 5a2341c026fd757fe5b298638689aa955379aca4
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 14:21:40 2005 +0200
+
+    Add the required relayfs-read update patch as well
+
+commit c1bd9d09a97e8937ed0068ce2f75902cf882907e
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 14:19:57 2005 +0200
+
+    Update README and add kernel patch
+
+commit 9c2cdf16ca3f904e7e1b99d77486af2d6d74d7ac
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 14:13:28 2005 +0200
+
+    Fix typo in last fix
+
+commit 96b34e39a6909bf2df21fe3dd28d8cdcfed21578
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 14:12:09 2005 +0200
+
+    sprintf -> snprintf
+
+commit fd92da249ee5a20144e20f1f08fb0df70164951d
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 14:06:49 2005 +0200
+
+    Increase MAX_CPUS to 512. Use the full magic number for cpu number, not
+    just the bottom 8 bits.
+
+commit d0ca268b05b1f0135e6b0d39da6ef8101fe686d6
+Author: Jens Axboe <axboe@wiggum>
+Date:   Fri Aug 26 13:49:39 2005 +0200
+
+    Initial commit
