aboutsummaryrefslogtreecommitdiff
path: root/block-cow.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-cow.c
parent17acfe326ce2038033934485145ddd2390337986 (diff)
downloadqemu-7a6cba611d09f8eccdfc90d5ad3eb03762e60ce9.zip
qemu-7a6cba611d09f8eccdfc90d5ad3eb03762e60ce9.tar.gz
qemu-7a6cba611d09f8eccdfc90d5ad3eb03762e60ce9.tar.bz2
Disk cache flush support.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1949 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'block-cow.c')
-rw-r--r--block-cow.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/block-cow.c b/block-cow.c
index eeeab70..6af8b74 100644
--- a/block-cow.c
+++ b/block-cow.c
@@ -250,6 +250,12 @@ static int cow_create(const char *filename, int64_t image_sectors,
return 0;
}
+static void cow_flush(BlockDriverState *bs)
+{
+ BDRVCowState *s = bs->opaque;
+ fsync(s->fd);
+}
+
BlockDriver bdrv_cow = {
"cow",
sizeof(BDRVCowState),
@@ -259,6 +265,7 @@ BlockDriver bdrv_cow = {
cow_write,
cow_close,
cow_create,
+ cow_flush,
cow_is_allocated,
};
#endif