[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v4 18/18] block/backup: loosen restriction on readon
From: |
John Snow |
Subject: |
[Qemu-block] [PATCH v4 18/18] block/backup: loosen restriction on readonly bitmaps |
Date: |
Tue, 9 Jul 2019 19:25:50 -0400 |
With the "never" sync policy, we actually can utilize readonly bitmaps
now. Loosen the check at the QMP level, and tighten it based on
provided arguments down at the job creation level instead.
Signed-off-by: John Snow <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
---
block/backup.c | 6 ++++++
blockdev.c | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/block/backup.c b/block/backup.c
index acfe87b756..e2729cf6fa 100644
--- a/block/backup.c
+++ b/block/backup.c
@@ -607,6 +607,12 @@ BlockJob *backup_job_create(const char *job_id,
BlockDriverState *bs,
return NULL;
}
+ /* If we need to write to this bitmap, check that we can: */
+ if (bitmap_mode != BITMAP_SYNC_MODE_NEVER &&
+ bdrv_dirty_bitmap_check(sync_bitmap, BDRV_BITMAP_DEFAULT, errp)) {
+ return NULL;
+ }
+
/* Create a new bitmap, and freeze/disable this one. */
if (bdrv_dirty_bitmap_create_successor(bs, sync_bitmap, errp) < 0) {
return NULL;
diff --git a/blockdev.c b/blockdev.c
index 5dfaa976c9..3e30bc2ca7 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -3489,7 +3489,7 @@ static BlockJob *do_backup_common(BackupCommon *backup,
"when providing a bitmap");
return NULL;
}
- if (bdrv_dirty_bitmap_check(bmap, BDRV_BITMAP_DEFAULT, errp)) {
+ if (bdrv_dirty_bitmap_check(bmap, BDRV_BITMAP_ALLOW_RO, errp)) {
return NULL;
}
}
--
2.21.0
- Re: [Qemu-block] [Qemu-devel] [PATCH v4 01/18] qapi/block-core: Introduce BackupCommon, (continued)
- [Qemu-block] [PATCH v4 10/18] block/dirty-bitmap: add bdrv_dirty_bitmap_get, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 14/18] iotests: teach run_job to cancel pending jobs, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 16/18] iotests: Add virtio-scsi device helper, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 15/18] iotests: teach FilePath to produce multiple paths, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 02/18] drive-backup: create do_backup_common, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 13/18] iotests: add testing shim for script-style python tests, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 12/18] block/backup: add 'always' bitmap sync policy, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 09/18] block/dirty-bitmap: add bdrv_dirty_bitmap_merge_internal, John Snow, 2019/07/09
- [Qemu-block] [PATCH v4 18/18] block/backup: loosen restriction on readonly bitmaps,
John Snow <=
- [Qemu-block] [PATCH v4 17/18] iotests: add test 257 for bitmap-mode backups, John Snow, 2019/07/09
- Re: [Qemu-block] [PATCH v4 00/18] bitmaps: introduce 'bitmap' sync mode, Max Reitz, 2019/07/10
- Re: [Qemu-block] [Qemu-devel] [PATCH v4 00/18] bitmaps: introduce 'bitmap' sync mode, John Snow, 2019/07/15
- Re: [Qemu-block] [Qemu-devel] [PATCH v4 00/18] bitmaps: introduce 'bitmap' sync mode, Fabian Grünbichler, 2019/07/22