Diff for /qemu/block.h between versions and

version, 2018/04/24 16:47:31 version, 2018/04/24 16:50:51
Line 1 Line 1
 #ifndef BLOCK_H  #ifndef BLOCK_H
 #define BLOCK_H  #define BLOCK_H
   #include "qemu-aio.h"
   #include "qemu-common.h"
 /* block.c */  /* block.c */
 typedef struct BlockDriver BlockDriver;  typedef struct BlockDriver BlockDriver;
Line 16  extern BlockDriver bdrv_vpc; Line 19  extern BlockDriver bdrv_vpc;
 extern BlockDriver bdrv_vvfat;  extern BlockDriver bdrv_vvfat;
 extern BlockDriver bdrv_qcow2;  extern BlockDriver bdrv_qcow2;
 extern BlockDriver bdrv_parallels;  extern BlockDriver bdrv_parallels;
   extern BlockDriver bdrv_nbd;
 typedef struct BlockDriverInfo {  typedef struct BlockDriverInfo {
     /* in bytes, 0 if irrelevant */      /* in bytes, 0 if irrelevant */
     int cluster_size;      int cluster_size;
     /* offset at which the VM state can be saved (0 if not possible) */      /* offset at which the VM state can be saved (0 if not possible) */
     int64_t vm_state_offset;      int64_t vm_state_offset;
       int64_t highest_alloc; /* highest allocated block offset (in bytes) */
       int64_t num_free_bytes; /* below highest_alloc  */
 } BlockDriverInfo;  } BlockDriverInfo;
 typedef struct QEMUSnapshotInfo {  typedef struct QEMUSnapshotInfo {
Line 44  typedef struct QEMUSnapshotInfo { Line 50  typedef struct QEMUSnapshotInfo {
                                      use a disk image format on top of                                       use a disk image format on top of
                                      it (default for                                       it (default for
                                      bdrv_file_open()) */                                       bdrv_file_open()) */
 #define BDRV_O_DIRECT      0x0020  #define BDRV_O_NOCACHE     0x0020 /* do not use the host page cache */
   #define BDRV_O_CACHE_WB    0x0040 /* use write-back caching */
   #define BDRV_O_CACHE_DEF   0x0080 /* use default caching */
 #ifndef QEMU_IMG  
 void bdrv_info(void);  void bdrv_info(void);
 void bdrv_info_stats(void);  void bdrv_info_stats(void);
 void bdrv_init(void);  void bdrv_init(void);
 BlockDriver *bdrv_find_format(const char *format_name);  BlockDriver *bdrv_find_format(const char *format_name);
Line 74  int bdrv_pwrite(BlockDriverState *bs, in Line 82  int bdrv_pwrite(BlockDriverState *bs, in
 int bdrv_truncate(BlockDriverState *bs, int64_t offset);  int bdrv_truncate(BlockDriverState *bs, int64_t offset);
 int64_t bdrv_getlength(BlockDriverState *bs);  int64_t bdrv_getlength(BlockDriverState *bs);
 void bdrv_get_geometry(BlockDriverState *bs, uint64_t *nb_sectors_ptr);  void bdrv_get_geometry(BlockDriverState *bs, uint64_t *nb_sectors_ptr);
   void bdrv_guess_geometry(BlockDriverState *bs, int *pcyls, int *pheads, int *psecs);
 int bdrv_commit(BlockDriverState *bs);  int bdrv_commit(BlockDriverState *bs);
 void bdrv_set_boot_sector(BlockDriverState *bs, const uint8_t *data, int size);  
 /* async block I/O */  /* async block I/O */
 typedef struct BlockDriverAIOCB BlockDriverAIOCB;  typedef struct BlockDriverAIOCB BlockDriverAIOCB;
 typedef void BlockDriverCompletionFunc(void *opaque, int ret);  typedef void BlockDriverCompletionFunc(void *opaque, int ret);
   BlockDriverAIOCB *bdrv_aio_readv(BlockDriverState *bs, int64_t sector_num,
                                    QEMUIOVector *iov, int nb_sectors,
                                    BlockDriverCompletionFunc *cb, void *opaque);
   BlockDriverAIOCB *bdrv_aio_writev(BlockDriverState *bs, int64_t sector_num,
                                     QEMUIOVector *iov, int nb_sectors,
                                     BlockDriverCompletionFunc *cb, void *opaque);
 BlockDriverAIOCB *bdrv_aio_read(BlockDriverState *bs, int64_t sector_num,  BlockDriverAIOCB *bdrv_aio_read(BlockDriverState *bs, int64_t sector_num,
                                 uint8_t *buf, int nb_sectors,                                  uint8_t *buf, int nb_sectors,
                                 BlockDriverCompletionFunc *cb, void *opaque);                                  BlockDriverCompletionFunc *cb, void *opaque);
Line 88  BlockDriverAIOCB *bdrv_aio_write(BlockDr Line 103  BlockDriverAIOCB *bdrv_aio_write(BlockDr
                                  BlockDriverCompletionFunc *cb, void *opaque);                                   BlockDriverCompletionFunc *cb, void *opaque);
 void bdrv_aio_cancel(BlockDriverAIOCB *acb);  void bdrv_aio_cancel(BlockDriverAIOCB *acb);
 void qemu_aio_init(void);  
 void qemu_aio_poll(void);  
 void qemu_aio_flush(void);  
 void qemu_aio_wait_start(void);  
 void qemu_aio_wait(void);  
 void qemu_aio_wait_end(void);  
 int qemu_key_check(BlockDriverState *bs, const char *name);  int qemu_key_check(BlockDriverState *bs, const char *name);
 /* Ensure contents are flushed to disk.  */  /* Ensure contents are flushed to disk.  */
 void bdrv_flush(BlockDriverState *bs);  void bdrv_flush(BlockDriverState *bs);
   void bdrv_flush_all(void);
   int bdrv_is_allocated(BlockDriverState *bs, int64_t sector_num, int nb_sectors,
           int *pnum);
 #define BDRV_TYPE_HD     0  #define BDRV_TYPE_HD     0
 #define BDRV_TYPE_CDROM  1  #define BDRV_TYPE_CDROM  1

Removed from v.  
changed lines
  Added in v.