Bug 962733

Summary: Without vhost=on, during netperf w/ protocol UDP_STREAM in guest, this guest can not response other thing
Product: Red Hat Enterprise Linux 7 Reporter: Qian Guo <qiguo>
Component: qemu-kvmAssignee: Michael S. Tsirkin <mst>
Status: CLOSED WONTFIX QA Contact: xiywang
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0CC: ailan, chayang, hhuang, jasowang, juzhang, knoel, michen, mst, rbalakri, virt-maint, xiywang
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1272311 1272312 (view as bug list) Environment:
Last Closed: 2018-02-07 23:02:08 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:    
Bug Blocks: 962749, 1272311, 1272312    
Attachments:
Description Flags
guest log from booting to finished the UDP_STREAM test w/o vhost=on none

Description Qian Guo 2013-05-14 10:53:23 UTC
Created attachment 747629 [details]
guest log from booting to finished the UDP_STREAM test w/o vhost=on

Description of problem:
Boot a rhel7 guest w/ a virtio-net-pci device, but w/o vhost=on, when test netperf and protocol UDP_STREAM inside guest, during the stress, guest can not response any other things, such as click mouse, input keys ...

If boot w/ vhost=on, won't hit this problem.

Version-Release number of selected component (if applicable):
# uname -r
3.9.0-0.55.el7.x86_64
# rpm -q qemu-kvm
qemu-kvm-1.4.0-4.el7.x86_64


How reproducible:
100%

Steps to Reproduce:
1.Boot a rhel7 guest w/ virtio-net-pci device but do not add option vhost=on.

/usr/libexec/qemu-kvm -M pc  -enable-kvm -m 4096 -smp 4,sockets=1,cores=4,threads=1 -name rhel7  -drive file=/home/rhel7cp1.qcow3,if=none,id=drive-ide1-1-0,format=qcow2,cache=none,werror=stop,rerror=stop,aio=threads -device ide-drive,bus=ide.1,drive=drive-ide1-1-0,id=ide1-1-0  -vnc :10 -vga qxl  -monitor stdio -nodefaults -nodefconfig -device virtio-balloon-pci,id=balloon1  -netdev tap,id=netdev1,script=/etc/qemu-ifup -device virtio-net-pci,netdev=netdev1,id=vnic1,mac=54:52:1a:23:0b:01

2.In any host run a netserver, and in this guest test nerperf w/ protocol UDP_STREAM

# netperf -H 10.66.106.3 -t UDP_STREAM -l 30

3.On the vnc window, try to type or click or send ctrl-alt-f2  

Actual results:
From the vnc window(w/ GUI), can not do anything, seams lose response.

Expected results:
guest works well 

Additional info:
1.When resume from the stress, cat the log, that from doing stress.

...
May 14 06:41:08 unused kernel: [  117.164075] psmouse serio1: Explorer Mouse at isa0060/serio1/input0 lost synchronization, throwing 1 bytes away.
May 14 06:41:08 unused kernel: [  117.195621] psmouse serio1: resync failed, issuing reconnect request
May 14 06:41:55 unused gnome-keyring-daemon[1494]: Gkm: unsupported key algorithm in certificate: 1.2.840.10045.2.1
May 14 06:41:55 unused gnome-keyring-daemon[1494]: Gkm: unsupported key algorithm in certificate: 1.2.840.10045.2.1
May 14 06:41:55 unused gnome-keyring-daemon[1494]: Gkm: unsupported key algorithm in certificate: 1.2.840.10045.2.1
May 14 06:41:55 unused gnome-keyring-daemon[1494]: Gkm: unsupported key algorithm in certificate: 1.2.840.10045.2.1
May 14 06:41:55 unused gnome-keyring-daemon[1494]: Gkm: unsupported key algorithm in certificate: 1.2.840.10045.2.1
...

will attach the whole log.

2. Test w/ vhost=on, not hit this problem, and test e1000, not hit this problem.
3. If you want to reproduce this, please set the time longer.

Comment 1 Qian Guo 2013-05-14 10:56:06 UTC
check the guest network

# ethtool -k eth0
Features for eth0:
rx-checksumming: off [fixed]
tx-checksumming: on
	tx-checksum-ipv4: off [fixed]
	tx-checksum-ip-generic: on
	tx-checksum-ipv6: off [fixed]
	tx-checksum-fcoe-crc: off [fixed]
	tx-checksum-sctp: off [fixed]
scatter-gather: on
	tx-scatter-gather: on
	tx-scatter-gather-fraglist: on
tcp-segmentation-offload: on
	tx-tcp-segmentation: on
	tx-tcp-ecn-segmentation: on
	tx-tcp6-segmentation: on
udp-fragmentation-offload: on
generic-segmentation-offload: on
generic-receive-offload: on
large-receive-offload: off [fixed]
rx-vlan-offload: off [fixed]
tx-vlan-offload: off [fixed]
ntuple-filters: off [fixed]
receive-hashing: off [fixed]
highdma: on [fixed]
rx-vlan-filter: on [fixed]
vlan-challenged: off [fixed]
tx-lockless: off [fixed]
netns-local: off [fixed]
tx-gso-robust: off [fixed]
tx-fcoe-segmentation: off [fixed]
tx-gre-segmentation: off [fixed]
fcoe-mtu: off [fixed]
tx-nocache-copy: on
loopback: off [fixed]
rx-fcs: off [fixed]
rx-all: off [fixed]

Comment 3 Qian Guo 2013-10-09 09:38:11 UTC
Test this with 
# uname -r 
3.10.0-33.el7.x86_64
# rpm -q qemu-kvm
qemu-kvm-1.5.3-7.el7.x86_64

1.If enable zerocopytx, won't hit this issue, if disable zerocopytx, even set vhost=on, will hit this.

2.If set sndbuf=1048576, this issue disappears.

Comment 4 jason wang 2013-10-10 02:15:53 UTC
(In reply to Qian Guo from comment #3)
> Test this with 
> # uname -r 
> 3.10.0-33.el7.x86_64
> # rpm -q qemu-kvm
> qemu-kvm-1.5.3-7.el7.x86_64
> 
> 1.If enable zerocopytx, won't hit this issue, if disable zerocopytx, even
> set vhost=on, will hit this.

This is because vhost limit the max pending buffers.
> 
> 2.If set sndbuf=1048576, this issue disappears.

Let's try to see if there's a workaround. Does using sfq in host or guest help to solve this issue?

Thanks

Comment 13 Red Hat Bugzilla 2023-09-14 01:44:10 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days