Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
DescriptionNiklas Andersson
2011-10-11 18:59:23 UTC
Created attachment 527525[details]
libvirt configuration file for guest
Description of problem:
I tried to attach a guest VM in libvirt to an external bridge using the virtio driver, which results in the guest VM crashing (segfaults, see logs below).
It seems to be isolated to the virtio driver, as other drivers such as e1000 and rtl8139 works perfectly. The guest VM I'm using has the necessary virtio drivers and it works with internal libvirt created bridges.
Also, this works seamlessly in RHEL 6.0 - so I guess there's some bug coming in between these versions.
Version-Release number of selected component (if applicable):
RHEL 6.1
libvirt - 0.8.7
How reproducible:
every time
Steps to Reproduce:
1. Bring up an external bridge with brctl and attach it to an em, e.g.:
# brctl addbr br0
# brctl addif br0 em2
2. Define a new domain (guest VM) according to the attached configuration file which attaches one interface to the external bridge created in step 1.
3. Start the VM with # virsh start vm1
Actual results:
The VM crashes, after about 10-15s.
libvirt log at /var/log/libvirt/qemu/vm1.log says:
================================================================
2011-10-11 11:19:00.343: starting up
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.1.0 -no-kvm -m 125 -smp 1,sockets=1,cores=1,threads=1 -name vm1 -uuid 21dffb59-aa01-43f5-8a9b-daea4f410bc6 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm1.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -boot c -drive file=/vms/images/vm1.img,if=none,id=drive-ide0-0-0,format=raw -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -netdev tap,fd=22,id=hostnet0,vhost=on,vhostfd=23 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:23:20:d8:70:2e,bus=pci.0,addr=0x3 -usb -vnc 127.0.0.1:0 -k en-us -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4
Using CPU model "cpu64-rhel6"
2011-10-11 11:19:20.575: shutting down
================================================================
OS messages log at /var/log/messages says:
================================================================
Oct 11 11:18:50 kvm1 libvirtd: 11:18:50.016: 5949: warning : lxcStartup:2128 : Unable to create cgroup for driver: No such device or address
Oct 11 11:19:00 kvm1 kernel: device vnet0 entered promiscuous mode
Oct 11 11:19:00 kvm1 libvirtd: 11:19:00.344: 5953: warning : qemudStartVMDaemon:3336 : Executing /usr/libexec/qemu-kvm
Oct 11 11:19:00 kvm1 libvirtd: 11:19:00.348: 5953: warning : qemudStartVMDaemon:3346 : Executing done /usr/libexec/qemu-kvm
Oct 11 11:19:00 kvm1 qemu-kvm: Could not find keytab file: /etc/qemu/krb5.tab: No such file or directory
Oct 11 11:19:20 kvm1 kernel: qemu-kvm[6071]: segfault at 30 ip 0000000000422906 sp 00007fffb51cb790 error 4 in qemu-kvm[400000+2c2000]
Oct 11 11:19:20 kvm1 abrt[6097]: can't read /proc/6071/exe link
Oct 11 11:19:20 kvm1 kernel: device vnet0 left promiscuous mode
Oct 11 11:19:20 kvm1 kernel: br0: port 2(vnet0) entering disabled state
================================================================
Expected results:
Running VM that doesn't crash
Hi, Niklas
Notice that there's "no-kvm" parameter in the command line. So could you change the <domain type="qemu"> to <domain type="kvm"> to enable kvm?
Also the guest's memory is 125M, what's your guest os? Could you give more memory to have a try?
Created attachment 527525 [details] libvirt configuration file for guest Description of problem: I tried to attach a guest VM in libvirt to an external bridge using the virtio driver, which results in the guest VM crashing (segfaults, see logs below). It seems to be isolated to the virtio driver, as other drivers such as e1000 and rtl8139 works perfectly. The guest VM I'm using has the necessary virtio drivers and it works with internal libvirt created bridges. Also, this works seamlessly in RHEL 6.0 - so I guess there's some bug coming in between these versions. Version-Release number of selected component (if applicable): RHEL 6.1 libvirt - 0.8.7 How reproducible: every time Steps to Reproduce: 1. Bring up an external bridge with brctl and attach it to an em, e.g.: # brctl addbr br0 # brctl addif br0 em2 2. Define a new domain (guest VM) according to the attached configuration file which attaches one interface to the external bridge created in step 1. 3. Start the VM with # virsh start vm1 Actual results: The VM crashes, after about 10-15s. libvirt log at /var/log/libvirt/qemu/vm1.log says: ================================================================ 2011-10-11 11:19:00.343: starting up LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.1.0 -no-kvm -m 125 -smp 1,sockets=1,cores=1,threads=1 -name vm1 -uuid 21dffb59-aa01-43f5-8a9b-daea4f410bc6 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm1.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -boot c -drive file=/vms/images/vm1.img,if=none,id=drive-ide0-0-0,format=raw -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -netdev tap,fd=22,id=hostnet0,vhost=on,vhostfd=23 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:23:20:d8:70:2e,bus=pci.0,addr=0x3 -usb -vnc 127.0.0.1:0 -k en-us -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 Using CPU model "cpu64-rhel6" 2011-10-11 11:19:20.575: shutting down ================================================================ OS messages log at /var/log/messages says: ================================================================ Oct 11 11:18:50 kvm1 libvirtd: 11:18:50.016: 5949: warning : lxcStartup:2128 : Unable to create cgroup for driver: No such device or address Oct 11 11:19:00 kvm1 kernel: device vnet0 entered promiscuous mode Oct 11 11:19:00 kvm1 libvirtd: 11:19:00.344: 5953: warning : qemudStartVMDaemon:3336 : Executing /usr/libexec/qemu-kvm Oct 11 11:19:00 kvm1 libvirtd: 11:19:00.348: 5953: warning : qemudStartVMDaemon:3346 : Executing done /usr/libexec/qemu-kvm Oct 11 11:19:00 kvm1 qemu-kvm: Could not find keytab file: /etc/qemu/krb5.tab: No such file or directory Oct 11 11:19:20 kvm1 kernel: qemu-kvm[6071]: segfault at 30 ip 0000000000422906 sp 00007fffb51cb790 error 4 in qemu-kvm[400000+2c2000] Oct 11 11:19:20 kvm1 abrt[6097]: can't read /proc/6071/exe link Oct 11 11:19:20 kvm1 kernel: device vnet0 left promiscuous mode Oct 11 11:19:20 kvm1 kernel: br0: port 2(vnet0) entering disabled state ================================================================ Expected results: Running VM that doesn't crash