From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47727) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aBcSL-0002V0-UZ for qemu-devel@nongnu.org; Wed, 23 Dec 2015 00:59:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aBcSL-0004yt-3I for qemu-devel@nongnu.org; Wed, 23 Dec 2015 00:59:25 -0500 From: Fam Zheng Date: Wed, 23 Dec 2015 13:59:02 +0800 Message-Id: <1450850347-5291-1-git-send-email-famz@redhat.com> Subject: [Qemu-devel] [PATCH v3 0/5] qmp: Add blockdev-mirror List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf , qemu-block@nongnu.org, Jeff Cody , Markus Armbruster , mreitz@redhat.com, Stefan Hajnoczi , pbonzini@redhat.com v3: Rebase to master. v2: 01: Move bdrv_op_block_all down. [Max] 02, 04: Add Max's rev-by. 03: Check has_mode and fix "return;". [Max] 05: Check target->blk. Drop superfluous whitespace. [Max] 06: Drop superfluous whitespace hunk and add Max's rev-by. [Max] This is the counterpart of blockdev-backup. The biggest value of this command is to allow full flexibility on target image open options, via blockdev-add. For example this could help solve the target provisioning issue in: http://lists.gnu.org/archive/html/qemu-devel/2015-06/msg02139.html Fam Zheng (5): block: Rename BLOCK_OP_TYPE_MIRROR to BLOCK_OP_TYPE_MIRROR_SOURCE block: Extract blockdev part of qmp_drive_mirror block: Add check on mirror target qmp: Add blockdev-mirror command iotests: Add test cases for blockdev-mirror blockdev.c | 179 ++++++++++++++++++++++++++++++---------- hw/block/dataplane/virtio-blk.c | 2 +- include/block/block.h | 3 +- qapi/block-core.json | 47 +++++++++++ qmp-commands.hx | 48 +++++++++++ tests/qemu-iotests/041 | 100 ++++++++++++++++------ tests/qemu-iotests/041.out | 4 +- 7 files changed, 314 insertions(+), 69 deletions(-) -- 2.4.3