drive_mirror on a resized image creates file with wrong size

Bug #1103903 reported by Vish Ishaya
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Vish Ishaya

Bug Description

Repro steps:

qemu-img create -f qcow2 base 32M
qemu-img create -f qcow2 -o backing_file=base disk
qemu-img resize /home/vishvananda/disk 64M
qemu-system-x86_64 -drive file=disk,id=vda -vnc :1 -monitor stdio
QEMU 1.3.0 monitor - type 'help' for more information
(qemu) drive_mirror vda test
Formatting 'test', fmt=qcow2 size=33554432 backing_file='base' backing_fmt='qcow2' encryption=off cluster_size=65536 lazy_refcounts=off

the file is 32M instead of 64M:

qemu-img info test
image: test
file format: qcow2
virtual size: 32M (33554432 bytes)
disk size: 196K
cluster_size: 65536
backing file: base
backing file format: qcow2

Revision history for this message
Vish Ishaya (vishvananda) wrote :

Workaround is to precreate the new file of the proper size and pass -n

qemu-img create -f qcow2 base 32M
qemu-img create -f qcow2 -o backing_file=base disk
qemu-img resize /home/vishvananda/disk 64M
qemu-img create -f qcow2 -o backing_file=base test 64M
qemu-system-x86_64 -drive file=disk,id=vda -vnc :1 -monitor stdio
QEMU 1.3.0 monitor - type 'help' for more information
(qemu) drive_mirror vda test -n

Revision history for this message
Vish Ishaya (vishvananda) wrote :
Changed in qemu:
status: New → In Progress
assignee: nobody → Vish Ishaya (vishvananda)
Revision history for this message
Vish Ishaya (vishvananda) wrote :
Revision history for this message
Thomas Huth (th-huth) wrote :

Patch has been included here:
http://git.qemu.org/?p=qemu.git;a=commitdiff;h=8689907266b649b757c220
... so I think it should be OK to close this bug ticket now.

Changed in qemu:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.