NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/51132: virtio net device stuck for UDP burst transmission



>Number:         51132
>Category:       kern
>Synopsis:       virtio net device stuck for UDP burst transmission
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu May 12 13:10:00 +0000 2016
>Originator:     Kenichi Yasukata
>Release:        NetBSD 7.99.29
>Organization:
>Environment:
NetBSD 7.99.29

HOST Machine: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz

GUEST < NetBSD >

% uname -a
NetBSD  7.99.29 NetBSD 7.99.29 (MYKERNEL) #6: Tue May 10 10:14:30 JST
2016  root@:/usr/src/sys/arch/amd64/compile/MYKERNEL amd64

** MYKERNEL is just a copy of GENERIC

HOST < Ubuntu >
% uname -a
Linux N-1183 4.4.0-22-generic #39-Ubuntu SMP Thu May 5 16:53:32 UTC
2016 x86_64 x86_64 x86_64 GNU/Linux

VMM < QEMU/KVM >
QEMU version v2.6.0-rc0

( Command )
qemu-system-x86_64
    -enable-kvm \
    -curses \
    -m 4096 \
    -drive file=./nbsdvd.img \
    -net nic,model=virtio -net
tap,ifname=tap0,script=qemu-ifup,downscript=qemu-ifdown

% cat qemu-ifup
#!/bin/bash
echo "Bringing up $1 for bridged mode..."
ifconfig $1 0.0.0.0 promisc up
echo "Adding $1 to virbr0..."
brctl addif virbr0 $1
exit 0

% cat qemu-ifdown
#!/bin/bash
echo "Removing $1 to virbr0..."
brctl delif virbr0 $1
echo "Shutting down $1..."
ifconfig $1 down
exit 0
>Description:
When I try UDP burst transmission with vioif driver on KVM,
all network connections stuck.

If I change the driver model to e1000 at QEMU setting, this issue doesn't appear.

( I have posted this issue at tech-net mailing list http://mail-index.netbsd.org/tech-net/2016/05/11/msg005855.html )
>How-To-Repeat:
Burst UDP transmission with vioif driver on KVM.

Example program is here ( https://gist.github.com/jmmlmendes/aaea56a8b7044487595ef7a6782fc018 ).
>Fix:



Home | Main Index | Thread Index | Old Index