[PATCH] cpqarray: fix iostat

cpqarray needs to call disk_stat_add() for iostat to work.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by Jens Axboe and committed by Linus Torvalds 1f794b60 b369c2cf

+11 -4
+11 -4
drivers/block/cpqarray.c
··· 998 */ 999 static inline void complete_command(cmdlist_t *cmd, int timeout) 1000 { 1001 int ok=1; 1002 int i, ddir; 1003 ··· 1030 pci_unmap_page(hba[cmd->ctlr]->pci_dev, cmd->req.sg[i].addr, 1031 cmd->req.sg[i].size, ddir); 1032 1033 - complete_buffers(cmd->rq->bio, ok); 1034 1035 - add_disk_randomness(cmd->rq->rq_disk); 1036 1037 - DBGPX(printk("Done with %p\n", cmd->rq);); 1038 - end_that_request_last(cmd->rq, ok ? 1 : -EIO); 1039 } 1040 1041 /*
··· 998 */ 999 static inline void complete_command(cmdlist_t *cmd, int timeout) 1000 { 1001 + struct request *rq = cmd->rq; 1002 int ok=1; 1003 int i, ddir; 1004 ··· 1029 pci_unmap_page(hba[cmd->ctlr]->pci_dev, cmd->req.sg[i].addr, 1030 cmd->req.sg[i].size, ddir); 1031 1032 + complete_buffers(rq->bio, ok); 1033 1034 + if (blk_fs_request(rq)) { 1035 + const int rw = rq_data_dir(rq); 1036 1037 + disk_stat_add(rq->rq_disk, sectors[rw], rq->nr_sectors); 1038 + } 1039 + 1040 + add_disk_randomness(rq->rq_disk); 1041 + 1042 + DBGPX(printk("Done with %p\n", rq);); 1043 + end_that_request_last(rq, ok ? 1 : -EIO); 1044 } 1045 1046 /*