|
From: | Peter Lieven |
Subject: | Re: [Qemu-devel] vpc size reporting problem |
Date: | Tue, 07 Jul 2015 08:03:42 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 |
Am 07.07.2015 um 07:59 schrieb Chun Yan Liu:
On 7/7/2015 at 01:50 PM, in message <address@hidden>, Peter Lieven<address@hidden> wrote:Am 07.07.2015 um 03:50 schrieb Chun Yan Liu:On 7/6/2015 at 06:42 PM, in message <address@hidden>, Peter Lieven<address@hidden> wrote:Am 06.07.2015 um 11:44 schrieb Chun Yan Liu:While testing with a 1GB VHD file created on win7, found that the VHD file size reported on Windows is different from that is reported by qemu-img info or within a Linux KVM guest. Created a dynamic VHD file on win7, on Windows, it is reported 1024MB (2097152 sectors). But with qemu-img info or within a Linux KVM guest, it is reported 1023MB (2096640 sectors). The values in the footer_buf are as follows: creator_app: "win " cylinders: 0x820 (2080) heads: 0x10 (16) cyl/sec: 0x3f (63) current_size: 0x40000000 (1G) So, if using current_size, it's correct; but using CHS will get a smallersize.As far as I remember the issue was and still is that there is no officialShould we add a check in this case and use "current_size" instead of CHS?spec that says use current_size in case A and CHS in case B.Understand.If currrent_size is greater than CHS and Windows would use CHS (we don'tknow that) we might run into issues if Qemu uses current_size. In this cas we would write data beyond the end of the container (from Windows perspective).That's right. The fact is in our testing we found Windows does not use CHS but current_size (from testing result), we create and get the VHD parted on Windows, then take the VHD file into Linux KVM guest, it fails to showpartitiontable (since the reported disk size is shrinking, some of the partitionsextendWhich version of Windows are you referring to?beyond the end of the disk).Tested with WS2012R2 and Win7.
Which storage driver? I had a look at the specs and in fact they more or less say: Use current_size and if you have an ATA controller derive the disk size from CHS. Peter
[Prev in Thread] | Current Thread | [Next in Thread] |