mirror of https://github.com/xemu-project/xemu.git
xen_disk: Switch to byte-based aio block access
Sector-based blk_aio_readv() and blk_aio_writev() should die; switch to byte-based blk_aio_preadv() and blk_aio_pwritev() instead. Signed-off-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
b5772fdde4
commit
d00000f901
|
@ -554,9 +554,8 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
|
||||||
block_acct_start(blk_get_stats(blkdev->blk), &ioreq->acct,
|
block_acct_start(blk_get_stats(blkdev->blk), &ioreq->acct,
|
||||||
ioreq->v.size, BLOCK_ACCT_READ);
|
ioreq->v.size, BLOCK_ACCT_READ);
|
||||||
ioreq->aio_inflight++;
|
ioreq->aio_inflight++;
|
||||||
blk_aio_readv(blkdev->blk, ioreq->start / BLOCK_SIZE,
|
blk_aio_preadv(blkdev->blk, ioreq->start, &ioreq->v, 0,
|
||||||
&ioreq->v, ioreq->v.size / BLOCK_SIZE,
|
qemu_aio_complete, ioreq);
|
||||||
qemu_aio_complete, ioreq);
|
|
||||||
break;
|
break;
|
||||||
case BLKIF_OP_WRITE:
|
case BLKIF_OP_WRITE:
|
||||||
case BLKIF_OP_FLUSH_DISKCACHE:
|
case BLKIF_OP_FLUSH_DISKCACHE:
|
||||||
|
@ -569,9 +568,8 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
|
||||||
ioreq->req.operation == BLKIF_OP_WRITE ?
|
ioreq->req.operation == BLKIF_OP_WRITE ?
|
||||||
BLOCK_ACCT_WRITE : BLOCK_ACCT_FLUSH);
|
BLOCK_ACCT_WRITE : BLOCK_ACCT_FLUSH);
|
||||||
ioreq->aio_inflight++;
|
ioreq->aio_inflight++;
|
||||||
blk_aio_writev(blkdev->blk, ioreq->start / BLOCK_SIZE,
|
blk_aio_pwritev(blkdev->blk, ioreq->start, &ioreq->v, 0,
|
||||||
&ioreq->v, ioreq->v.size / BLOCK_SIZE,
|
qemu_aio_complete, ioreq);
|
||||||
qemu_aio_complete, ioreq);
|
|
||||||
break;
|
break;
|
||||||
case BLKIF_OP_DISCARD:
|
case BLKIF_OP_DISCARD:
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue