[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v23 01/12] unblock backup operations in backing file
From: |
Changlong Xie |
Subject: |
[Qemu-block] [PATCH v23 01/12] unblock backup operations in backing file |
Date: |
Tue, 26 Jul 2016 16:15:30 +0800 |
From: Wen Congyang <address@hidden>
Signed-off-by: Wen Congyang <address@hidden>
Signed-off-by: Changlong Xie <address@hidden>
Signed-off-by: Wang WeiWei <address@hidden>
---
block.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/block.c b/block.c
index 30d64e6..194a060 100644
--- a/block.c
+++ b/block.c
@@ -1311,6 +1311,23 @@ void bdrv_set_backing_hd(BlockDriverState *bs,
BlockDriverState *backing_hd)
/* Otherwise we won't be able to commit due to check in bdrv_commit */
bdrv_op_unblock(backing_hd, BLOCK_OP_TYPE_COMMIT_TARGET,
bs->backing_blocker);
+ /*
+ * We do backup in 3 ways:
+ * 1. drive backup
+ * The target bs is new opened, and the source is top BDS
+ * 2. blockdev backup
+ * Both the source and the target are top BDSes.
+ * 3. internal backup(used for block replication)
+ * Both the source and the target are backing file
+ *
+ * In case 1 and 2, neither the source nor the target is the backing file.
+ * In case 3, we will block the top BDS, so there is only one block job
+ * for the top BDS and its backing chain.
+ */
+ bdrv_op_unblock(backing_hd, BLOCK_OP_TYPE_BACKUP_SOURCE,
+ bs->backing_blocker);
+ bdrv_op_unblock(backing_hd, BLOCK_OP_TYPE_BACKUP_TARGET,
+ bs->backing_blocker);
out:
bdrv_refresh_limits(bs, NULL);
}
--
1.9.3
- [Qemu-block] [PATCH v23 00/12] Block replication for continuous checkpoints, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 01/12] unblock backup operations in backing file,
Changlong Xie <=
- [Qemu-block] [PATCH v23 03/12] Backup: export interfaces for extra serialization, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 04/12] Link backup into block core, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 02/12] Backup: clear all bitmap when doing block checkpoint, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 06/12] auto complete active commit, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 12/12] MAINTAINERS: add maintainer for replication, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 08/12] Introduce new APIs to do replication operation, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 05/12] docs: block replication's description, Changlong Xie, 2016/07/26
- [Qemu-block] [PATCH v23 07/12] configure: support replication, Changlong Xie, 2016/07/26