From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YNfta-0001Ad-JR for qemu-devel@nongnu.org; Tue, 17 Feb 2015 06:00:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YNftX-0002M0-5I for qemu-devel@nongnu.org; Tue, 17 Feb 2015 06:00:50 -0500 Received: from mx1.redhat.com ([209.132.183.28]:51383) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YNftW-0002Lo-Lq for qemu-devel@nongnu.org; Tue, 17 Feb 2015 06:00:46 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id t1HB0jks016624 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Tue, 17 Feb 2015 06:00:45 -0500 Date: Tue, 17 Feb 2015 12:00:43 +0100 From: Kevin Wolf Message-ID: <20150217110043.GE4213@noname.str.redhat.com> References: <1423600146-7642-1-git-send-email-mreitz@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1423600146-7642-1-git-send-email-mreitz@redhat.com> Subject: Re: [Qemu-devel] [PATCH v6 00/24] qcow2: Support refcount orders != 4 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Max Reitz Cc: qemu-devel@nongnu.org, Stefan Hajnoczi Am 10.02.2015 um 21:28 hat Max Reitz geschrieben: > As of version 3, the qcow2 file format supports different widths for > refcount entries, ranging from 1 to 64 bit (only powers of two). > Currently, qemu only supports 16 bit, which is the only width supported > by version 2 (compat=0.10) images. > > This series adds support to qemu for all other valid refcount orders. > This is mainly done by adding two function pointers into the > BDRVQcowState structure for reading and writing refcount values > independently of the current refcount entry width; all in-memory > refcount arrays (mostly cached refcount blocks) now are void pointers > and are accessed through these functions alone. > > Thanks to previous work of making the qemu code agnostic of e.g. the > number of refcount entries per refcount block, the rest is fairly > trivial. The most complex patch in this series is patch 21 which > implements changing the refcount order through qemu-img amend. > > To test different refcount widths, simply invoke the qemu-iotests check > program with -o refcount_bits=${your_desired_width}. The final test in > this series adds some tests for operations which do not work with > certain refcount orders and for refcount order amendment. > > In order for iotest 015 to succeed with refcount_bits=32 and > refcount_bits=64, this series depends on my series > "qcow2: Respect new_block in alloc_refcount_block()". In order to avoid re-reviewing the same patches each time you post a new version, I applied patches 1 to 6 now. I'll continue with reviewing the rest later today. Kevin