virtio_blk: change to use __blk_end_request()

This patch converts virtio_blk to use __blk_end_request() directly
so that end_{queued|dequeued}_request() can be removed.
Related 'uptodate' argument is converted to 'error'.

Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
Kiyoshi Ueda 2008-10-01 10:11:20 -04:00 committed by Jens Axboe
parent 0497b345e7
commit 8316982ac0

View file

@ -47,20 +47,20 @@ static void blk_done(struct virtqueue *vq)
spin_lock_irqsave(&vblk->lock, flags);
while ((vbr = vblk->vq->vq_ops->get_buf(vblk->vq, &len)) != NULL) {
int uptodate;
int error;
switch (vbr->status) {
case VIRTIO_BLK_S_OK:
uptodate = 1;
error = 0;
break;
case VIRTIO_BLK_S_UNSUPP:
uptodate = -ENOTTY;
error = -ENOTTY;
break;
default:
uptodate = 0;
error = -EIO;
break;
}
end_dequeued_request(vbr->req, uptodate);
__blk_end_request(vbr->req, error, blk_rq_bytes(vbr->req));
list_del(&vbr->list);
mempool_free(vbr, vblk->pool);
}