diff options
author | Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> | 2021-08-24 11:38:41 +0300 |
---|---|---|
committer | Hanna Reitz <hreitz@redhat.com> | 2021-09-01 14:03:47 +0200 |
commit | 06e0a9c16405c0a4c1eca33cf286cc04c42066a2 (patch) | |
tree | f2fb1c8f74c8020c4676edb02c733261243ddb12 /block/copy-before-write.c | |
parent | f44fd7399cf35b2d4e8f264de508e8119c76a14a (diff) | |
download | qemu-06e0a9c16405c0a4c1eca33cf286cc04c42066a2.zip qemu-06e0a9c16405c0a4c1eca33cf286cc04c42066a2.tar.gz qemu-06e0a9c16405c0a4c1eca33cf286cc04c42066a2.tar.bz2 |
block/copy-before-write: initialize block-copy bitmap
We are going to publish copy-before-write filter to be used in separate
of backup. Future step would support bitmap for the filter. But let's
start from full set bitmap.
We have to modify backup, as bitmap is first initialized by
copy-before-write filter, and then backup modifies it.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-Id: <20210824083856.17408-20-vsementsov@virtuozzo.com>
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Diffstat (limited to 'block/copy-before-write.c')
-rw-r--r-- | block/copy-before-write.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/block/copy-before-write.c b/block/copy-before-write.c index 1cefcad..2efe098 100644 --- a/block/copy-before-write.c +++ b/block/copy-before-write.c @@ -147,6 +147,7 @@ static void cbw_child_perm(BlockDriverState *bs, BdrvChild *c, static int cbw_init(BlockDriverState *bs, QDict *options, Error **errp) { BDRVCopyBeforeWriteState *s = bs->opaque; + BdrvDirtyBitmap *copy_bitmap; bs->file = bdrv_open_child(NULL, options, "file", bs, &child_of_bds, BDRV_CHILD_FILTERED | BDRV_CHILD_PRIMARY, @@ -174,6 +175,9 @@ static int cbw_init(BlockDriverState *bs, QDict *options, Error **errp) return -EINVAL; } + copy_bitmap = block_copy_dirty_bitmap(s->bcs); + bdrv_set_dirty_bitmap(copy_bitmap, 0, bdrv_dirty_bitmap_size(copy_bitmap)); + return 0; } |