Bug 1039557

Summary: optimize qemu-img for thin provisioned images
Product: Red Hat Enterprise Linux 7 Reporter: Paolo Bonzini <pbonzini>
Component: qemu-kvmAssignee: Paolo Bonzini <pbonzini>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.0CC: acathrow, juzhang, knoel, michen, pbonzini, sluo, virt-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-1.5.3-31.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-13 12:49:51 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1007815    
Bug Blocks:    

Description Paolo Bonzini 2013-12-09 13:00:50 UTC
qemu-img is not able to use information from the image metadata (like the information in qemu-img map).  This information can be used to speed up conversion of images.

Example:
$ qemu-img create prova.img 1G
Formatting 'prova.img', fmt=raw size=1073741824 

Without feature:
$ time qemu-img convert -f raw -O raw -t none prova.img prova2.img
real	0m0.504s
user	0m0.129s
sys	0m0.347s

With feature:
$ time ./qemu-img convert -f raw -O raw -t none prova.img prova2.img
real	0m0.281s
user	0m0.002s
sys	0m0.009s

The effect is even more visible with the "-p" option to qemu-img.

Comment 3 Sibiao Luo 2014-01-21 06:10:21 UTC
Reproduce and verify this issue with the same steps as comment #0.

# qemu-img create prova.img 1G
Formatting 'prova.img', fmt=raw size=1073741824 
# qemu-img info prova.img 
image: prova.img
file format: raw
virtual size: 1.0G (1073741824 bytes)
disk size: 0

With the unfixed qemu-kvm version:
# rpm -q qemu-kvm
qemu-kvm-1.5.3-30.el7.x86_64

# time qemu-img convert -f raw -O raw -t none prova.img prova1.img

real	0m0.435s
user	0m0.058s
sys	0m0.308s

With the fixed qemu-kvm version:
# rpm -q qemu-kvm
qemu-kvm-1.5.3-38.el7.x86_64

# time qemu-img convert -f raw -O raw -t none prova.img prova2.img

real	0m0.024s
user	0m0.002s
sys	0m0.001s

Base on above, this issue has been fixed correctly. Move to VERIFIED status.

Best Regards,
sluo

Comment 4 Ludek Smid 2014-06-13 12:49:51 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.