Fernando Luiz Chaves Xavier Matos
2013-Feb-04 17:32 UTC
QCOW2 goes corrupted when using GPLPV drivers
QCOW2 disk image gets corrupted when you try to install Service Pack 1 AFTER installing GPLPV drivers. This means, without the pv drivers, everything works fine. I tested both RAW and QCOW2 without GPLPV drivers and the installation has completed without any error, and the image (at least qcow2) has no errors too. How to reproduce: - Install Windows 7 32-bit guest - Check the image with "qemu-img check -f qcow2 -r all" to ensure that there still no problems. - Install GPLPV drivers 0.11.0.356 - Try to install Service Pack 1 - Get an "unknown error" from the installer - Check the qcow2 image with "qemu-img check -f qcow2 -r all" and gets TONS of integrity errors. guest config: name = "win7" builder = "hvm" vcpus = 1 memory = 1536 acpi = 1 apic = 1 hap = 0 viridian = 1 localtime = 1 stdvga = 0 sdl = 0 vnc = 1 vncconsole = 1 vnclisten = "0.0.0.0" vncdisplay = 2 usbdevice = "tablet" keymap = "pt-br" disk = [ ''tap2:aio:../ISO/WIN7_AIO_X86_X64.iso,hdb:cdrom,r'' , ''tap2:qcow2:./win7.qcow2,hda,w'' ] boot = "dc" vif = [ ''mac=00:16:3E:31:C4:D5,bridge=xenbr0'' ] on_crash = "restart" on_reboot = "restart" on_poweroff = "destroy"
> > QCOW2 disk image gets corrupted when you try to install Service Pack 1 > AFTER installing GPLPV drivers. > > This means, without the pv drivers, everything works fine. > > I tested both RAW and QCOW2 without GPLPV drivers and the installation > has completed without any error, and the image (at least qcow2) has no > errors too. > > How to reproduce: > - Install Windows 7 32-bit guest > - Check the image with "qemu-img check -f qcow2 -r all" to ensure that > there still no problems. > - Install GPLPV drivers 0.11.0.356 > - Try to install Service Pack 1 > - Get an "unknown error" from the installer > - Check the qcow2 image with "qemu-img check -f qcow2 -r all" and gets > TONS of integrity errors. >I can''t test this just now, but are you saying that the qcow2 volume itself goes corrupt as opposed to, say, the filesystem going corrupt? If ''qemu-img check'' is reporting corruption then I guess it has to be the qcow2 volume... afaik no VM should ever be able to corrupt this so it must be a bug in qemu or some other layer like that. I don''t know what would be special about gplpv that could bring this behaviour out though. What''s your feeling on the sp1 side of things? Do you think it could be just a coincidence that it happens during the sp1 install (sp1 install is a pretty big operation), or are you confident that it is the installation of sp1 that triggers it? Can you run the debug version of gplpv and try it again then send me the output of /var/log/xen/qemu-dm-<domu name>.log? Also, before you install sp1, please post the output of: fsutil fsinfo ntfsinfo c: Someone else may be able to comment on if there is a potential security issue with a DomU being able to ''escape'' its box and corrupt it''s storage container. Thanks James
> > QCOW2 disk image gets corrupted when you try to install Service Pack 1 > AFTER installing GPLPV drivers. > > > How to reproduce: > - Install Windows 7 32-bit guest > - Check the image with "qemu-img check -f qcow2 -r all" to ensure that > there still no problems. > - Install GPLPV drivers 0.11.0.356 > - Try to install Service Pack 1 > - Get an "unknown error" from the installer > - Check the qcow2 image with "qemu-img check -f qcow2 -r all" and gets > TONS of integrity errors. >I forgot to ask - what version of Xen and of Linux? Thanks James
--On 4 February 2013 14:32:46 -0300 Fernando Luiz Chaves Xavier Matos <fernando@supergg.com.br> wrote:> QCOW2 disk image gets corrupted when you try to install Service Pack 1 > AFTER installing GPLPV drivers. > > This means, without the pv drivers, everything works fine. > > I tested both RAW and QCOW2 without GPLPV drivers and the installation > has completed without any error, and the image (at least qcow2) has no > errors too.What device is your qcow2 file held on? I''d be interested to know whether turning O_DIRECT off fixes things. -- Alex Bligh