提交 c68b89ac 编写于 作者: K Kevin Wolf

block: Rename bdrv_co_flush to bdrv_co_flush_to_disk

There are two different types of flush that you can do: Flushing one level up
to the OS (i.e. writing data to the host page cache) or flushing it all the way
down to the disk. The existing functions flush to the disk, reflect this in the
function name.
Signed-off-by: NKevin Wolf <kwolf@redhat.com>
上级 980bda8b
...@@ -2793,8 +2793,8 @@ int coroutine_fn bdrv_co_flush(BlockDriverState *bs) ...@@ -2793,8 +2793,8 @@ int coroutine_fn bdrv_co_flush(BlockDriverState *bs)
return 0; return 0;
} else if (!bs->drv) { } else if (!bs->drv) {
return 0; return 0;
} else if (bs->drv->bdrv_co_flush) { } else if (bs->drv->bdrv_co_flush_to_disk) {
return bs->drv->bdrv_co_flush(bs); return bs->drv->bdrv_co_flush_to_disk(bs);
} else if (bs->drv->bdrv_aio_flush) { } else if (bs->drv->bdrv_aio_flush) {
BlockDriverAIOCB *acb; BlockDriverAIOCB *acb;
CoroutineIOCompletion co = { CoroutineIOCompletion co = {
......
...@@ -326,16 +326,18 @@ static QEMUOptionParameter cow_create_options[] = { ...@@ -326,16 +326,18 @@ static QEMUOptionParameter cow_create_options[] = {
}; };
static BlockDriver bdrv_cow = { static BlockDriver bdrv_cow = {
.format_name = "cow", .format_name = "cow",
.instance_size = sizeof(BDRVCowState), .instance_size = sizeof(BDRVCowState),
.bdrv_probe = cow_probe,
.bdrv_open = cow_open, .bdrv_probe = cow_probe,
.bdrv_read = cow_co_read, .bdrv_open = cow_open,
.bdrv_write = cow_co_write, .bdrv_close = cow_close,
.bdrv_close = cow_close, .bdrv_create = cow_create,
.bdrv_create = cow_create,
.bdrv_co_flush = cow_co_flush, .bdrv_read = cow_co_read,
.bdrv_is_allocated = cow_is_allocated, .bdrv_write = cow_co_write,
.bdrv_co_flush_to_disk = cow_co_flush,
.bdrv_is_allocated = cow_is_allocated,
.create_options = cow_create_options, .create_options = cow_create_options,
}; };
......
...@@ -828,14 +828,16 @@ static BlockDriver bdrv_qcow = { ...@@ -828,14 +828,16 @@ static BlockDriver bdrv_qcow = {
.bdrv_open = qcow_open, .bdrv_open = qcow_open,
.bdrv_close = qcow_close, .bdrv_close = qcow_close,
.bdrv_create = qcow_create, .bdrv_create = qcow_create,
.bdrv_is_allocated = qcow_is_allocated,
.bdrv_set_key = qcow_set_key, .bdrv_co_readv = qcow_co_readv,
.bdrv_make_empty = qcow_make_empty, .bdrv_co_writev = qcow_co_writev,
.bdrv_co_readv = qcow_co_readv, .bdrv_co_flush_to_disk = qcow_co_flush,
.bdrv_co_writev = qcow_co_writev, .bdrv_is_allocated = qcow_is_allocated,
.bdrv_co_flush = qcow_co_flush,
.bdrv_write_compressed = qcow_write_compressed, .bdrv_set_key = qcow_set_key,
.bdrv_get_info = qcow_get_info, .bdrv_make_empty = qcow_make_empty,
.bdrv_write_compressed = qcow_write_compressed,
.bdrv_get_info = qcow_get_info,
.create_options = qcow_create_options, .create_options = qcow_create_options,
}; };
......
...@@ -1243,9 +1243,9 @@ static BlockDriver bdrv_qcow2 = { ...@@ -1243,9 +1243,9 @@ static BlockDriver bdrv_qcow2 = {
.bdrv_set_key = qcow2_set_key, .bdrv_set_key = qcow2_set_key,
.bdrv_make_empty = qcow2_make_empty, .bdrv_make_empty = qcow2_make_empty,
.bdrv_co_readv = qcow2_co_readv, .bdrv_co_readv = qcow2_co_readv,
.bdrv_co_writev = qcow2_co_writev, .bdrv_co_writev = qcow2_co_writev,
.bdrv_co_flush = qcow2_co_flush, .bdrv_co_flush_to_disk = qcow2_co_flush,
.bdrv_co_discard = qcow2_co_discard, .bdrv_co_discard = qcow2_co_discard,
.bdrv_truncate = qcow2_truncate, .bdrv_truncate = qcow2_truncate,
......
...@@ -281,9 +281,11 @@ static BlockDriver bdrv_file = { ...@@ -281,9 +281,11 @@ static BlockDriver bdrv_file = {
.bdrv_file_open = raw_open, .bdrv_file_open = raw_open,
.bdrv_close = raw_close, .bdrv_close = raw_close,
.bdrv_create = raw_create, .bdrv_create = raw_create,
.bdrv_co_flush = raw_flush,
.bdrv_read = raw_read, .bdrv_read = raw_read,
.bdrv_write = raw_write, .bdrv_write = raw_write,
.bdrv_co_flush_to_disk = raw_flush,
.bdrv_truncate = raw_truncate, .bdrv_truncate = raw_truncate,
.bdrv_getlength = raw_getlength, .bdrv_getlength = raw_getlength,
.bdrv_get_allocated_file_size .bdrv_get_allocated_file_size
...@@ -409,11 +411,12 @@ static BlockDriver bdrv_host_device = { ...@@ -409,11 +411,12 @@ static BlockDriver bdrv_host_device = {
.bdrv_probe_device = hdev_probe_device, .bdrv_probe_device = hdev_probe_device,
.bdrv_file_open = hdev_open, .bdrv_file_open = hdev_open,
.bdrv_close = raw_close, .bdrv_close = raw_close,
.bdrv_co_flush = raw_flush,
.bdrv_has_zero_init = hdev_has_zero_init, .bdrv_has_zero_init = hdev_has_zero_init,
.bdrv_read = raw_read, .bdrv_read = raw_read,
.bdrv_write = raw_write, .bdrv_write = raw_write,
.bdrv_co_flush_to_disk = raw_flush,
.bdrv_getlength = raw_getlength, .bdrv_getlength = raw_getlength,
.bdrv_get_allocated_file_size .bdrv_get_allocated_file_size
= raw_get_allocated_file_size, = raw_get_allocated_file_size,
......
...@@ -111,10 +111,10 @@ static BlockDriver bdrv_raw = { ...@@ -111,10 +111,10 @@ static BlockDriver bdrv_raw = {
.bdrv_open = raw_open, .bdrv_open = raw_open,
.bdrv_close = raw_close, .bdrv_close = raw_close,
.bdrv_co_readv = raw_co_readv, .bdrv_co_readv = raw_co_readv,
.bdrv_co_writev = raw_co_writev, .bdrv_co_writev = raw_co_writev,
.bdrv_co_flush = raw_co_flush, .bdrv_co_flush_to_disk = raw_co_flush,
.bdrv_co_discard = raw_co_discard, .bdrv_co_discard = raw_co_discard,
.bdrv_probe = raw_probe, .bdrv_probe = raw_probe,
.bdrv_getlength = raw_getlength, .bdrv_getlength = raw_getlength,
......
...@@ -851,18 +851,18 @@ static BlockDriver bdrv_rbd = { ...@@ -851,18 +851,18 @@ static BlockDriver bdrv_rbd = {
.bdrv_file_open = qemu_rbd_open, .bdrv_file_open = qemu_rbd_open,
.bdrv_close = qemu_rbd_close, .bdrv_close = qemu_rbd_close,
.bdrv_create = qemu_rbd_create, .bdrv_create = qemu_rbd_create,
.bdrv_co_flush = qemu_rbd_co_flush,
.bdrv_get_info = qemu_rbd_getinfo, .bdrv_get_info = qemu_rbd_getinfo,
.create_options = qemu_rbd_create_options, .create_options = qemu_rbd_create_options,
.bdrv_getlength = qemu_rbd_getlength, .bdrv_getlength = qemu_rbd_getlength,
.bdrv_truncate = qemu_rbd_truncate, .bdrv_truncate = qemu_rbd_truncate,
.protocol_name = "rbd", .protocol_name = "rbd",
.bdrv_aio_readv = qemu_rbd_aio_readv, .bdrv_aio_readv = qemu_rbd_aio_readv,
.bdrv_aio_writev = qemu_rbd_aio_writev, .bdrv_aio_writev = qemu_rbd_aio_writev,
.bdrv_co_flush_to_disk = qemu_rbd_co_flush,
.bdrv_snapshot_create = qemu_rbd_snap_create, .bdrv_snapshot_create = qemu_rbd_snap_create,
.bdrv_snapshot_list = qemu_rbd_snap_list, .bdrv_snapshot_list = qemu_rbd_snap_list,
}; };
static void bdrv_rbd_init(void) static void bdrv_rbd_init(void)
......
...@@ -980,7 +980,7 @@ static BlockDriver bdrv_vdi = { ...@@ -980,7 +980,7 @@ static BlockDriver bdrv_vdi = {
.bdrv_open = vdi_open, .bdrv_open = vdi_open,
.bdrv_close = vdi_close, .bdrv_close = vdi_close,
.bdrv_create = vdi_create, .bdrv_create = vdi_create,
.bdrv_co_flush = vdi_co_flush, .bdrv_co_flush_to_disk = vdi_co_flush,
.bdrv_is_allocated = vdi_is_allocated, .bdrv_is_allocated = vdi_is_allocated,
.bdrv_make_empty = vdi_make_empty, .bdrv_make_empty = vdi_make_empty,
......
...@@ -1581,8 +1581,8 @@ static BlockDriver bdrv_vmdk = { ...@@ -1581,8 +1581,8 @@ static BlockDriver bdrv_vmdk = {
.bdrv_write = vmdk_co_write, .bdrv_write = vmdk_co_write,
.bdrv_close = vmdk_close, .bdrv_close = vmdk_close,
.bdrv_create = vmdk_create, .bdrv_create = vmdk_create,
.bdrv_co_flush = vmdk_co_flush, .bdrv_co_flush_to_disk = vmdk_co_flush,
.bdrv_is_allocated = vmdk_is_allocated, .bdrv_is_allocated = vmdk_is_allocated,
.bdrv_get_allocated_file_size = vmdk_get_allocated_file_size, .bdrv_get_allocated_file_size = vmdk_get_allocated_file_size,
.create_options = vmdk_create_options, .create_options = vmdk_create_options,
......
...@@ -665,14 +665,16 @@ static QEMUOptionParameter vpc_create_options[] = { ...@@ -665,14 +665,16 @@ static QEMUOptionParameter vpc_create_options[] = {
static BlockDriver bdrv_vpc = { static BlockDriver bdrv_vpc = {
.format_name = "vpc", .format_name = "vpc",
.instance_size = sizeof(BDRVVPCState), .instance_size = sizeof(BDRVVPCState),
.bdrv_probe = vpc_probe, .bdrv_probe = vpc_probe,
.bdrv_open = vpc_open, .bdrv_open = vpc_open,
.bdrv_read = vpc_co_read,
.bdrv_write = vpc_co_write,
.bdrv_co_flush = vpc_co_flush,
.bdrv_close = vpc_close, .bdrv_close = vpc_close,
.bdrv_create = vpc_create, .bdrv_create = vpc_create,
.bdrv_read = vpc_co_read,
.bdrv_write = vpc_co_write,
.bdrv_co_flush_to_disk = vpc_co_flush,
.create_options = vpc_create_options, .create_options = vpc_create_options,
}; };
......
...@@ -84,10 +84,15 @@ struct BlockDriver { ...@@ -84,10 +84,15 @@ struct BlockDriver {
int64_t sector_num, int nb_sectors, QEMUIOVector *qiov); int64_t sector_num, int nb_sectors, QEMUIOVector *qiov);
int coroutine_fn (*bdrv_co_writev)(BlockDriverState *bs, int coroutine_fn (*bdrv_co_writev)(BlockDriverState *bs,
int64_t sector_num, int nb_sectors, QEMUIOVector *qiov); int64_t sector_num, int nb_sectors, QEMUIOVector *qiov);
int coroutine_fn (*bdrv_co_flush)(BlockDriverState *bs);
int coroutine_fn (*bdrv_co_discard)(BlockDriverState *bs, int coroutine_fn (*bdrv_co_discard)(BlockDriverState *bs,
int64_t sector_num, int nb_sectors); int64_t sector_num, int nb_sectors);
/*
* Flushes all data that was already written to the OS all the way down to
* the disk (for example raw-posix calls fsync()).
*/
int coroutine_fn (*bdrv_co_flush_to_disk)(BlockDriverState *bs);
int (*bdrv_aio_multiwrite)(BlockDriverState *bs, BlockRequest *reqs, int (*bdrv_aio_multiwrite)(BlockDriverState *bs, BlockRequest *reqs,
int num_reqs); int num_reqs);
int (*bdrv_merge_requests)(BlockDriverState *bs, BlockRequest* a, int (*bdrv_merge_requests)(BlockDriverState *bs, BlockRequest* a,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册