diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2012-10-18 16:49:18 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2012-10-24 10:26:19 +0200 |
commit | 1755da16e32c15b22a521e8a38539e4b5cf367f3 (patch) | |
tree | 5990c65a246cb189f0f44b2a7452e409fa646f56 /block.h | |
parent | 9156df12a4f3b3db63d1b292d081d814f02e311a (diff) | |
download | hqemu-1755da16e32c15b22a521e8a38539e4b5cf367f3.zip hqemu-1755da16e32c15b22a521e8a38539e4b5cf367f3.tar.gz |
block: introduce new dirty bitmap functionality
Assert that write_compressed is never used with the dirty bitmap.
Setting the bits early is wrong, because a coroutine might concurrently
examine them and copy incomplete data from the source.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block.h')
-rw-r--r-- | block.h | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -353,8 +353,9 @@ void *qemu_blockalign(BlockDriverState *bs, size_t size); void bdrv_set_dirty_tracking(BlockDriverState *bs, int enable); int bdrv_get_dirty(BlockDriverState *bs, int64_t sector); -void bdrv_reset_dirty(BlockDriverState *bs, int64_t cur_sector, - int nr_sectors); +void bdrv_set_dirty(BlockDriverState *bs, int64_t cur_sector, int nr_sectors); +void bdrv_reset_dirty(BlockDriverState *bs, int64_t cur_sector, int nr_sectors); +int64_t bdrv_get_next_dirty(BlockDriverState *bs, int64_t sector); int64_t bdrv_get_dirty_count(BlockDriverState *bs); void bdrv_enable_copy_on_read(BlockDriverState *bs); |