[PATCH] Fix back descriptors
authorTom Zanussi <zanussi@us.ibm.com>
Sat, 30 Dec 2006 19:13:40 +0000 (20:13 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Sat, 30 Dec 2006 19:13:40 +0000 (20:13 +0100)
The 'B' is really a bounce, not a backmerge. Fixup other merge
descriptors as well.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
blkparse_fmt.c
doc/blktrace.tex

index 7830738566c961f97839de04fda91d4b2aea4185..b309b4b39ff0b82a44cee58fde4aa1be1197b436 100644 (file)
@@ -335,7 +335,7 @@ static void process_default(char *act, struct per_cpu_info *pci,
        case 'D':       /* Issue */
        case 'I':       /* Insert */
        case 'Q':       /* Queue */
-       case 'W':       /* Bounce */
+       case 'B':       /* Bounce */
                if (t->action & BLK_TC_ACT(BLK_TC_PC)) {
                        char *p;
                        fprintf(ofp, "%u ", t->bytes);
@@ -356,9 +356,8 @@ static void process_default(char *act, struct per_cpu_info *pci,
                }
                break;
 
-       case 'B':       /* Back merge */
+       case 'M':       /* Back merge */
        case 'F':       /* Front merge */
-       case 'M':       /* Front or back merge */
        case 'G':       /* Get request */
        case 'S':       /* Sleep request */
                fprintf(ofp, "%llu + %u [%s]\n", (unsigned long long) t->sector,
index 27b13c28d6d7b7548b48f93ca4fd6c24460845f4..72f7e2eefc259e0e1de4431ca3ff9936d449623f 100644 (file)
@@ -527,22 +527,20 @@ Short              & Long                       & Description \\ \hline\hline
   \item[Q -- queued] This notes intent to queue io at the given location.
   No real requests exists yet.
 
-  \item[W -- bounced] The data pages attached to this \emph{bio} are
+  \item[B -- bounced] The data pages attached to this \emph{bio} are
   not reachable by the hardware and must be bounced to a lower memory
   location. This causes a big slowdown in io performance, since the data
   must be copied to/from kernel buffers. Usually this can be fixed with
   using better hardware - either a better io controller, or a platform
   with an IOMMU.
 
-  \item[B -- back merge] A previously inserted request exists that ends
+  \item[M -- back merge] A previously inserted request exists that ends
   on the boundary of where this io begins, so the io scheduler can merge
   them together.
 
   \item[F -- front merge] Same as the back merge, except this io ends
   where a previously inserted requests starts.
 
-  \item[M -- front or back merge] One of the above.
-
   \item[G -- get request] To send any type of request to a block device,
   a \emph{struct request} container must be allocated first.
 
@@ -625,18 +623,18 @@ The following table shows the various actions which may be output.
 \begin{tabular}{|l|l|}\hline
 Act & Description \\ \hline\hline
 A & IO was remapped to a different device \\ \hline
-B & IO back merged with request on queue \\ \hline
+B & IO bounced \\ \hline
 C & IO completion \\ \hline
 D & IO issued to driver \\ \hline
 F & IO front merged with request on queue \\ \hline
 G & Get request \\ \hline
 I & IO inserted onto request queue \\ \hline
+M & IO back merged with request on queue \\ \hline
 P & Plug request \\ \hline
 Q & IO handled by request queue code \\ \hline
 S & Sleep request \\ \hline
 T & Unplug due to timeout \\ \hline
 U & Unplug request \\ \hline
-W & IO bounced \\ \hline
 X & Split \\ \hline
 \end{tabular}
 
@@ -690,7 +688,7 @@ The default output for all event types includes this header.
   \item[D -- issued]
   \item[I -- inserted]
   \item[Q -- queued]
-  \item[W -- bounced] If a payload is present, the number of payload bytes
+  \item[B -- bounced] If a payload is present, the number of payload bytes
   is output, followed by the payload in hexadecimal between parenthesis.
 
   If no payload is present, the sector and number of blocks are presented
@@ -699,10 +697,9 @@ The default output for all event types includes this header.
   either case, it is followed by the command associated with the event
   (surrounded by square brackets).
 
-  \item[B -- back merge]
+  \item[M -- back merge]
   \item[F -- front merge]
   \item[G -- get request]
-  \item[M -- front or back merge]
   \item[S -- sleep] The starting sector and number of blocks is output
   (with an intervening plus (+) character), followed by the command
   associated with the event (surrounded by square brackets).