[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 4/6] block: Add check on mirror target
From: |
Fam Zheng |
Subject: |
[Qemu-devel] [PATCH v2 4/6] block: Add check on mirror target |
Date: |
Thu, 25 Jun 2015 11:22:48 +0800 |
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
---
blockdev.c | 3 +++
include/block/block.h | 1 +
2 files changed, 4 insertions(+)
diff --git a/blockdev.c b/blockdev.c
index 2a0c0e2..de6383f 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -2929,6 +2929,9 @@ static void blockdev_mirror_common(BlockDriverState *bs,
if (bdrv_op_is_blocked(bs, BLOCK_OP_TYPE_MIRROR_SOURCE, errp)) {
return;
}
+ if (bdrv_op_is_blocked(target, BLOCK_OP_TYPE_MIRROR_TARGET, errp)) {
+ return;
+ }
if (!bs->backing_hd && sync == MIRROR_SYNC_MODE_TOP) {
sync = MIRROR_SYNC_MODE_FULL;
diff --git a/include/block/block.h b/include/block/block.h
index 69cb676..c96d47b 100644
--- a/include/block/block.h
+++ b/include/block/block.h
@@ -156,6 +156,7 @@ typedef enum BlockOpType {
BLOCK_OP_TYPE_INTERNAL_SNAPSHOT,
BLOCK_OP_TYPE_INTERNAL_SNAPSHOT_DELETE,
BLOCK_OP_TYPE_MIRROR_SOURCE,
+ BLOCK_OP_TYPE_MIRROR_TARGET,
BLOCK_OP_TYPE_RESIZE,
BLOCK_OP_TYPE_STREAM,
BLOCK_OP_TYPE_REPLACE,
--
2.4.3
- [Qemu-devel] [PATCH v2 0/6] qmp: Add blockdev-mirror, Fam Zheng, 2015/06/24
- [Qemu-devel] [PATCH v2 1/6] block: Add blocker on mirror target, Fam Zheng, 2015/06/24
- [Qemu-devel] [PATCH v2 2/6] block: Rename BLOCK_OP_TYPE_MIRROR to BLOCK_OP_TYPE_MIRROR_SOURCE, Fam Zheng, 2015/06/24
- [Qemu-devel] [PATCH v2 3/6] block: Extract blockdev part of qmp_drive_mirror, Fam Zheng, 2015/06/24
- [Qemu-devel] [PATCH v2 4/6] block: Add check on mirror target,
Fam Zheng <=
- [Qemu-devel] [PATCH v2 5/6] qmp: Add blockdev-mirror command, Fam Zheng, 2015/06/24
- [Qemu-devel] [PATCH v2 6/6] iotests: Add test cases for blockdev-mirror, Fam Zheng, 2015/06/24
- Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/6] qmp: Add blockdev-mirror, Stefan Hajnoczi, 2015/06/25