kvm + virtio disk corrupts large volumes (>1TB).
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
KVM |
Unknown
|
Unknown
|
|||
qemu-kvm (Ubuntu) |
Fix Released
|
High
|
Serge Hallyn | ||
Lucid |
Fix Released
|
High
|
Serge Hallyn | ||
Maverick |
Fix Released
|
High
|
Serge Hallyn |
Bug Description
Binary package hint: qemu-kvm
See this bug:
http://
I have confirmed that this happens with 10.04 host and guest. Giving kvm a logical virtio volume of 1024 GB works; a logical volume of 1048 GB fails to install and produces disk errors on the guest (but not on the host). Changing the kvm configuration to use an IDE volume instead works fine even with a 1.7TB volume.
SRU Justification:
1. Impact: Use of > 1Tb virtio disk in kvm will almost certainly cause data corruption
2. How bug addressed: A minimal patch was cherry-picked from upstream, which addresses the fact that the difference between the start addresses of two requests can be > sizeof(int).
3. Patch: See lp:~serge-hallyn/ubuntu/lucid/qemu-kvm/virtio-corrupt, in particular the patch block-fix-
4. To reproduce: Create a 1.3Tb qemu disk or LVM partition. Run kvm with this as the virtio hard drive and a natty installer as cdrom. Select the default drive configurations (use whole disk with LVM). The installer will hang at this step.
qemu-img create -f raw test.img 1300G
kvm -cdrom natty-server-
Re-test with the packages from the attached qemu-virtio-
5. Regression potential: The patch is taken from upstream. If there is a regression, it can only impact qemu-kvm itself.
Changed in qemu-kvm (Ubuntu Lucid): | |
assignee: | Dustin Kirkland (kirkland) → Serge Hallyn (serge-hallyn) |
Changed in qemu-kvm (Ubuntu Maverick): | |
assignee: | Dustin Kirkland (kirkland) → Serge Hallyn (serge-hallyn) |
Changed in qemu-kvm (Ubuntu Lucid): | |
status: | Triaged → In Progress |
description: | updated |
tags: | added: verification-needed |
description: | updated |
tags: |
added: verification-done removed: verification-needed |
Marking Confirmed/High, added upstream bug.