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:
parent
0497b345e7
commit
8316982ac0
@ -47,20 +47,20 @@ static void blk_done(struct virtqueue *vq)
|
|||||||
|
|
||||||
spin_lock_irqsave(&vblk->lock, flags);
|
spin_lock_irqsave(&vblk->lock, flags);
|
||||||
while ((vbr = vblk->vq->vq_ops->get_buf(vblk->vq, &len)) != NULL) {
|
while ((vbr = vblk->vq->vq_ops->get_buf(vblk->vq, &len)) != NULL) {
|
||||||
int uptodate;
|
int error;
|
||||||
switch (vbr->status) {
|
switch (vbr->status) {
|
||||||
case VIRTIO_BLK_S_OK:
|
case VIRTIO_BLK_S_OK:
|
||||||
uptodate = 1;
|
error = 0;
|
||||||
break;
|
break;
|
||||||
case VIRTIO_BLK_S_UNSUPP:
|
case VIRTIO_BLK_S_UNSUPP:
|
||||||
uptodate = -ENOTTY;
|
error = -ENOTTY;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
uptodate = 0;
|
error = -EIO;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
end_dequeued_request(vbr->req, uptodate);
|
__blk_end_request(vbr->req, error, blk_rq_bytes(vbr->req));
|
||||||
list_del(&vbr->list);
|
list_del(&vbr->list);
|
||||||
mempool_free(vbr, vblk->pool);
|
mempool_free(vbr, vblk->pool);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user