[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v11 01/12] unblock backup operations in backing file
From: |
Wen Congyang |
Subject: |
[Qemu-block] [PATCH v11 01/12] unblock backup operations in backing file |
Date: |
Tue, 3 Nov 2015 18:58:38 +0800 |
Signed-off-by: Wen Congyang <address@hidden>
---
block.c | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/block.c b/block.c
index 9a2ab68..1d6c115 100644
--- a/block.c
+++ b/block.c
@@ -1161,6 +1161,24 @@ 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, the backing file is neither the source nor
+ * the target.
+ * 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);
}
--
2.4.3
- [Qemu-block] [PATCH v11 00/12] Block replication is a very important feature which is used for, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 03/12] allow writing to the backing file, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 08/12] Add new block driver interfaces to control block replication, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 02/12] Store parent BDS in BdrvChild, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 04/12] Backup: clear all bitmap when doing block checkpoint, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 10/12] Implement new driver for block replication, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 07/12] docs: block replication's description, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 11/12] support replication driver in blockdev-add, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 01/12] unblock backup operations in backing file,
Wen Congyang <=
- [Qemu-block] [PATCH v11 06/12] block: make bdrv_put_ref_bh_schedule() as a public API, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 12/12] Add a new API to start/stop replication, do checkpoint to all BDSes, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 05/12] Allow creating backup jobs when opening BDS, Wen Congyang, 2015/11/03
- [Qemu-block] [PATCH v11 09/12] quorum: implement block driver interfaces for block replication, Wen Congyang, 2015/11/03
- Re: [Qemu-block] [PATCH v11 00/12] Block replication for continuous checkpoints, Wen Congyang, 2015/11/12