From: Alberto Garcia <berto@igalia.com>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Alberto Garcia <berto@igalia.com>,
qemu-block@nongnu.org, Markus Armbruster <armbru@redhat.com>,
Max Reitz <mreitz@redhat.com>
Subject: [Qemu-devel] [PATCH v8 0/5] Add 'blockdev-snapshot' command
Date: Mon, 26 Oct 2015 14:27:12 +0200 [thread overview]
Message-ID: <cover.1445861886.git.berto@igalia.com> (raw)
This series adds a new 'blockdev-snapshot' command, that is similar to
'blockdev-snapshot-sync' but takes references to two existing block
devices.
This finally applies (and works) cleanly on master. Max's patch to
allow creating BlockDriverState trees without a BlockBackend is now
available as be4b67bc7d99da26b7878f7f45370f50a3bd4af5.
Regards,
Berto
v8:
- Rebase on top of the current master
- Patch 4: state->new_bs->backing_hd is now state->new_bs->backing
v7: https://lists.gnu.org/archive/html/qemu-block/2015-10/msg00273.html
- Rebase on top of the current master.
qmp_marshal_input_blockdev_snapshot is renamed to
qmp_marshal_blockdev_snapshot in order to make it build.
- New patch to use bdrv_lookup_bs() instead of bdrv_find_node() in
external_snapshot_prepare(). This way, if the user attempts to use
blockdev-snapshot-sync using an existing device ID in the
snapshot-node-name parameter, the code will detect the error before
the new image is created.
v6: https://lists.gnu.org/archive/html/qemu-block/2015-09/msg00575.html
- Update documentation and parameter names following Eric's
suggestions: 'device' -> 'node', 'snapshot' -> 'overlay'.
- Rebased on top of Max's "BlockBackend and media" v5
v5: https://lists.gnu.org/archive/html/qemu-block/2015-09/msg00483.html
- Don't delete the 'backing' option if it contains something different
from an empty string.
- Rebase on top of the current master.
v4: https://lists.gnu.org/archive/html/qemu-block/2015-09/msg00372.html
- Implement the support for 'backing': '', drop 'ignore-backing',
and update iotest 085 accordingly.
- Include sample 'blockdev-add' call in the 'blockdev-snapshot'
documentation.
- Clarify that the snapshot must not have a backing file in the
BlockdevSnapshot documentation.
- Update error message ("...node name already existing" -> "...exists").
v3: https://lists.gnu.org/archive/html/qemu-block/2015-09/msg00272.html
- Add 'ignore-backing' field to BlockdevOptionsGenericCOWFormat. This
allows opening images but not their backing images.
- Check for op blockers in the snapshot node and make sure that it
doesn't have any backing image.
- Remove extra check for the existence of the snapshot node:
bdrv_open() already does that.
- Extend iotest 085 to add tests for 'blockdev-snapshot'.
- Replace local_err with errp in some places where the former is
unnecessary.
- Update command description.
- Add 'since' tag to the 'blockdev-snapshot' field in TransactionAction.
v2: https://lists.gnu.org/archive/html/qemu-block/2015-09/msg00094.html
- Add 'blockdev-snapshot' command instead of allowing passing options
to 'blockdev-snapshot-sync'.
- Rename BlockdevSnapshot to BlockdevSnapshotSync
v1: https://lists.gnu.org/archive/html/qemu-block/2015-08/msg00236.html
Alberto Garcia (5):
block: check for existing device IDs in external_snapshot_prepare()
block: rename BlockdevSnapshot to BlockdevSnapshotSync
block: support passing 'backing': '' to 'blockdev-add'
block: add a 'blockdev-snapshot' QMP command
block: add tests for the 'blockdev-snapshot' command
block.c | 7 ++
blockdev.c | 166 ++++++++++++++++++++++++++++-----------------
qapi-schema.json | 4 +-
qapi/block-core.json | 34 +++++++++-
qmp-commands.hx | 38 +++++++++++
tests/qemu-iotests/085 | 102 ++++++++++++++++++++++++++--
tests/qemu-iotests/085.out | 34 +++++++++-
7 files changed, 312 insertions(+), 73 deletions(-)
--
2.6.1
next reply other threads:[~2015-10-26 12:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-26 12:27 Alberto Garcia [this message]
2015-10-26 12:27 ` [Qemu-devel] [PATCH v8 1/5] block: check for existing device IDs in external_snapshot_prepare() Alberto Garcia
2015-10-26 12:27 ` [Qemu-devel] [PATCH v8 2/5] block: rename BlockdevSnapshot to BlockdevSnapshotSync Alberto Garcia
2015-10-26 12:27 ` [Qemu-devel] [PATCH v8 3/5] block: support passing 'backing': '' to 'blockdev-add' Alberto Garcia
2015-10-26 12:27 ` [Qemu-devel] [PATCH v8 4/5] block: add a 'blockdev-snapshot' QMP command Alberto Garcia
2015-10-26 12:27 ` [Qemu-devel] [PATCH v8 5/5] block: add tests for the 'blockdev-snapshot' command Alberto Garcia
2015-10-27 15:30 ` [Qemu-devel] [PATCH v8 0/5] Add " Kevin Wolf
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=cover.1445861886.git.berto@igalia.com \
--to=berto@igalia.com \
--cc=armbru@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/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).