From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38183) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQGEW-0002Nd-W3 for qemu-devel@nongnu.org; Tue, 24 Feb 2015 09:13:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YQGES-0004Sq-0C for qemu-devel@nongnu.org; Tue, 24 Feb 2015 09:13:08 -0500 Received: from mx1.redhat.com ([209.132.183.28]:45894) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQGER-0004Sc-NX for qemu-devel@nongnu.org; Tue, 24 Feb 2015 09:13:03 -0500 Message-ID: <54EC86E7.40406@redhat.com> Date: Tue, 24 Feb 2015 09:12:55 -0500 From: Max Reitz MIME-Version: 1.0 References: <1424701661-21241-1-git-send-email-pl@kamp.de> <1424701661-21241-4-git-send-email-pl@kamp.de> <54EB72B9.108@redhat.com> <54EC1E08.4030205@kamp.de> In-Reply-To: <54EC1E08.4030205@kamp.de> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 3/5] vpc: Ignore geometry for large images List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven , qemu-devel@nongnu.org Cc: kwolf@redhat.com, carnold@suse.com, jcody@redhat.com, stefanha@redhat.com On 2015-02-24 at 01:45, Peter Lieven wrote: > Am 23.02.2015 um 19:34 schrieb Max Reitz: >> On 2015-02-23 at 09:27, Peter Lieven wrote: >>> From: Kevin Wolf >>> >>> The CHS calculation as done per the VHD spec imposes a maximum image >>> size of ~127 GB. Real VHD images exist that are larger than that. >>> >>> Apparently there are two separate non-standard ways to achieve this: >>> You could use more heads than the spec does - this is the option that >>> qemu-img create chooses. >>> >>> However, other images exist where the geometry is set to the maximum >>> (65536/16/255), but the actual image size is larger. Until now, such Notice just now: This should be 65535/16/255. >>> images are truncated at 127 GB when opening them with qemu. >>> >>> This patch changes the vpc driver to ignore geometry in this case and >>> only trust the size field in the header. >>> >>> Signed-off-by: Kevin Wolf >>> --- >>> block/vpc.c | 10 ++++------ >>> 1 file changed, 4 insertions(+), 6 deletions(-) >> >> I'm trusting you this works for disk2vhd; at least it's in accordance >> with the VHD specification. > > When I wrote the hack for disk2vhd some time ago I just found that the > reported size was too big. > I was not aware that it was exactly this special value. > > You say in the specs. Do you have a spec that is actually stating that > (65536/16/255) is special > value that says ignore CHS and look at the footer? No, but I do have a spec that says "if the number of sectors is greater than 65535 * 16 * 255, clamp it to 65535 * 16 * 255 for the geometry calculation". This implies to me that this value means that one cannot trust the geometry. Max