[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] qemu-img: error while compressing, Input/output error
From: |
Ilkka Tengvall |
Subject: |
[Qemu-devel] qemu-img: error while compressing, Input/output error |
Date: |
Fri, 12 Apr 2013 14:55:45 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130402 Thunderbird/17.0.5 |
I run into an issue where qemu-img convert fails repeatedly on
compressing a raw disk image. It's not all broken, since it many times
also works. When it fails, it fails always to the same sector.
I run into problem using f18 qemu-img-1.2.2-6.fc18.x86_64, and repeated
it with the latest qemu-img from qemu git as of 12th of April 2013:
last git log: 93b48c201eb6c0404d15550a0eaa3c0f7937e35e
I discussed the problem on IRC on qemu channel with stefanha, and he
asked me to provide the info here. Thanks for you help stefanha!
Here is some background snipplets:
"
<ikke> anyone having idea why "qemu-img convert -c -O qcow2 -f raw
file1 file1.qcow2" would fail to:
<ikke> qemu-img: error while compressing sector 1842944: Input/output error
<stefanha> ikke: My guess is that
qcow2_alloc_compressed_cluster_offset() is failing
<stefanha> Compressed writes cannot overwrite existing sectors,
<stefanha> perhaps there's a bug in qemu-img convert that causes it to
touch the same sector twice.
<stefanha> We wouldn't notice it when compression is disabled.
<stefanha> But when it's enabled you get a failure.
<pm215> stefanha: by the way, is it right that qemu-img.c:1372
calculates cluster_sectors from cluster_size by rounding down rather
than up? I know nothing about this code but that looks a little suspicious
<stefanha> And the contents of the input image affect the I/O pattern
during conversion
<stefanha> which would explain why you always get the problem with
certain images.
<stefanha> pm215: That should be okay. cluster_size is a power of 2 and
multiple of 512.
<stefanha> For qcow2 the default cluster_size is 64 KB.
<stefanha> ikke: A post to the mailing list with a link to the file and
a description of how to trigger the failure would be fine.
<stefanha> I think it won't take long to fix.
"
The image for repeating this is available here (~230MB):
http://hard.ware.fi/~ikke/stuff/ubuntufs.raw.img.gzip
and the command to reproduce the error is here:
$ qemu-img convert -c -O qcow2 -f raw root.fs.copy root.fs.small.new
qemu-img: error while compressing sector 1842944: Input/output error
BR,
Ilkka Tengvall
address@hidden
- [Qemu-devel] qemu-img: error while compressing, Input/output error,
Ilkka Tengvall <=