qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Max Reitz <mreitz@redhat.com>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v10 00/14] qemu-img: Implement commit like QMP
Date: Fri, 15 Aug 2014 17:22:54 +0200	[thread overview]
Message-ID: <53EE25CE.4030102@redhat.com> (raw)
In-Reply-To: <1406064567-27907-1-git-send-email-mreitz@redhat.com>

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

  parent reply	other threads:[~2014-08-15 15:23 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-22 21:29 [Qemu-devel] [PATCH v10 00/14] qemu-img: Implement commit like QMP Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 01/14] qcow2: Allow "full" discard Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 02/14] qcow2: Implement bdrv_make_empty() Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 03/14] qcow2: Optimize bdrv_make_empty() Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 04/14] blockjob: Introduce block_job_complete_sync() Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 05/14] blockjob: Add "ready" field Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 06/14] block/mirror: Improve progress report Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 07/14] qemu-img: Implement commit like QMP Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 08/14] qemu-img: Empty image after commit Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 09/14] qemu-img: Enable progress output for commit Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 10/14] qemu-img: Specify backing file " Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 11/14] iotests: Add _filter_qemu_img_map Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 12/14] iotests: Add test for backing-chain commits Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 13/14] iotests: Add test for qcow2's bdrv_make_empty Max Reitz
2014-07-22 21:29 ` [Qemu-devel] [PATCH v10 14/14] iotests: Omit length/offset test in 040 and 041 Max Reitz
2014-08-15 15:22 ` Max Reitz [this message]
2014-08-20 11:45   ` [Qemu-devel] [PATCH v10 00/14] qemu-img: Implement commit like QMP Kevin Wolf
2014-08-20 19:06     ` Max Reitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53EE25CE.4030102@redhat.com \
    --to=mreitz@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).