block: Convert bdrv_aio_writev() to BdrvChild
Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Max Reitz <mreitz@redhat.com> Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
ebb7af2173
commit
0d1049c7d1
|
@ -480,7 +480,7 @@ static BlockAIOCB *blkdebug_aio_writev(BlockDriverState *bs,
|
||||||
return inject_error(bs, cb, opaque, rule);
|
return inject_error(bs, cb, opaque, rule);
|
||||||
}
|
}
|
||||||
|
|
||||||
return bdrv_aio_writev(bs->file->bs, sector_num, qiov, nb_sectors,
|
return bdrv_aio_writev(bs->file, sector_num, qiov, nb_sectors,
|
||||||
cb, opaque);
|
cb, opaque);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -262,9 +262,9 @@ static BlockAIOCB *blkverify_aio_writev(BlockDriverState *bs,
|
||||||
BlkverifyAIOCB *acb = blkverify_aio_get(bs, true, sector_num, qiov,
|
BlkverifyAIOCB *acb = blkverify_aio_get(bs, true, sector_num, qiov,
|
||||||
nb_sectors, cb, opaque);
|
nb_sectors, cb, opaque);
|
||||||
|
|
||||||
bdrv_aio_writev(s->test_file->bs, sector_num, qiov, nb_sectors,
|
bdrv_aio_writev(s->test_file, sector_num, qiov, nb_sectors,
|
||||||
blkverify_aio_cb, acb);
|
blkverify_aio_cb, acb);
|
||||||
bdrv_aio_writev(bs->file->bs, sector_num, qiov, nb_sectors,
|
bdrv_aio_writev(bs->file, sector_num, qiov, nb_sectors,
|
||||||
blkverify_aio_cb, acb);
|
blkverify_aio_cb, acb);
|
||||||
return &acb->common;
|
return &acb->common;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1972,13 +1972,13 @@ BlockAIOCB *bdrv_aio_readv(BdrvChild *child, int64_t sector_num,
|
||||||
cb, opaque, false);
|
cb, opaque, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BlockAIOCB *bdrv_aio_writev(BlockDriverState *bs, int64_t sector_num,
|
BlockAIOCB *bdrv_aio_writev(BdrvChild *child, int64_t sector_num,
|
||||||
QEMUIOVector *qiov, int nb_sectors,
|
QEMUIOVector *qiov, int nb_sectors,
|
||||||
BlockCompletionFunc *cb, void *opaque)
|
BlockCompletionFunc *cb, void *opaque)
|
||||||
{
|
{
|
||||||
trace_bdrv_aio_writev(bs, sector_num, nb_sectors, opaque);
|
trace_bdrv_aio_writev(child->bs, sector_num, nb_sectors, opaque);
|
||||||
|
|
||||||
return bdrv_co_aio_rw_vector(bs, sector_num, qiov, nb_sectors, 0,
|
return bdrv_co_aio_rw_vector(child->bs, sector_num, qiov, nb_sectors, 0,
|
||||||
cb, opaque, true);
|
cb, opaque, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -154,7 +154,7 @@ static void qed_write_table(BDRVQEDState *s, uint64_t offset, QEDTable *table,
|
||||||
/* Adjust for offset into table */
|
/* Adjust for offset into table */
|
||||||
offset += start * sizeof(uint64_t);
|
offset += start * sizeof(uint64_t);
|
||||||
|
|
||||||
bdrv_aio_writev(s->bs->file->bs, offset / BDRV_SECTOR_SIZE,
|
bdrv_aio_writev(s->bs->file, offset / BDRV_SECTOR_SIZE,
|
||||||
&write_table_cb->qiov,
|
&write_table_cb->qiov,
|
||||||
write_table_cb->qiov.size / BDRV_SECTOR_SIZE,
|
write_table_cb->qiov.size / BDRV_SECTOR_SIZE,
|
||||||
qed_write_table_cb, write_table_cb);
|
qed_write_table_cb, write_table_cb);
|
||||||
|
|
|
@ -123,7 +123,7 @@ static void qed_write_header_read_cb(void *opaque, int ret)
|
||||||
/* Update header */
|
/* Update header */
|
||||||
qed_header_cpu_to_le(&s->header, (QEDHeader *)write_header_cb->buf);
|
qed_header_cpu_to_le(&s->header, (QEDHeader *)write_header_cb->buf);
|
||||||
|
|
||||||
bdrv_aio_writev(s->bs->file->bs, 0, &write_header_cb->qiov,
|
bdrv_aio_writev(s->bs->file, 0, &write_header_cb->qiov,
|
||||||
write_header_cb->nsectors, qed_write_header_cb,
|
write_header_cb->nsectors, qed_write_header_cb,
|
||||||
write_header_cb);
|
write_header_cb);
|
||||||
}
|
}
|
||||||
|
@ -837,7 +837,7 @@ static void qed_copy_from_backing_file_write(void *opaque, int ret)
|
||||||
}
|
}
|
||||||
|
|
||||||
BLKDBG_EVENT(s->bs->file, BLKDBG_COW_WRITE);
|
BLKDBG_EVENT(s->bs->file, BLKDBG_COW_WRITE);
|
||||||
bdrv_aio_writev(s->bs->file->bs, copy_cb->offset / BDRV_SECTOR_SIZE,
|
bdrv_aio_writev(s->bs->file, copy_cb->offset / BDRV_SECTOR_SIZE,
|
||||||
©_cb->qiov, copy_cb->qiov.size / BDRV_SECTOR_SIZE,
|
©_cb->qiov, copy_cb->qiov.size / BDRV_SECTOR_SIZE,
|
||||||
qed_copy_from_backing_file_cb, copy_cb);
|
qed_copy_from_backing_file_cb, copy_cb);
|
||||||
}
|
}
|
||||||
|
@ -1087,7 +1087,7 @@ static void qed_aio_write_main(void *opaque, int ret)
|
||||||
}
|
}
|
||||||
|
|
||||||
BLKDBG_EVENT(s->bs->file, BLKDBG_WRITE_AIO);
|
BLKDBG_EVENT(s->bs->file, BLKDBG_WRITE_AIO);
|
||||||
bdrv_aio_writev(s->bs->file->bs, offset / BDRV_SECTOR_SIZE,
|
bdrv_aio_writev(s->bs->file, offset / BDRV_SECTOR_SIZE,
|
||||||
&acb->cur_qiov, acb->cur_qiov.size / BDRV_SECTOR_SIZE,
|
&acb->cur_qiov, acb->cur_qiov.size / BDRV_SECTOR_SIZE,
|
||||||
next_fn, acb);
|
next_fn, acb);
|
||||||
}
|
}
|
||||||
|
|
|
@ -383,7 +383,7 @@ static bool quorum_rewrite_bad_versions(BDRVQuorumState *s, QuorumAIOCB *acb,
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
QLIST_FOREACH(item, &version->items, next) {
|
QLIST_FOREACH(item, &version->items, next) {
|
||||||
bdrv_aio_writev(s->children[item->index]->bs, acb->sector_num,
|
bdrv_aio_writev(s->children[item->index], acb->sector_num,
|
||||||
acb->qiov, acb->nb_sectors, quorum_rewrite_aio_cb,
|
acb->qiov, acb->nb_sectors, quorum_rewrite_aio_cb,
|
||||||
acb);
|
acb);
|
||||||
}
|
}
|
||||||
|
@ -719,7 +719,7 @@ static BlockAIOCB *quorum_aio_writev(BlockDriverState *bs,
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < s->num_children; i++) {
|
for (i = 0; i < s->num_children; i++) {
|
||||||
acb->qcrs[i].aiocb = bdrv_aio_writev(s->children[i]->bs, sector_num,
|
acb->qcrs[i].aiocb = bdrv_aio_writev(s->children[i], sector_num,
|
||||||
qiov, nb_sectors, &quorum_aio_cb,
|
qiov, nb_sectors, &quorum_aio_cb,
|
||||||
&acb->qcrs[i]);
|
&acb->qcrs[i]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -313,7 +313,7 @@ BlockDriverState *check_to_replace_node(BlockDriverState *parent_bs,
|
||||||
BlockAIOCB *bdrv_aio_readv(BdrvChild *child, int64_t sector_num,
|
BlockAIOCB *bdrv_aio_readv(BdrvChild *child, int64_t sector_num,
|
||||||
QEMUIOVector *iov, int nb_sectors,
|
QEMUIOVector *iov, int nb_sectors,
|
||||||
BlockCompletionFunc *cb, void *opaque);
|
BlockCompletionFunc *cb, void *opaque);
|
||||||
BlockAIOCB *bdrv_aio_writev(BlockDriverState *bs, int64_t sector_num,
|
BlockAIOCB *bdrv_aio_writev(BdrvChild *child, int64_t sector_num,
|
||||||
QEMUIOVector *iov, int nb_sectors,
|
QEMUIOVector *iov, int nb_sectors,
|
||||||
BlockCompletionFunc *cb, void *opaque);
|
BlockCompletionFunc *cb, void *opaque);
|
||||||
BlockAIOCB *bdrv_aio_flush(BlockDriverState *bs,
|
BlockAIOCB *bdrv_aio_flush(BlockDriverState *bs,
|
||||||
|
|
Loading…
Reference in New Issue