Bug 696774 - [RFE] Multithread libvirt operations
Summary: [RFE] Multithread libvirt operations
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: libvirt
Version: 5.6
Hardware: All
OS: Linux
medium
low
Target Milestone: rc
: ---
Assignee: Eric Blake
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On: 696772
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-04-14 19:45 UTC by J.H.M. Dassen (Ray)
Modified: 2018-11-14 13:20 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of: 696772
Environment:
Last Closed: 2011-04-15 15:16:23 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description J.H.M. Dassen (Ray) 2011-04-14 19:45:29 UTC
+++ This bug was initially created as a clone of Bug #696772 +++

2. What is the nature and description of the request?

Currently libvirtd seems to be single threaded, so if libvirtd is migrating a
vm between hosts - any other commands seem to be queued. For minor commands,
'list' for example, this is almost imperceptible, however migrations etc cause
long stalls. Also only one thing can happen at a time, migrations etc must be
serialized.

   3. Why does the customer need this?

This will allow us to do bulk migrations in much shorter times, it will also
allow multiple requests to be serviced simultaneously. This is becoming more
important as our density is now over 200 vms and we are looking to reach beyond
300-400 with 512gig ram servers.

   4. How would the customer like to achieve this? 

Its easy enough to replicate, just ..
- start terminal1, start terminal2
- terminal1: virsh -c qemu+ssh://host.local/system
- terminal2: virsh -c qemu+ssh://host.local/system
- terminal1: migrate ... (etc)
- terminal2: list

   5. For each functional requirement listed in question 4, specify how Red Hat
and the customer can test to confirm the requirement is successfully
implemented.

[Not specified]

   6. Is there already an existing RFE upstream or in Red Hat bugzilla?

No
http://wiki.libvirt.org/page/TodoDaemonMultithreading

   7. How quickly does this need resolved?

RHEL 5.7

   8. Does this request meet the RHEL Inclusion criteria?

Yes

   9. List the affected packages :

libvirt

  10. Would the customer be able to assist in testing this functionality if
implemented?

Yes

Comment 2 Eric Blake 2011-04-15 15:16:23 UTC
(In reply to comment #0)
>    4. How would the customer like to achieve this? 
> 
> Its easy enough to replicate, just ..
> - start terminal1, start terminal2
> - terminal1: virsh -c qemu+ssh://host.local/system
> - terminal2: virsh -c qemu+ssh://host.local/system
> - terminal1: migrate ... (etc)
> - terminal2: list

This has worked since upstream libvirt 0.7.3 (Nov 2009).

>    6. Is there already an existing RFE upstream or in Red Hat bugzilla?
> 
> No
> http://wiki.libvirt.org/page/TodoDaemonMultithreading

That wiki page was written in Aug 2008, more than a year before it was implemented, and no one has bothered to take it down yet.  I'll take care of that after closing this bug.

> 
>    7. How quickly does this need resolved?
> 
> RHEL 5.7

RHEL 5.5 was the last RHEL release that used a libvirt build that pre-dated the upstream addition of concurrent qemu operations.


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