Bug 1060248 - Multiple concurrent connections cause libvirtd SIGABRT
Summary: Multiple concurrent connections cause libvirtd SIGABRT
Alias: None
Product: Virtualization Tools
Classification: Community
Component: libvirt
Version: unspecified
Hardware: x86_64
OS: Linux
Target Milestone: ---
Assignee: Libvirt Maintainers
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2014-01-31 15:14 UTC by Florian Haas
Modified: 2016-04-10 17:44 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2016-04-10 17:44:36 UTC

Attachments (Terms of Use)
Log buffer dump after SIGABRT (64.67 KB, text/x-log)
2014-01-31 15:14 UTC, Florian Haas
no flags Details

Description Florian Haas 2014-01-31 15:14:12 UTC
Created attachment 857889 [details]
Log buffer dump after SIGABRT

Description of problem:

On a 48-core system, multiple concurrent connections cause libvirtd to crash with SIGABRT.

Version-Release number of selected component (if applicable):
libvirt-bin_1.1.1-0ubuntu8~cloud2_amd64.deb (from Ubuntu Cloud archive for OpenStack Havana)

How reproducible:

Steps to Reproduce:
1. Define a a sufficient number of domains (I use 50 to trigger the issue reliably, but have seen it happen on 10 or fewer). The domains do not have to be started.
2. Run multiple concurrent connections against libvirtd, like so:

for i in `seq 50`; do echo "test-1"; done | xargs -n1 -P 50 virsh domstate

Actual results:
libvirtd crashes with SIGABRT. Debug trace in attachment.

Expected results:
All virsh calls complete, unless some exceed the libvirtd max_client limit, in which case they should be rejected with -ECONNREFUSED. This is the behavior observed after downgrading to 1.0.2-0ubuntu11.13.04.5~cloud1 (which ships in Ubuntu Cloud Archive for Grizzly).

Additional info:
A complete script to define test domains and trigger the issue can be found at https://gist.github.com/fghaas/8705466

The issue cannot be reproduced on a system with significantly fewer cores (such as a workstation). Likewise, it also cannot be reproduced when the calls are serialized, such as executing 50 "virsh domstate" commands over the same virsh session.

Comment 1 Cole Robinson 2016-04-10 17:44:36 UTC
Sorry this never received a response. I don't know if this is fixed and I don't have a machine with that many cores to test. Given the age of the bug I'm just going to close it as DEFERRED, but if you can still reproduce with a more recent distro and libvirt please reopen and provide a recent backtrace

Note You need to log in before you can comment on or make changes to this bug.