From: Eric Blake <eblake@redhat.com>
To: Jeff Cody <jcody@redhat.com>
Cc: kwolf@redhat.com, pbonzini@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 2/2] block: in commit, determine base image from the top image
Date: Wed, 10 Oct 2012 12:18:03 -0600 [thread overview]
Message-ID: <5075BBDB.2090202@redhat.com> (raw)
In-Reply-To: <633f30c7b1812692ca9cd4497f502d5a7366e7e3.1349848348.git.jcody@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1401 bytes --]
On 10/09/2012 11:56 PM, Jeff Cody wrote:
> This simplifies some code and error checking, and also fixes a bug.
>
> bdrv_find_backing_image() should only be passed absolute filenames,
> or filenames relative to the chain. In the QMP message handler for
> block commit, when looking up the base do so from the determined top
> image, so we know it is reachable from top.
>
> Signed-off-by: Jeff Cody <jcody@redhat.com>
> ---
> block/commit.c | 9 ---------
> blockdev.c | 21 +++++++++++----------
> 2 files changed, 11 insertions(+), 19 deletions(-)
>
> @@ -1182,6 +1172,17 @@ void qmp_block_commit(const char *device,
> return;
> }
>
> + if (base && has_base) {
> + base_bs = bdrv_find_backing_image(top_bs, base);
In particular, if I have the chain:
/dir1/base <- /dir1/snap1(base) <- /dir2/base(/dir1/snap1) <-
/dir2/snap2(base)
and request a commit of "top":"/dir1/snap1", "base":"base", then this
new code will now look up base relative to /dir1/snap1 and find
/dir1/base and proceed with the commit; whereas the old code would look
up base relative to /dir2/snap2 and find /dir2/base and complain that
the arguments were swapped.
I can live with those semantics.
Reviewed-by: Eric Blake <eblake@redhat.com>
--
Eric Blake eblake@redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 617 bytes --]
next prev parent reply other threads:[~2012-10-10 18:18 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-10 5:56 [Qemu-devel] [PATCH 0/2] block-commit fixes Jeff Cody
2012-10-10 5:56 ` [Qemu-devel] [PATCH 1/2] block: make bdrv_find_backing_image compare canonical filenames Jeff Cody
2012-10-10 7:34 ` Paolo Bonzini
2012-10-10 7:59 ` Jeff Cody
2012-10-10 8:07 ` Paolo Bonzini
2012-10-10 18:13 ` Eric Blake
2012-10-10 18:29 ` Jeff Cody
2012-10-10 18:34 ` Eric Blake
2012-10-10 18:57 ` Jeff Cody
2012-10-10 19:15 ` Eric Blake
2012-10-12 21:52 ` Eric Blake
2012-10-13 15:25 ` Jeff Cody
2012-10-16 11:40 ` Kevin Wolf
2012-10-10 5:56 ` [Qemu-devel] [PATCH 2/2] block: in commit, determine base image from the top image Jeff Cody
2012-10-10 7:35 ` Paolo Bonzini
2012-10-10 18:18 ` Eric Blake [this message]
2012-10-11 15:36 ` Eric Blake
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=5075BBDB.2090202@redhat.com \
--to=eblake@redhat.com \
--cc=jcody@redhat.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.