scsi: missing add of padded bytes to io completion byte count
authorJens Axboe <jens.axboe@oracle.com>
Tue, 4 Mar 2008 19:22:54 +0000 (20:22 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Tue, 4 Mar 2008 19:24:05 +0000 (20:24 +0100)
Original patch from Tejun Heo <htejun@gmail.com> but should use ->extra_len
and not ->data_len, as we would then overshoot the original request size.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
drivers/scsi/scsi.c

index fecba05b4e7783da1c22402080c7ab0c6338504b..e5c6f6af876558c0b92dea602c6d2f6eed1a23a5 100644 (file)
@@ -757,7 +757,7 @@ void scsi_finish_command(struct scsi_cmnd *cmd)
                                "Notifying upper driver of completion "
                                "(result %x)\n", cmd->result));
 
-       good_bytes = scsi_bufflen(cmd);
+       good_bytes = scsi_bufflen(cmd) + cmd->request->extra_len;
         if (cmd->request->cmd_type != REQ_TYPE_BLOCK_PC) {
                drv = scsi_cmd_to_driver(cmd);
                if (drv->done)