]> git.proxmox.com Git - qemu.git/blobdiff - block_int.h
list MST as pci layer maintainer
[qemu.git] / block_int.h
index 3e4b4a387b0069035c0025bef64b6eaf13cf22f2..9a3b2e09de5482695d6eae053e53a11d352e13f1 100644 (file)
@@ -69,6 +69,8 @@ struct BlockDriver {
     BlockDriverAIOCB *(*bdrv_aio_writev)(BlockDriverState *bs,
         int64_t sector_num, QEMUIOVector *qiov, int nb_sectors,
         BlockDriverCompletionFunc *cb, void *opaque);
+    BlockDriverAIOCB *(*bdrv_aio_flush)(BlockDriverState *bs,
+        BlockDriverCompletionFunc *cb, void *opaque);
 
     int (*bdrv_aio_multiwrite)(BlockDriverState *bs, BlockRequest *reqs,
         int num_reqs);
@@ -115,6 +117,9 @@ struct BlockDriver {
     /* Returns number of errors in image, -errno for internal errors */
     int (*bdrv_check)(BlockDriverState* bs);
 
+    /* Set if newly created images are not guaranteed to contain only zeros */
+    int no_zero_init;
+
     struct BlockDriver *next;
 };
 
@@ -158,11 +163,15 @@ struct BlockDriverState {
     /* the memory alignment required for the buffers handled by this driver */
     int buffer_alignment;
 
+    /* do we need to tell the quest if we have a volatile write cache? */
+    int enable_write_cache;
+
     /* NOTE: the following infos are only hints for real hardware
        drivers. They are not used by the block driver */
     int cyls, heads, secs, translation;
     int type;
     char device_name[32];
+    unsigned long *dirty_bitmap;
     BlockDriverState *next;
     void *private;
 };