[libvirt] libvirt 0.9.0 crashes on first start since boot

Hi, I've upgraded to 0.9.0 today on my Debian Squeeze boxes. Everything went fine, expect on one node (and only on that one, although the setup is identical), the first start of libvirtd since boot (and again, only that start) crashes with SEGV. Here are traces from gdb: http://pastebin.com/DiZrw0S5 http://pastebin.com/eacJRv07 If I delete the PID-file and start libvirtd again, it works fine. It doesn't seem to matter when the first start since boot happens, I've deactivated startup of libvirtd at boot time. Any ideas or further infos needed? thanks & regards, thomas

On 04/14/2011 12:47 PM, Thomas Treutner wrote:
Hi,
I've upgraded to 0.9.0 today on my Debian Squeeze boxes. Everything went fine, expect on one node (and only on that one, although the setup is identical), the first start of libvirtd since boot (and again, only that start) crashes with SEGV.
Here are traces from gdb:
http://pastebin.com/DiZrw0S5 http://pastebin.com/eacJRv07
If I delete the PID-file and start libvirtd again, it works fine. It doesn't seem to matter when the first start since boot happens, I've deactivated startup of libvirtd at boot time.
Any ideas or further infos needed?
thanks & regards, thomas
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list it seems like the bug is in here:
src/network/bridge_driver.c:1669 - if brSetForwardDelay fails, we goto err1 where we want to access macTapIfName variable, which was VIR_FREE'd just before (on line 1660). I'll fix this. Regards, Michal

On 04/14/2011 06:47 AM, Thomas Treutner wrote:
Hi,
I've upgraded to 0.9.0 today on my Debian Squeeze boxes. Everything went fine, expect on one node (and only on that one, although the setup is identical), the first start of libvirtd since boot (and again, only that start) crashes with SEGV.
Here are traces from gdb:
http://pastebin.com/DiZrw0S5 http://pastebin.com/eacJRv07
If I delete the PID-file and start libvirtd again, it works fine. It doesn't seem to matter when the first start since boot happens, I've deactivated startup of libvirtd at boot time.
Any ideas or further infos needed?
Aside from Michal's fix to the error *recovery*, the more interesting question is why this is now failing. The bits of system log we can see in the pastebin shows that dnsmasq failed with an exit code of 2. From the manpage, this means: 2 - A problem with network access occurred (address in use, attempt to use privileged ports without permission). Do you have a system instance of dnsmasq already running? (perhaps it's already listening on all interfaces) Can you send the output of "dnsmasq -v; ps -AlF | grep dnsmasq"? Also, does the directory /usr/local/var/lib/libvirt/dnsmasq exist? (note that the log messages from iptables about the CHECKSUM target are non-fatal, and just indicate that you need a newer kernel and iptables before you can use virtio-net + guests with DHCP)

