Menu

#375 repeatable corruption with qcow2 on kvm-79

closed
nobody
qemu (66)
5
2012-10-09
2009-01-06
No

Creating a qcow2 image, mkfs.ext3, sometimes mounting it would fail immediately, but in all cases it would corrupt (overwritten with zeros) after starting up backuppc on it. This is KVM-79 on a Debian lenny host and guest.

This occured using virtio or not. Swapping to a raw file or LV worked flawlessly. I've tested the box with memtest and I don't have issues elsewhere but I've seen corruptions on other images. host and guest are both 2.6.26-1-adm64 kernel (debian lenny) I'm running 32-bit userspace everywhere. Dual core Intel Core2 E6300.

I see KVM-81 has "improve qcow2 data integrity with cache=writethrough" which might be what I'm hitting - but I can't find more details about this to check (and backport patch to debian package or wait for newer debian package).

thanks.

Discussion

  • Laszlo Dvornik

    Laszlo Dvornik - 2009-01-07

    Same problem here.

    With Lenny and vanilla 2.6.28 kernel, with KVM 79, and with KVM 82 user tools.
    Tried with KVM 82 module compile for 2.6.28 and with 2.6.28 builtin KVM sources.
    32-bit userspace and kernel, Intel C2D T7100.

    Another effect:
    With empty qcow2, vmdk disk image formats, when I try to create a partition and save the new partition table, they can't save it until reboot. With raw image format there is no such problem.

    I liked to try with qcow, but:
    qemu: could not open disk image teszt.qcow

    I switched all of my disk images to raw, until the problem fixed.

    PS: The host filesystem is ext4, but I tested under ext3 filesystem too and the problem wasn't disappeared.

     
  • roy anonymous

    roy anonymous - 2009-01-07

    I am not quite sure it's true or not, for my case, I get corruption if I have a new FC9 Guest installation with qcow2 with virtio_blk. But it won't have any problem if I install with a FC8 qcow2 installation, then upgrade to FC9 with virtio_blk

     
  • Daniel van Vugt

    Daniel van Vugt - 2009-01-13

    Confirmed on kvm-82. I am getting reproducible qcow2 corruption on my Windows images.

    Host: Ubuntu 8.04.1 amd64 (Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz)
    Guest: Multiple (see below)

    Summary is:

    1. Boot working Windows image (qcow2)
    2. Use Windows and then shut down the VM cleanly.
    3. Image file is now corrupt and unusable. Won't boot again and qemu-img reports invalid information.

    Confirmed with multiple Windows Server 2003 guests and now Windows 7 beta too:

    $ qemu-img info windows7beta.qcow2
    image: windows7beta.qcow2
    file format: qcow2
    virtual size: 20G (21474836480 bytes)
    disk size: 5.0G
    cluster_size: 4096
    Snapshot list:
    ID TAG VM SIZE DATE VM CLOCK
    1 Fresh_install 1.3M 2009-01-09 15:34:31 00:00:00.000
    2 Activated_kvm-82 1.3M 2009-01-09 15:43:27 00:00:00.000

    $ qemu -m 512 -usbdevice tablet -redir tcp:3389::3389 windows7beta.qcow2 &
    (use and then shut down windows)

    $ qemu-img info windows7beta.qcow2
    image: windows7beta.qcow2
    file format: raw <---------------------------- INVALID
    virtual size: 5.0G (5353566208 bytes) <--------- INVALID
    disk size: 5.0G

    $ qemu -m 512 -usbdevice tablet -redir tcp:3389::3389 windows7beta.qcow2 -S &
    (qemu) info snapshots
    Snapshot devices: ide0-hd0
    bdrv_snapshot_list: error -95

     
  • Dor Laor

    Dor Laor - 2009-01-13

    danv, can you please specify more details - does this corruption is consistent or happens rarely?
    Do you create/manage snapshots while the image is up?
    If no special snapshot action taken, what's the guest do between the boot and the shutdown?
    (Just to make sure, you do not run multiple guests with the same image right?)

     
  • Daniel van Vugt

    Daniel van Vugt - 2009-01-13

    My problem is kvm-82 vanilla, compiled with no special options.

    It happens consistently with kvm-82, but is not necessarily new to kvm-82 because I haven't used these images extensively with prior kvm releases.

    No, I do not do anything dangerous like run multiple guests with the same image or manage snapshots while the guest is up (only at pre-boot, when stopped).

    To reproduce repeatedly in the two cases I've seen it recently:

    Case A: Windows Server 2003 (standard and enterprise) x86:

    1. Boot guest (previously created under kvm-81)
    2. Let Windows detect the new hardware (kvm-82 changes)
    3. Reboot as instructed
    4. Windows guest continues to work after multiple reboots and the console shows snapshots intact
    5. Shut down the Windows guest properly
    6. Image is now invalid as soon as qemu(kvm) exits (not recognizable as qcow2, not bootable and no snapshots reported by qemu-img info)

    Case B: Windows 7 beta x86

    1. Installed under kvm-82
    2. Boot guest
    3. Shut down guest
    4. Image is now invalid as described.

    This is a very serious problem. Thought it sounds like a new separate bug may be required...

     
  • Daniel van Vugt

    Daniel van Vugt - 2009-01-15

    Reproduced qcow2 corruption again, using kvm-83 now. Same steps as before.

     
  • Daniel van Vugt

    Daniel van Vugt - 2009-01-21

    As the original problem is resolved, it's description now inaccurate, and my problem is ongoing, please close this bug. I will open a new one.

     
  • Adrian Bridgett

    Adrian Bridgett - 2009-01-24

    I've tested with new debian KVM-83 package - which also removes that fedora patch. I can't reproduce the corruption I had anymore. Feel free to close this bug. Thanks.

     
  • Avi Kivity

    Avi Kivity - 2009-08-10

    Should be fixed in kvm-88.

     
  • SourceForge Robot

    This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 14 days (the time period specified by
    the administrator of this Tracker).

     

Log in to post a comment.

MongoDB Logo MongoDB