Bug 996011

Summary: vlan and queues options cause core dumped when qemu-kvm process quit(or ctrl+c)
Product: Red Hat Enterprise Linux 7 Reporter: FuXiangChun <xfu>
Component: qemu-kvmAssignee: Vlad Yasevich <vyasevic>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: low Docs Contact:
Priority: low    
Version: 7.0CC: hhuang, juzhang, knoel, michen, mst, qiguo, rbalakri, rmainz, virt-maint, vyasevic
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: qemu-kvm-1.5.3-70.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-05 08:01:18 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 FuXiangChun 2013-08-12 08:19:41 UTC
Description of problem:
With both vlan and queues option boot qemu-kvm process, it will cause core dump when qemu-kvm quit. so vlan and queues cann't be used together. 


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

How reproducible:
# uname -r
3.10.0-3.el7.x86_64
#qemu-kvm-1.5.2-1.el7.x86_64

Steps to Reproduce:
1./usr/libexec/qemu-kvm -monitor stdio -device virtio-net-pci,netdev=fuxc1,vlan=1

-netdev tap,id=fuxc1,vhost=on,script=/etc/qemu-ifup,queues=2

2.quit qemu-kvm process
(qemu) q

3.

Actual results:
(qemu) q
Detaching after fork from child process 24069.
/etc/qemu-ifdown: could not launch network script

