On 9/15/23 20:41, Denis V. Lunev wrote:
Parallels driver indeed support Parallels Dirty Bitmap Feature in
read-only mode. The patch adds bdrv_supports_persistent_dirty_bitmap()
callback which always return 1 to indicate that.

This will allow to copy CBT from Parallels image with qemu-img.

Note: read-write support is signalled through
bdrv_co_can_store_new_dirty_bitmap() and is different.

Signed-off-by: Denis V. Lunev <d...@openvz.org>
---
  block/parallels.c | 6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/block/parallels.c b/block/parallels.c
index 2ebd8e1301..428f72de1c 100644
--- a/block/parallels.c
+++ b/block/parallels.c
@@ -1248,6 +1248,11 @@ static void parallels_close(BlockDriverState *bs)
      error_free(s->migration_blocker);
  }
+static bool parallels_is_support_dirty_bitmaps(BlockDriverState *bs)
+{
+    return 1;
+}
+
  static BlockDriver bdrv_parallels = {
      .format_name                = "parallels",
      .instance_size              = sizeof(BDRVParallelsState),
@@ -1256,6 +1261,7 @@ static BlockDriver bdrv_parallels = {
      .supports_backing           = true,
.bdrv_has_zero_init = bdrv_has_zero_init_1,
+    .bdrv_supports_persistent_dirty_bitmap = 
parallels_is_support_dirty_bitmaps,
.bdrv_probe = parallels_probe,
      .bdrv_open                  = parallels_open,
Reviewed-by: Alexander Ivanov <alexander.iva...@virtuozzo.com>

Reply via email to