diff options
author | Kevin Wolf <kwolf@redhat.com> | 2010-06-16 16:38:15 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2010-06-22 14:38:02 +0200 |
commit | f08145fe16470aca09304099888f68cfbc5d1de7 (patch) | |
tree | 199785df12db2df24365f4e991a5e31f69ebb77d /block.h | |
parent | 3b5276b5ec52f461f23e62d4560686f10d27605e (diff) |
block: Add bdrv_(p)write_sync
Add new functions that write and flush the written data to disk immediately.
This is what needs to be used for image format metadata to maintain integrity
for cache=... modes that don't use O_DSYNC. (Actually, we only need barriers,
and therefore the functions are defined as such, but flushes is what is
implemented in this patch - we can try to change that later)
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block.h')
-rw-r--r-- | block.h | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -80,6 +80,10 @@ int bdrv_pread(BlockDriverState *bs, int64_t offset, void *buf, int count); int bdrv_pwrite(BlockDriverState *bs, int64_t offset, const void *buf, int count); +int bdrv_pwrite_sync(BlockDriverState *bs, int64_t offset, + const void *buf, int count); +int bdrv_write_sync(BlockDriverState *bs, int64_t sector_num, + const uint8_t *buf, int nb_sectors); int bdrv_truncate(BlockDriverState *bs, int64_t offset); int64_t bdrv_getlength(BlockDriverState *bs); void bdrv_get_geometry(BlockDriverState *bs, uint64_t *nb_sectors_ptr); |