Bug 1238585 - drive-mirror has spurious failures with low 'granularity' values
Summary: drive-mirror has spurious failures with low 'granularity' values
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev
Version: 7.2
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: Stefan Hajnoczi
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 1233115 1233826
TreeView+ depends on / blocked
 
Reported: 2015-07-02 08:25 UTC by Stefan Hajnoczi
Modified: 2015-12-04 16:48 UTC (History)
18 users (show)

Fixed In Version: qemu-kvm-rhev-2.3.0-17.el7
Doc Type: Bug Fix
Doc Text:
Clone Of: 1233826
Environment:
Last Closed: 2015-12-04 16:48:30 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:2546 0 normal SHIPPED_LIVE qemu-kvm-rhev bug fix and enhancement update 2015-12-04 21:11:56 UTC

Comment 2 Miroslav Rezanina 2015-08-12 09:03:26 UTC
Fix included in qemu-kvm-rhev-2.3.0-17.el7

Comment 4 Shaolong Hu 2015-08-17 02:58:01 UTC
Verification of this bug is blocked by bug:

Bug 1251487 - qemu core dump when do drive mirror

Comment 7 Pei Zhang 2015-09-08 10:44:24 UTC
Summary: Verified this bug on x86_64. The block mirror job works well with granularity=8192, and guest also works well. So the verification results can prove that this bug has been fixed.

Verified:
Host versions:
kernel:3.10.0-314.el7.x86_64
qemu-kvm-rhev:qemu-kvm-rhev-2.3.0-22.el7.x86_64

Guest image info:
# qemu-img info iscsi://10.66.9.120:3260/iscsi.disk1/1
image: iscsi://10.66.9.120:3260/iscsi.disk1/1
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: unavailable
cluster_size: 65536
Format specific information:
    compat: 0.10
    refcount bits: 16

Steps:
1.boot guest
/usr/libexec/qemu-kvm -name rhel7.2 -machine pc-i440fx-rhel7.2.0,accel=kvm \
-cpu SandyBridge -m 2G,slots=256,maxmem=40G -numa node \
-smp 4,sockets=2,cores=2,threads=1 \
-uuid 82b1a01e-5f6c-4f5f-8d27-3855a74e6b61 \
-netdev tap,id=hostnet0 \
-device virtio-net-pci,netdev=hostnet0,id=net0,mac=12:54:00:5c:88:61 \
-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vgamem_mb=16 \
-spice port=5900,addr=0.0.0.0,disable-ticketing,image-compression=off,seamless-migration=on \
-monitor stdio \
-serial unix:/tmp/monitor,server,nowait \
-qmp tcp:0:5555,server,nowait \
-drive file=iscsi://10.66.9.120:3260/iscsi.disk1/1,if=none,id=drive-scsi-disk0,format=qcow2,cache=none,werror=stop,rerror=stop \
-device virtio-scsi-pci,id=scsi0 \
-device scsi-hd,drive=drive-scsi-disk0,bus=scsi0.0,scsi-id=0,lun=0,id=scsi-disk0,bootindex=0 \


2.start mirror job,set granularity=8192, the mirror job works well.
{"execute":"drive-mirror","arguments":{"device":"drive-scsi-disk0","target":"/home/mirror1.qcow2","granularity":8192,"sync":"full","mode":"absolute-paths","format":"qcow2"}}
{"return": {}}
{"timestamp": {"seconds": 1441707774, "microseconds": 512686}, "event": "BLOCK_JOB_READY", "data": {"device": "drive-scsi-disk0", "len": 1127940096, "offset": 1127940096, "speed": 0, "type": "mirror"}}


3.check mirror job
{"execute":"query-block-jobs"}
{"return": [{"io-status": "ok", "device": "drive-scsi-disk0", "busy": false, "len": 1128046592, "offset": 1128046592, "paused": false, "speed": 0, "ready": true, "type": "mirror"}]}


4. dd 1G file in guest, and check disk size of mirror device. The mirror device also increase 1G which is expected.
#dd if=/dev/zero of=/home/test1 bs=1M count=1024

before dd
# qemu-img info /home/mirror1.qcow2 
image: /home/mirror1.qcow2
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 1.1G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false

after dd
# qemu-img info /home/mirror1.qcow2 
image: /home/mirror1.qcow2
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 2.1G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false


So this bug has been fixed.

Comment 8 juzhang 2015-09-09 09:02:12 UTC
According to comment7, set this issue as verified.

Comment 10 errata-xmlrpc 2015-12-04 16:48:30 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.

https://rhn.redhat.com/errata/RHBA-2015-2546.html


Note You need to log in before you can comment on or make changes to this bug.