Bug 1251639

Summary: [PowerKVM]The md5sum value changed when file transfered after enable/disable multi queues repeatedly
Product: Red Hat Enterprise Linux 7 Reporter: Shuang Yu <shuyu>
Component: qemu-kvm-rhevAssignee: David Gibson <dgibson>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.2CC: knoel, michen, qzhang, shuyu, virt-maint, zhengtli
Target Milestone: rc   
Target Release: ---   
Hardware: ppc64le   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-18 18:10:19 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:

Description Shuang Yu 2015-08-08 07:17:38 UTC
Description of problem:

In the guest,enable and disable multi queues in a loop,ping guest from another external host during the loop,then transfer 6 files from guest to host,some  md5sum value changed.

Version-Release number of selected component (if applicable):

qemu-kvm-rhev-2.3.0-13.el7.ppc64le
kernel-3.10.0-302.el7.ppc64le

How reproducible:
3/3

Steps to Reproduce:

1.Boot the guest with multiple queues and vhost=on:
/usr/libexec/qemu-kvm...-netdev tap,id=hostnet1,script=/etc/qemu-ifup,vhost=on,queues=8 -device virtio-net-pci,netdev=hostnet1,id=net1,mac=00:54:5c:5b:5f:5a,disable-legacy=off,disable-modern=on,vectors=18,mq=on -smp 8

2.Transfer 6 files from guest to host,check the md5sum value of the files before and after transfered

3.Repeatedly change the working queues inside guest:
# for i in $(seq 5000); do for j in 1 2 1 3 1 4 1 5 1 6 1 7 1 8; do ethtool -L eth0 combined $j ; ethtool -l eth0; done; done

4.ping guest from another external host, until the 5000 times finished.
# ping $guest_ip

5.Transfer another 6 files from guest to host,and check the md5sum value of the files before and after transfered


Actual results:

After step2,all the md5sum value are same before and after file transfered from guest to host

After step4,one time no packet lost,two times 1% packet lost

After step5,some md5sum value changed after file transfered from guest to host,I test this issue 3 times ,one time 2 value changed,two times 1 value changed.


Expected results:
The md5sum value should alaways be same before and after file transfered from guest to host.

Additional info:

Comment 6 David Gibson 2015-08-14 03:46:13 UTC
Are you saying that you have been unable to reproduce with current kernel and qemu?  If so, I think we will have to close as INSUFFICIENT_DATA.

It's very surprising that the md5sum would change across the transfer with scp, since scp has internal checksumming.  A file mismatch in this case would suggest not a network problem, but a problem either reading the disk on the source, or writing the disk on the destination.  Unless the mismatch was due simply to a truncation of the files (interrupted transfer).

Comment 7 Shuang Yu 2015-08-14 10:05:11 UTC
(In reply to David Gibson from comment #6)
> Are you saying that you have been unable to reproduce with current kernel
> and qemu?  If so, I think we will have to close as INSUFFICIENT_DATA.
> 
Yes,I cannot reproduce this issue with the current kernel and qemu.

> It's very surprising that the md5sum would change across the transfer with
> scp, since scp has internal checksumming.  A file mismatch in this case
> would suggest not a network problem, but a problem either reading the disk
> on the source, or writing the disk on the destination.  Unless the mismatch
> was due simply to a truncation of the files (interrupted transfer).

During the file transfer without any interrupt action.

Comment 8 David Gibson 2015-08-18 18:10:19 UTC
Ok, since it can't be reproduced with the current, packages, I'm closing the bug.