Program received signal SIGSEGV, Segmentation fault.
qemu_free_net_client (nc=0x0) at net/net.c:291
291	    if (nc->send_queue) {
Missing separate debuginfos, use: debuginfo-install alsa-lib-1.0.27.1-2.el7.x86_64 celt051-0.5.1.3-6.el7.x86_64 cyrus-sasl-lib-2.1.26-9.el7.x86_64 cyrus-sasl-md5-2.1.26-9.el7.x86_64 cyrus-sasl-plain-2.1.26-9.el7.x86_64 dbus-libs-1.6.12-4.el7.x86_64 flac-libs-1.3.0-2.el7.x86_64 glib2-2.36.3-2.el7.x86_64 glibc-2.17-13.el7.x86_64 gmp-5.1.1-2.el7.x86_64 gnutls-3.1.13-1.el7.x86_64 gsm-1.0.13-9.el7.x86_64 json-c-0.11-1.el7.x86_64 keyutils-libs-1.5.5-4.el7.x86_64 krb5-libs-1.11.3-4.el7.x86_64 libICE-1.0.8-5.el7.x86_64 libSM-1.2.1-5.el7.x86_64 libX11-1.6.0-1.el7.x86_64 libXau-1.0.8-1.el7.x86_64 libXext-1.3.2-1.el7.x86_64 libXi-1.7.2-1.el7.x86_64 libXtst-1.2.2-1.el7.x86_64 libaio-0.3.109-9.el7.x86_64 libasyncns-0.8-5.el7.x86_64 libattr-2.4.46-10.el7.x86_64 libcap-2.22-6.el7.x86_64 libcom_err-1.42.8-2.el7.x86_64 libdb-5.3.21-11.el7.x86_64 libgcc-4.8.1-5.el7.x86_64 libgcrypt-1.5.2-2.el7.x86_64 libgpg-error-1.11-1.el7.x86_64 libiscsi-1.7.0-5.el7.x86_64 libjpeg-turbo-1.2.90-2.el7.x86_64 libogg-1.3.0-5.el7.x86_64 libpng-1.5.13-2.el7.x86_64 libseccomp-2.1.0-0.el7.x86_64 libselinux-2.1.13-16.el7.x86_64 libsndfile-1.0.25-7.el7.x86_64 libtasn1-3.3-1.el7.x86_64 libusbx-1.0.15-2.el7.x86_64 libuuid-2.23.1-3.el7.x86_64 libvorbis-1.3.3-4.el7.x86_64 libxcb-1.9-3.el7.x86_64 nettle-2.6-2.el7.x86_64 nspr-4.10-2.el7.x86_64 nss-3.15-6.el7.x86_64 nss-softokn-freebl-3.15-4.el7.x86_64 nss-util-3.15-2.el7.x86_64 openssl-libs-1.0.1e-14.el7.x86_64 p11-kit-0.18.5-1.el7.x86_64 pcre-8.32-7.el7.x86_64 pixman-0.30.0-1.el7.x86_64 pulseaudio-libs-3.0-10.el7.x86_64 tcp_wrappers-libs-7.6-74.el7.x86_64 usbredir-0.6-3.el7.x86_64 zlib-1.2.7-10.el7.x86_64
(gdb) bt
#0  qemu_free_net_client (nc=0x0) at net/net.c:291
#1  0x00005555556c5a00 in qemu_del_nic (nic=0x55555656b370) at net/net.c:355
#2  0x00005555556c7059 in net_cleanup () at net/net.c:1036
#3  0x00007ffff3929279 in __run_exit_handlers () from /lib64/libc.so.6
#4  0x00007ffff39292c5 in exit () from /lib64/libc.so.6
#5  0x00007ffff3911b4c in __libc_start_main () from /lib64/libc.so.6
#6  0x00005555555c4a6d in _start ()
(gdb)

Expected results:


Additional info:
If vlan option is unavailable, please remote it from qemu-kvm.

Comment 2 jason wang 2013-08-13 03:00:20 UTC
Low priority, we don't use vlan for qdev.

Comment 3 Ronen Hod 2014-02-26 19:31:38 UTC
Not a blocker, since it can only happen when running QEMU manually. (netdev and vlan together).
Vlad already fixed it upstream, so we shall get it as part of the 7.1 rebase.

Comment 5 Miroslav Rezanina 2014-09-12 12:55:35 UTC
Fix included in qemu-kvm-1.5.3-70.el7

Comment 7 Qian Guo 2014-10-13 07:40:47 UTC
Reproduced this bug with qemu-kvm-1.5.3-69.el7.x86_64
Steps:
1.Boot guest with vlan and queues
/usr/libexec/qemu-kvm -monitor stdio -device virtio-net-pci,netdev=fuxc1,vlan=1 -netdev tap,id=fuxc1,vhost=on,script=/etc/qemu-ifup,queues=2

2.quit it
(qemu) q
Detaching after fork from child process 6502.
/etc/qemu-ifdown: could not launch network script

Program received signal SIGSEGV, Segmentation fault.
qemu_free_net_client (nc=0x0) at net/net.c:291
291	    if (nc->send_queue) {
(gdb) bt
#0  qemu_free_net_client (nc=0x0) at net/net.c:291
#1  0x00005555556e6010 in qemu_del_nic (nic=0x5555565ac030) at net/net.c:355
#2  0x00005555556e7429 in net_cleanup () at net/net.c:1092
#3  0x00007ffff2c95e79 in __run_exit_handlers () from /lib64/libc.so.6
#4  0x00007ffff2c95ec5 in exit () from /lib64/libc.so.6
#5  0x00007ffff2c7eafc in __libc_start_main () from /lib64/libc.so.6
#6  0x0000555555605fed in _start ()
(gdb) 

So this bug is reproduced.

Comment 8 Qian Guo 2014-10-13 07:58:58 UTC
Verify this bug with qemu-kvm-1.5.3-75.el7.x86_64

Try to launch qemu-kvm
# /usr/libexec/qemu-kvm -monitor stdio -device virtio-net-pci,netdev=fuxc1,vlan=2 -netdev tap,id=fuxc1,vhost=on,script=/etc/qemu-ifup,queues=2

Result: Can not boot when vlan and netdev together.
QEMU 1.5.3 monitor - type 'help' for more information
(qemu) qemu-kvm: -device virtio-net-pci,netdev=fuxc1,vlan=2: Property 'virtio-net-pci.vlan' doesn't take value 'legacy-vlan'
/etc/qemu-ifdown: could not launch network script

So this bug is fixed by qemu-kvm-1.5.3-75.el7.x86_64

Verify this this bug with qemu-kvm-rhev-2.1.2-3.el7.x86_64

Try to launch qemu-kvm
# /usr/libexec/qemu-kvm -monitor stdio -device virtio-net-pci,netdev=fuxc1,vlan=2 -netdev tap,id=fuxc1,vhost=on,script=/etc/qemu-ifup,queues=2

Result: Can not boot when vlan and netdev together.
QEMU 2.1.2 monitor - type 'help' for more information
(qemu) qemu-kvm: -device virtio-net-pci,netdev=fuxc1,vlan=2: Property 'virtio-net-pci.vlan' doesn't take value 'vlan'
/etc/qemu-ifdown: could not launch network script

So this bug is fixed by qemu-kvm-rhev-2.1.2-3.el7.x86_64


So according to above, this bug is verified

Comment 10 errata-xmlrpc 2015-03-05 08:01:18 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/RHSA-2015-0349.html