Am 14.04.2011 17:34, schrieb Laine Stump:
On 04/14/2011 06:47 AM, Thomas Treutner wrote:
Hi,
I've upgraded to 0.9.0 today on my Debian Squeeze boxes. Everything went fine, expect on one node (and only on that one, although the setup is identical), the first start of libvirtd since boot (and again, only that start) crashes with SEGV.
Here are traces from gdb:
http://pastebin.com/DiZrw0S5 http://pastebin.com/eacJRv07
If I delete the PID-file and start libvirtd again, it works fine. It doesn't seem to matter when the first start since boot happens, I've deactivated startup of libvirtd at boot time.
Any ideas or further infos needed?
Aside from Michal's fix to the error *recovery*, the more interesting question is why this is now failing.
The bits of system log we can see in the pastebin shows that dnsmasq failed with an exit code of 2. From the manpage, this means:
2 - A problem with network access occurred (address in use, attempt to use privileged ports without permission).
Do you have a system instance of dnsmasq already running? (perhaps it's already listening on all interfaces) Can you send the output of "dnsmasq -v; ps -AlF | grep dnsmasq"?
Indeed: root@node05:~# dnsmasq -v; ps -AlF | grep dnsmasq Dnsmasq version 2.55 Copyright (c) 2000-2010 Simon Kelley Compile time options IPv6 GNU-getopt DBus I18N DHCP TFTP This software comes with ABSOLUTELY NO WARRANTY. Dnsmasq is free software, and you are welcome to redistribute it under the terms of the GNU General Public License, version 2 or 3. 5 S dnsmasq 2647 1 0 80 0 - 5981 - 856 3 14:54 ? 00:00:00 /usr/sbin/dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u dnsmasq -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new 0 S root 3544 3473 0 80 0 - 2180 - 852 3 14:56 pts/0 00:00:00 grep dnsmasq I removed dnsmasq startup from the runlevel, now it works fine. I have seen dnsmasq errors for a long time, but I didn't really care too much about, as I don't need dnsmasq and the warnings didn't stop libvrit from working. I think I'll just deinstall dnsmasq.
Also, does the directory /usr/local/var/lib/libvirt/dnsmasq exist?
Jep: # ls /usr/local/var/lib/libvirt/dnsmasq default.leases thanks, -t

On 04/15/2011 09:03 AM, Thomas Treutner wrote:
I removed dnsmasq startup from the runlevel, now it works fine. I have seen dnsmasq errors for a long time, but I didn't really care too much about, as I don't need dnsmasq and the warnings didn't stop libvrit from working. I think I'll just deinstall dnsmasq.
Are you sure you want to uninstall dnsmasq, and not just disable it in the system config? If you uninstall dnsmasq, libvirt will fail to start the virtual networks - it uses dnsmasq to provide DNS for those networks even if you don't specify a dhcp range or hosts.

On 04/17/2011 11:31 AM, Laine Stump wrote:
On 04/15/2011 09:03 AM, Thomas Treutner wrote:
I removed dnsmasq startup from the runlevel, now it works fine. I have seen dnsmasq errors for a long time, but I didn't really care too much about, as I don't need dnsmasq and the warnings didn't stop libvrit from working. I think I'll just deinstall dnsmasq.
Are you sure you want to uninstall dnsmasq, and not just disable it in the system config? If you uninstall dnsmasq, libvirt will fail to start the virtual networks - it uses dnsmasq to provide DNS for those networks even if you don't specify a dhcp range or hosts.
Thanks for info, but I've not experienced such problems in my setup. I have a bridged network for the guests, static IPs and my DNS server in the guests /etc/resolv.conf - and everything works fine that way. I assume I don't need dnsmasq in such a setup?

On 04/18/2011 12:50 PM, Thomas Treutner wrote:
On 04/17/2011 11:31 AM, Laine Stump wrote:
On 04/15/2011 09:03 AM, Thomas Treutner wrote:
I removed dnsmasq startup from the runlevel, now it works fine. I have seen dnsmasq errors for a long time, but I didn't really care too much about, as I don't need dnsmasq and the warnings didn't stop libvrit from working. I think I'll just deinstall dnsmasq.
Are you sure you want to uninstall dnsmasq, and not just disable it in the system config? If you uninstall dnsmasq, libvirt will fail to start the virtual networks - it uses dnsmasq to provide DNS for those networks even if you don't specify a dhcp range or hosts.
Thanks for info, but I've not experienced such problems in my setup. I have a bridged network for the guests, static IPs and my DNS server in the guests /etc/resolv.conf - and everything works fine that way. I assume I don't need dnsmasq in such a setup?
Ah, so even though you have a <network> defined ("default", which is there when you install libvirt), you don't use it, so the failure to bring it up isn't an issue for you (as long as you don't mind the error message each time you restart libvirt). (dnsmasq is only setup/used for the virtual networks). If you're not using the default network, you might want to delete it...
participants (3)
-
Laine Stump
-
Michal Prívozník
-
Thomas Treutner