qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Cody <jcody@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: Giri Basava <giri.basava@triliodata.com>,
	Murali Balcha <Murali.Balcha@triliodata.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] committing qcow2 to raw backing file
Date: Wed, 29 Jan 2014 09:52:26 -0500	[thread overview]
Message-ID: <20140129145226.GB11249@localhost.localdomain> (raw)
In-Reply-To: <20140129143516.GK2726@dhcp-200-207.str.redhat.com>

On Wed, Jan 29, 2014 at 03:35:16PM +0100, Kevin Wolf wrote:
> Am 29.01.2014 um 14:50 hat Murali Balcha geschrieben:
> > Thanks for the quick reply. The scenario I have is little different. The
> > backing file is only 40 MB where as the virtual size of qcow2 is 1GB.
> > 
> > project1@cloudvault3:/tmp/20bcb425-d3c5-4c0f-819c-7c9b1a16fde3$ qemu-img
> > info 2e94bd45-7e4e-4e04-a8b4-74d579cad892_vda.qcow2
> > image: 2e94bd45-7e4e-4e04-a8b4-74d579cad892_vda.qcow2
> > file format: raw
> > virtual size: 39M (41126400 bytes)
> > disk size: 39M
> > project1@cloudvault3:/tmp/20bcb425-d3c5-4c0f-819c-7c9b1a16fde3$ qemu-img
> > info 2bc87796-60e8-4024-8a40-fae817e094da_vda.qcow2
> > image: 2bc87796-60e8-4024-8a40-fae817e094da_vda.qcow2
> > file format: qcow2
> > virtual size: 1.0G (1073741824 bytes)
> > disk size: 3.3M
> > cluster_size: 65536
> > backing file: 
> > /tmp/20bcb425-d3c5-4c0f-819c-7c9b1a16fde3/2e94bd45-7e4e-4e04-a8b4-74d579cad
> > 892_vda.qcow2
> > Format specific information:
> >     compat: 0.10
> > project1@cloudvault3:/tmp/20bcb425-d3c5-4c0f-819c-7c9b1a16fde3$ qemu-img
> > commit 2bc87796-60e8-4024-8a40-fae817e094da_vda.qcow2
> > qemu-img: Error while committing image
> > 
> > The qemu-img is bailing out when it detected that commit is happening
> > beyond raw backing image.
> > 
> > 
> > Is this a valid commit operation. This is how openstack sets up vms.
> 
> This is completely unrelated to the patch that you mentioned then.
> 
> The problem is that qemu-img would have to increase the image size of
> the backing file first before it can commit all the data to it. I
> believe there was a patch by Jeff (CC'ed) that would do exactly this.
> 
> Kevin

Thanks Kevin,

Yes, the patch is in the qemu-kvm git master as of Jan 24 2014 (so it
is pretty new); here is the commit id info:

commit 72706ea4cd38bfcb151265df0178ba21863d7518
Author: Jeff Cody <jcody@redhat.com>
Date:   Fri Jan 24 09:02:35 2014 -0500

    block: resize backing file image during offline commit, if necessary




There is a corresponding commit for the same fix, for when you are
doing a live online block-commit to the active layer of a block image
chain:

commit 4da83585961631bfc10831dd26c4afda2a8b23e8
Author: Jeff Cody <jcody@redhat.com>
Date:   Fri Jan 24 09:02:36 2014 -0500

    block: resize backing image during active layer commit, if needed


Jeff


> 
> > On 1/29/14, 4:24 AM, "Kevin Wolf" <kwolf@redhat.com> wrote:
> > 
> > >Am 29.01.2014 um 03:09 hat Murali Balcha geschrieben:
> > >> Hi,
> > >> My apologies for reaching out directly on your email. However I am new
> > >>qemu and
> > >> don¹t know the active mailing list for qemu related issues.
> > >
> > >The qemu mailing list is qemu-devel@nongnu.org. You should generally
> > >direct your questions there, though keeping individual persons in the CC
> > >list is fine.
> > >
> > >> I have seen your
> > >> name in one of the patches related to this
> > >>issue.https://github.com/gooselinux/
> > >> qemu-kvm/blob/master/kvm-block-Fix-image-re-open-in-bdrv_commit.patch
> > >> 
> > >>  We are using 1.6.90 and 1.7 of qemu. the qemu-img errors out with
> > >>exact same
> > >> message when we try to commit qcow2 delta to raw image. Looking at the
> > >>code, we
> > >> realized that that patch you discussed above did not make it 1.6.90
> > >>branch we
> > >> are using. Am I missing something.
> > >
> > >I am not sure which error message you mean, but the patch that you
> > >mentioned has been in qemu since version 0.14.0. You won't see it in the
> > >current code any more because of later changes that switched to using
> > >bdrv_reopen() instead.
> > >
> > >For me, committing to a raw image works fine with current git master:
> > >
> > >$ qemu-img create -f raw /tmp/backing.raw 4G
> > >Formatting '/tmp/backing.raw', fmt=raw size=4294967296
> > >$ qemu-img create -f qcow2 -b /tmp/backing.raw /tmp/overlay.qcow2
> > >Formatting '/tmp/overlay.qcow2', fmt=qcow2 size=4294967296
> > >backing_file='/tmp/backing.raw' encryption=off cluster_size=65536
> > >lazy_refcounts=off
> > >$ qemu-io -c 'write 0 4k' /tmp/overlay.qcow2
> > >wrote 4096/4096 bytes at offset 0
> > >4 KiB, 1 ops; 0.0009 sec (4.090 MiB/sec and 1047.1204 ops/sec)
> > >$ qemu-img commit /tmp/overlay.qcow2
> > >Image committed.
> > >
> > >Kevin
> > 

  reply	other threads:[~2014-01-29 14:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CF0DCCFA.4A7E%murali.balcha@triliodata.com>
     [not found] ` <20140129092452.GB2726@dhcp-200-207.str.redhat.com>
2014-01-29 13:50   ` [Qemu-devel] committing qcow2 to raw backing file Murali Balcha
2014-01-29 14:35     ` Kevin Wolf
2014-01-29 14:52       ` Jeff Cody [this message]
2014-01-29 15:37         ` Murali Balcha
2014-01-29 16:01         ` 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=20140129145226.GB11249@localhost.localdomain \
    --to=jcody@redhat.com \
    --cc=Murali.Balcha@triliodata.com \
    --cc=giri.basava@triliodata.com \
    --cc=kwolf@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 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).