|
From: | Stefan Weil |
Subject: | Re: [Qemu-devel] [Bug 826363] Re: qemu-img convert does not work with vdi files |
Date: | Sat, 20 Aug 2011 10:50:52 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.18) Gecko/20110617 Thunderbird/3.1.11 |
Am 17.08.2011 18:44, schrieb Stefan Hajnoczi:
On Wed, Aug 17, 2011 at 5:29 PM, Stefan Hajnoczi <address@hidden> wrote:On Tue, Aug 16, 2011 at 7:07 PM, Steve Si <address@hidden> wrote:I got binaries from http://homepage3.nifty.com/takeda-toshiya/ tested under Win 7 64-bit as User=Administratorqemu10.6 - works makes 16/08/2011 18:43 3,096,481,792 test.raw qemu11.1 - works makes 16/08/2011 18:43 3,096,481,792 test.rawqemu12.1 - crashes ! qemu12.2 - crashes ! qemu12.5 - error while writingI think this crash->error transition is explained by: commit 8cef921d18025b4ce4e749eed391308033fee232 Author: TeLeMan <address@hidden> Date: Mon Feb 8 16:20:00 2010 +0800 qemu-img: use the heap instead of the huge stack array for win32 But we still don't know why you are getting the write error. It would be fairly easy to find that out by building QEMU from source and adding fprintf() where the write fails - print out the error code and sector number.
The current code only supports images (any format) with less than 4 GiB (maybe even less than 2 GiB). This limitation is caused by the usage of function ftruncate to create the destination file. ftruncate takes a long (32 bit) parameter. Linux code also uses ftruncate to create files of a certain size. This is not a good solution. Extract from the man page: "However, some non-native file systems do not permit truncate() and ftruncate() to be used to extend a file beyond its current length: a notable example on Linux is VFAT."
[Prev in Thread] | Current Thread | [Next in Thread] |