Bug 1025596

Summary: Read/Randread/Randrw performance regression
Product: Red Hat Enterprise Linux 6 Reporter: Jan Kurik <jkurik>
Component: qemu-kvmAssignee: Fam Zheng <famz>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 6.5CC: acathrow, areis, asias, bsarathy, famz, juzhang, kwolf, michen, minovotn, mkenneth, mrezanin, pm-eus, qzhang, stefanha, virt-maint, wquan, xigao
Target Milestone: rcKeywords: Regression, ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: qemu-kvm-0.12.1.2-2.415.el6_5.2 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-22 00:25:55 UTC Type: ---
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: 1022548    
Bug Blocks:    

Description Jan Kurik 2013-11-01 03:46:11 UTC
This bug has been copied from bug #1022548 and has been proposed
to be backported to 6.5 z-stream (EUS).

Comment 9 Qunfang Zhang 2013-11-08 08:21:24 UTC
Test the following scenarios according to Kevin and Fam's suggestions on qemu-kvm-0.12.1.2-2.415.el6_5.1. But there's some problem in scenario (2).

(1) Internal snapshot with qcow2 => Pass.
a. Boot a guest with qcow2 format
b. Create internal snapshot 1 during the guest boot.
(qemu) savevm 1
c. Login guest after guest boot up and ping external host. Then create another internal snapshot
(qemu) savevm 2
d. (qemu) loadvm 1
c. (qemu) loadvm 2

Result: Internal snapshot could be created and loaded successfully.

(2)  qemu-img create -f vmdk -o subformat=monolithicFlat /tmp/a.vmdk 1G
Formatting '/tmp/a.vmdk', fmt=vmdk size=1073741824 compat6=off subformat='monolithicFlat' zeroed_grain=off 
[root@localhost home]# 
[root@localhost home]# 
[root@localhost home]# qemu-img info /tmp/a.vmdk 
image: /tmp/a.vmdk
file format: raw
virtual size: 0 (0 bytes)
disk size: 4.0K
[root@localhost home]# 

==> As a result, the file format is raw instead of "vmdk", and the virtual size is 0 instead of 1G.

Downgrade the qemu-kvm to qemu-kvm-0.12.1.2-2.415.el6, no this issue:

# rpm -qa | grep qemu
gpxe-roms-qemu-0.9.7-6.10.el6.noarch
qemu-img-0.12.1.2-2.415.el6.x86_64
qemu-kvm-0.12.1.2-2.415.el6.x86_64
qemu-kvm-debuginfo-0.12.1.2-2.415.el6.x86_64
qemu-kvm-tools-0.12.1.2-2.415.el6.x86_64 

[root@localhost qemu-kvm-415]#  qemu-img create -f vmdk -o subformat=monolithicFlat /tmp/b.vmdk 1G
Formatting '/tmp/b.vmdk', fmt=vmdk size=1073741824 compat6=off subformat='monolithicFlat' zeroed_grain=off 
[root@localhost qemu-kvm-415]# 
[root@localhost qemu-kvm-415]# 
[root@localhost qemu-kvm-415]# qemu-img info /tmp/b.vmdk
image: /tmp/b.vmdk
file format: vmdk
virtual size: 1.0G (1073741824 bytes)
disk size: 4.0K

Hi, Kevin and Fam

Could you help have a look at scenario (2)?  Is this a regression? 

Thanks,
Qunfang

Comment 10 Qunfang Zhang 2013-11-08 08:31:51 UTC
Change the status back to ASSIGNED according to comment 9, please help have a check and help fix it asap. Thanks a lot.

Comment 14 Qunfang Zhang 2013-11-12 07:18:56 UTC
Test the following scenarios on qemu-kvm-0.12.1.2-2.415.el6_5.2.x86_64, passed.

(1) Internal snapshot with qcow2 => Pass.
a. Boot a guest with qcow2 format
b. Create internal snapshot 1 during the guest boot.
(qemu) savevm 1
c. Login guest after guest boot up and ping external host. Then create another internal snapshot
(qemu) savevm 2
d. (qemu) loadvm 1
c. (qemu) loadvm 2

Result: Internal snapshot could be created and loaded successfully.

(2) #  qemu-img create -f vmdk -o subformat=monolithicFlat /tmp/a.vmdk 1G
Formatting '/tmp/a.vmdk', fmt=vmdk size=1073741824 compat6=off subformat='monolithicFlat' zeroed_grain=off 
[root@localhost home]# 
[root@localhost home]# qemu-img info /tmp/a.vmdk 
image: /tmp/a.vmdk
file format: vmdk  ==> This is correct.
virtual size: 1.0G (1073741824 bytes)
disk size: 4.0K



[root@localhost home]#  qemu-img create -f vmdk -o subformat=monolithicFlat /tmp/b.vmdk 100G
Formatting '/tmp/b.vmdk', fmt=vmdk size=107374182400 compat6=off subformat='monolithicFlat' zeroed_grain=off 
[root@localhost home]# 
[root@localhost home]# 
[root@localhost home]# qemu-img info /tmp/b.vmdk 
image: /tmp/b.vmdk
file format: vmdk  ==> This is correct.
virtual size: 100G (107374182400 bytes)
disk size: 4.0K

Besides, we will run performance test, function test (virtual block, glusterfs, storage vm migration, qcow2, vmdk) to verify this bug.

Comment 21 errata-xmlrpc 2013-11-22 00:25:55 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-1750.html