From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42181) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W8WVH-0005QF-Lj for qemu-devel@nongnu.org; Wed, 29 Jan 2014 09:52:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W8WVD-0000z8-4b for qemu-devel@nongnu.org; Wed, 29 Jan 2014 09:52:35 -0500 Received: from mx1.redhat.com ([209.132.183.28]:11106) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W8WVC-0000xa-SJ for qemu-devel@nongnu.org; Wed, 29 Jan 2014 09:52:31 -0500 Date: Wed, 29 Jan 2014 09:52:26 -0500 From: Jeff Cody Message-ID: <20140129145226.GB11249@localhost.localdomain> References: <20140129092452.GB2726@dhcp-200-207.str.redhat.com> <20140129143516.GK2726@dhcp-200-207.str.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <20140129143516.GK2726@dhcp-200-207.str.redhat.com> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] committing qcow2 to raw backing file List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: Giri Basava , Murali Balcha , "qemu-devel@nongnu.org" 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. > >=20 > > 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:=20 > > /tmp/20bcb425-d3c5-4c0f-819c-7c9b1a16fde3/2e94bd45-7e4e-4e04-a8b4-74d= 579cad > > 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 > >=20 > > The qemu-img is bailing out when it detected that commit is happening > > beyond raw backing image. > >=20 > >=20 > > Is this a valid commit operation. This is how openstack sets up vms. >=20 > This is completely unrelated to the patch that you mentioned then. >=20 > 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. >=20 > 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 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 Date: Fri Jan 24 09:02:36 2014 -0500 block: resize backing image during active layer commit, if needed Jeff >=20 > > On 1/29/14, 4:24 AM, "Kevin Wolf" wrote: > >=20 > > >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=B9t 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 th= e 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.pa= tch > > >>=20 > > >> 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.9= 0 > > >>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 usin= g > > >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=3Draw size=3D4294967296 > > >$ qemu-img create -f qcow2 -b /tmp/backing.raw /tmp/overlay.qcow2 > > >Formatting '/tmp/overlay.qcow2', fmt=3Dqcow2 size=3D4294967296 > > >backing_file=3D'/tmp/backing.raw' encryption=3Doff cluster_size=3D65= 536 > > >lazy_refcounts=3Doff > > >$ 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 > >=20