From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59809) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XIJLM-0005Zv-Nv for qemu-devel@nongnu.org; Fri, 15 Aug 2014 11:23:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XIJLG-0008Ek-S7 for qemu-devel@nongnu.org; Fri, 15 Aug 2014 11:23:04 -0400 Received: from mx1.redhat.com ([209.132.183.28]:51244) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XIJLG-0008Ec-By for qemu-devel@nongnu.org; Fri, 15 Aug 2014 11:22:58 -0400 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s7FFMvY4032174 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 15 Aug 2014 11:22:57 -0400 Message-ID: <53EE25CE.4030102@redhat.com> Date: Fri, 15 Aug 2014 17:22:54 +0200 From: Max Reitz MIME-Version: 1.0 References: <1406064567-27907-1-git-send-email-mreitz@redhat.com> In-Reply-To: <1406064567-27907-1-git-send-email-mreitz@redhat.com> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v10 00/14] qemu-img: Implement commit like QMP List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf , Stefan Hajnoczi On 22.07.2014 23:29, Max Reitz wrote: > qemu-img should use QMP commands whenever possible in order to ensure > feature completeness of both online and offline image operations. For > the "commit" command, this is relatively easy, so implement it first > (in the hope that indeed others will follow). > > As qemu-img does not have access to QMP (due to QMP being intertwined > with basically everything in qemu), we cannot directly use QMP, but at > least use the functions the corresponding QMP commands are using (which > would be "block-commit", in this case). > > > I tried to implement Kevin's proposal to simply patch 3, but it turned > out not to be so simple. Therefore I just resent this series with its > old approach. > > > v10: > - Patch 5: Changed target qemu version from 2.1 to 2.2 (hoping it > actually will get in before the 2.2 freeze) [Eric] > > > git-backport-diff output against v9: > > Key: > [----] : patches are identical > [####] : number of functional differences between upstream/downstream patch > [down] : patch is downstream-only > The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively > > 001/14:[----] [--] 'qcow2: Allow "full" discard' > 002/14:[----] [--] 'qcow2: Implement bdrv_make_empty()' > 003/14:[----] [--] 'qcow2: Optimize bdrv_make_empty()' > 004/14:[----] [-C] 'blockjob: Introduce block_job_complete_sync()' > 005/14:[0002] [FC] 'blockjob: Add "ready" field' > 006/14:[----] [--] 'block/mirror: Improve progress report' > 007/14:[----] [--] 'qemu-img: Implement commit like QMP' > 008/14:[----] [--] 'qemu-img: Empty image after commit' > 009/14:[----] [--] 'qemu-img: Enable progress output for commit' > 010/14:[----] [--] 'qemu-img: Specify backing file for commit' > 011/14:[----] [--] 'iotests: Add _filter_qemu_img_map' > 012/14:[----] [--] 'iotests: Add test for backing-chain commits' > 013/14:[----] [--] 'iotests: Add test for qcow2's bdrv_make_empty' > 014/14:[----] [--] 'iotests: Omit length/offset test in 040 and 041' > > > Max Reitz (14): > qcow2: Allow "full" discard > qcow2: Implement bdrv_make_empty() > qcow2: Optimize bdrv_make_empty() > blockjob: Introduce block_job_complete_sync() > blockjob: Add "ready" field > block/mirror: Improve progress report > qemu-img: Implement commit like QMP > qemu-img: Empty image after commit > qemu-img: Enable progress output for commit > qemu-img: Specify backing file for commit > iotests: Add _filter_qemu_img_map > iotests: Add test for backing-chain commits > iotests: Add test for qcow2's bdrv_make_empty > iotests: Omit length/offset test in 040 and 041 > > block/Makefile.objs | 2 +- > block/mirror.c | 34 ++-- > block/qcow2-cluster.c | 27 ++- > block/qcow2-snapshot.c | 2 +- > block/qcow2.c | 388 ++++++++++++++++++++++++++++++++++++++- > block/qcow2.h | 2 +- > blockjob.c | 42 ++++- > include/block/blockjob.h | 20 ++ > qapi/block-core.json | 4 +- > qemu-img-cmds.hx | 4 +- > qemu-img.c | 149 ++++++++++++--- > qemu-img.texi | 13 +- > tests/qemu-iotests/040 | 4 +- > tests/qemu-iotests/041 | 3 +- > tests/qemu-iotests/097 | 122 ++++++++++++ > tests/qemu-iotests/097.out | 119 ++++++++++++ > tests/qemu-iotests/098 | 75 ++++++++ > tests/qemu-iotests/098.out | 26 +++ > tests/qemu-iotests/common.filter | 7 + > tests/qemu-iotests/group | 2 + > tests/qemu-iotests/iotests.py | 3 +- > 21 files changed, 981 insertions(+), 67 deletions(-) > create mode 100755 tests/qemu-iotests/097 > create mode 100644 tests/qemu-iotests/097.out > create mode 100755 tests/qemu-iotests/098 > create mode 100644 tests/qemu-iotests/098.out Ping