summaryrefslogtreecommitdiff
path: root/block-qcow.c
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2006-06-04 11:39:07 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2006-06-04 11:39:07 +0000
commit7a6cba611d09f8eccdfc90d5ad3eb03762e60ce9 (patch)
tree43cfb9b27d844ba04ed506226d4cfc0246d5506e /block-qcow.c
parent17acfe326ce2038033934485145ddd2390337986 (diff)
Disk cache flush support.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1949 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'block-qcow.c')
-rw-r--r--block-qcow.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/block-qcow.c b/block-qcow.c
index 34026a4f2c..e5b52fb861 100644
--- a/block-qcow.c
+++ b/block-qcow.c
@@ -693,6 +693,12 @@ int qcow_compress_cluster(BlockDriverState *bs, int64_t sector_num,
return 0;
}
+static void qcow_flush(BlockDriverState *bs)
+{
+ BDRVQcowState *s = bs->opaque;
+ fsync(s->fd);
+}
+
BlockDriver bdrv_qcow = {
"qcow",
sizeof(BDRVQcowState),
@@ -702,6 +708,7 @@ BlockDriver bdrv_qcow = {
qcow_write,
qcow_close,
qcow_create,
+ qcow_flush,
qcow_is_allocated,
qcow_set_key,
qcow_make_empty