2007-02-23 02:56:28 +08:00
|
|
|
libvirt Authors
|
|
|
|
===============
|
|
|
|
|
|
|
|
The libvirt project was initiated by:
|
|
|
|
|
|
|
|
Daniel Veillard <veillard@redhat.com> or <daniel@veillard.com>
|
|
|
|
|
2008-04-24 20:35:28 +08:00
|
|
|
The primary maintainers and people with commit access rights:
|
2007-02-23 02:56:28 +08:00
|
|
|
|
2008-04-24 15:56:37 +08:00
|
|
|
Daniel Veillard <veillard@redhat.com>
|
|
|
|
Daniel Berrange <berrange@redhat.com>
|
|
|
|
Richard W.M. Jones <rjones@redhat.com>
|
2008-04-24 20:35:28 +08:00
|
|
|
Mark McLoughlin <markmc@redhat.com>
|
|
|
|
Anthony Liguori <aliguori@us.ibm.com>
|
|
|
|
Jim Meyering <meyering@redhat.com>
|
2011-09-02 06:13:34 +08:00
|
|
|
Jim Fehlig <jfehlig@suse.com>
|
2008-04-24 20:35:28 +08:00
|
|
|
Chris Lalancette <clalance@redhat.com>
|
2008-09-03 20:24:50 +08:00
|
|
|
Cole Robinson <crobinso@redhat.com>
|
2009-01-07 01:20:27 +08:00
|
|
|
Guido Günther <agx@sigxcpu.org>
|
2009-01-07 00:18:59 +08:00
|
|
|
John Levon <john.levon@sun.com>
|
2009-09-24 21:32:16 +08:00
|
|
|
Matthias Bolte <matthias.bolte@googlemail.com>
|
2011-01-26 01:31:00 +08:00
|
|
|
Jiří Denemark <jdenemar@redhat.com>
|
2010-03-12 18:30:07 +08:00
|
|
|
Dave Allan <dallan@redhat.com>
|
2010-03-30 17:32:06 +08:00
|
|
|
Laine Stump <laine@redhat.com>
|
|
|
|
Stefan Berger <stefanb@us.ibm.com>
|
|
|
|
Eric Blake <eblake@redhat.com>
|
2010-09-08 22:13:19 +08:00
|
|
|
Justin Clift <jclift@redhat.com>
|
2011-01-31 09:31:33 +08:00
|
|
|
Osier Yang <jyang@redhat.com>
|
2011-03-22 10:10:15 +08:00
|
|
|
Wen Congyang <wency@cn.fujitsu.com>
|
2011-04-29 17:28:28 +08:00
|
|
|
Michal Prívozník <mprivozn@redhat.com>
|
2011-09-24 01:15:37 +08:00
|
|
|
Peter Krempa <pkrempa@redhat.com>
|
2011-12-08 18:13:01 +08:00
|
|
|
Christophe Fergeau <cfergeau@redhat.com>
|
2012-02-06 18:33:57 +08:00
|
|
|
Alex Jia <ajia@redhat.com>
|
2012-04-16 16:57:06 +08:00
|
|
|
Martin Kletzander <mkletzan@redhat.com>
|
2011-03-22 10:10:15 +08:00
|
|
|
|
|
|
|
Previous maintainers:
|
|
|
|
Karel Zak <kzak@redhat.com>
|
|
|
|
Atsushi SAKAI <sakaia@jp.fujitsu.com>
|
|
|
|
Dave Leskovec <dlesko@linux.vnet.ibm.com>
|
|
|
|
Dan Smith <danms@us.ibm.com>
|
2007-02-23 02:56:28 +08:00
|
|
|
|
|
|
|
Patches have also been contributed by:
|
|
|
|
|
|
|
|
David Lutterkort <dlutter@redhat.com>
|
|
|
|
Andrew Puch <apuch@redhat.com>
|
|
|
|
Philippe Berthault <philippe.berthault@Bull.net>
|
|
|
|
Hugh Brock <hbrock@redhat.com>
|
|
|
|
Michel Ponceau <michel.ponceau@bull.net>
|
|
|
|
Jeremy Katz <katzj@redhat.com>
|
|
|
|
Pete Vetere <pvetere@redhat.com>
|
|
|
|
Kazuki Mizushima <mizushima.kazuk@jp.fujitsu.com>
|
2007-02-27 23:32:18 +08:00
|
|
|
Saori Fukuta <fukuta.saori@jp.fujitsu.com>
|
2007-03-03 04:19:08 +08:00
|
|
|
Tatsuro Enokura <fj7716hz@aa.jp.fujitsu.com>
|
2007-03-07 04:00:17 +08:00
|
|
|
Takahashi Tomohiro <takatom@jp.fujitsu.com>
|
2007-03-08 21:49:47 +08:00
|
|
|
Nobuhiro Itou <fj0873gn@aa.jp.fujitsu.com>
|
|
|
|
Masayuki Sunou <fj1826dm@aa.jp.fujitsu.com>
|
2007-06-15 23:27:39 +08:00
|
|
|
Mark Johnson <johnson.nh@gmail.com>
|
2007-07-12 16:57:52 +08:00
|
|
|
Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
|
2007-08-13 17:53:35 +08:00
|
|
|
Shuveb Hussain <shuveb@binarykarma.com>
|
|
|
|
Jim Paris <jim@jtan.com>
|
2008-01-15 23:18:33 +08:00
|
|
|
Daniel Hokka Zakrisson <daniel@hozac.com>
|
2008-03-29 04:38:21 +08:00
|
|
|
Mads Chr. Olesen <shiyee@shiyee.dk>
|
2008-04-25 23:48:04 +08:00
|
|
|
Anton Protopopov <aspsk2@gmail.com>
|
2008-05-15 22:04:14 +08:00
|
|
|
Stefan de Konink <dekonink@kinkrsoftware.nl>
|
2008-06-12 16:56:59 +08:00
|
|
|
Kaitlin Rupert <kaitlin@linux.vnet.ibm.com>
|
2008-07-09 19:57:40 +08:00
|
|
|
Evgeniy Sokolov <evg@openvz.org>
|
2008-07-30 16:52:44 +08:00
|
|
|
David Lively <dlively@virtualiron.com>
|
2008-08-01 14:28:33 +08:00
|
|
|
Charles Duffy <Charles_Duffy@messageone.com>
|
2008-08-18 17:24:46 +08:00
|
|
|
Nguyen Anh Quynh <aquynh@gmail.com>
|
2008-09-04 16:15:05 +08:00
|
|
|
James Morris <jmorris@namei.org>
|
2009-09-24 21:50:51 +08:00
|
|
|
Chris Wright <chrisw@redhat.com>
|
2009-01-20 04:24:12 +08:00
|
|
|
Ben Guthro <ben.guthro@gmail.com>
|
2008-10-31 21:06:17 +08:00
|
|
|
Shigeki Sakamoto <fj0588di@aa.jp.fujitsu.com>
|
2012-07-30 16:42:59 +08:00
|
|
|
Gerd von Egidy <gerd@egidy.de>
|
2008-12-11 19:44:30 +08:00
|
|
|
Itamar Heim <iheim@redhat.com>
|
2009-01-19 23:24:41 +08:00
|
|
|
Markus Armbruster <armbru@redhat.com>
|
2009-03-02 18:26:37 +08:00
|
|
|
Ryota Ozaki <ozaki.ryota@gmail.com>
|
2009-03-03 17:09:00 +08:00
|
|
|
Daniel J Walsh <dwalsh@redhat.com>
|
2009-03-04 21:17:44 +08:00
|
|
|
Maximilian Wilhelm <max@rfc2324.org>
|
2009-03-16 18:47:12 +08:00
|
|
|
Pritesh Kothari <Pritesh.Kothari@Sun.COM>
|
2009-03-20 20:17:56 +08:00
|
|
|
Amit Shah <amit.shah@redhat.com>
|
2009-04-03 23:25:38 +08:00
|
|
|
Florian Vichot <florian.vichot@diateam.net>
|
2009-04-16 04:04:22 +08:00
|
|
|
Serge E. Hallyn <serue@us.ibm.com>
|
2010-08-10 22:13:22 +08:00
|
|
|
Soren Hansen <soren@linux2go.dk>
|
2009-05-25 19:56:00 +08:00
|
|
|
Abel Míguez Rodríguez<amiguezr@pdi.ucm.es>
|
2011-05-21 04:18:09 +08:00
|
|
|
Doug Goldstein <cardoe@cardoe.com>
|
2009-06-25 21:55:58 +08:00
|
|
|
Javier Fontan <jfontan@gmail.com>
|
2011-05-13 18:11:47 +08:00
|
|
|
Federico Simoncelli <fsimonce@redhat.com>
|
2009-06-25 23:02:10 +08:00
|
|
|
Amy Griffis <amy.griffis@hp.com>
|
2009-06-27 00:18:59 +08:00
|
|
|
Henrik Persson E <henrik.e.persson@ericsson.com>
|
2009-07-02 22:02:18 +08:00
|
|
|
Satoru SATOH <satoru.satoh@gmail.com>
|
2009-07-16 22:40:08 +08:00
|
|
|
Paolo Bonzini <pbonzini@redhat.com>
|
2009-09-02 01:37:38 +08:00
|
|
|
Miloslav Trmač <mitr@redhat.com>
|
2009-12-22 19:16:57 +08:00
|
|
|
Jamie Strandboge <jamie@canonical.com>
|
|
|
|
Gerhard Stenzel <gerhard.stenzel@de.ibm.com>
|
|
|
|
Matthew Booth <mbooth@redhat.com>
|
|
|
|
Diego Elio Pettenò <flameeyes@gmail.com>
|
|
|
|
Adam Litke <agl@us.ibm.com>
|
|
|
|
Steve Yarmie <steve.yarmie@gmail.com>
|
|
|
|
Dan Kenigsberg <danken@redhat.com>
|
|
|
|
Yuji NISHIDA <nishidy@nict.go.jp>
|
2010-03-09 05:59:52 +08:00
|
|
|
Dustin Xiong <x_k_123@hotmail.com>
|
|
|
|
Rolf Eike Beer <eike@sf-mail.de>
|
|
|
|
Wolfgang Mauerer <wolfgang.mauerer@siemens.com>
|
python: Fix networkLookupByUUID
According to:
http://libvirt.org/html/libvirt-libvirt.html#virNetworkLookupByUUID
virNetworkLookupByUUID() expects a virConnectPtr as its first argument,
thus making it a method of the virConnect Python class.
Currently it's a method of libvirt.virNetwork.
@@ -805,13 +805,6 @@ class virNetwork:
if ret == -1: raise libvirtError ('virNetworkGetAutostart() failed', net=self)
return ret
- def networkLookupByUUID(self, uuid):
- """Try to lookup a network on the given hypervisor based on its UUID. """
- ret = libvirtmod.virNetworkLookupByUUID(self._o, uuid)
- if ret is None:raise libvirtError('virNetworkLookupByUUID() failed', net=self)
- __tmp = virNetwork(self, _obj=ret)
- return __tmp
-
class virInterface:
def __init__(self, conn, _obj=None):
self._conn = conn
@@ -1689,6 +1682,13 @@ class virConnect:
__tmp = virDomain(self,_obj=ret)
return __tmp
+ def networkLookupByUUID(self, uuid):
+ """Try to lookup a network on the given hypervisor based on its UUID. """
+ ret = libvirtmod.virNetworkLookupByUUID(self._o, uuid)
+ if ret is None:raise libvirtError('virNetworkLookupByUUID() failed', conn=self)
+ __tmp = virNetwork(self, _obj=ret)
+ return __tmp
+
2010-03-18 00:34:04 +08:00
|
|
|
Philipp Hahn <hahn@univention.de>
|
2010-03-31 22:39:33 +08:00
|
|
|
Ed Swierk <eswierk@aristanetworks.com>
|
|
|
|
Paolo Smiraglia <paolo.smiraglia@gmail.com>
|
|
|
|
Sharadha Prabhakar <sharadha.prabhakar@citrix.com>
|
2010-04-23 04:13:03 +08:00
|
|
|
Chris Wong <wongc-redhat@hoku.net>
|
|
|
|
Daniel Berteaud <daniel@firewall-services.com>
|
|
|
|
Dustin Kirkland <kirkland@canonical.com>
|
|
|
|
Luiz Capitulino <lcapitulino@redhat.com>
|
|
|
|
Ryan Harper <ryanh@us.ibm.com>
|
|
|
|
Spencer Shimko <sshimko@tresys.com>
|
2010-04-23 21:48:10 +08:00
|
|
|
Marco Bozzolan <bozzolan@gmail.com>
|
2010-05-25 06:29:06 +08:00
|
|
|
Alex Williamson <alex.williamson@redhat.com>
|
|
|
|
Ersek Laszlo <lacos@caesar.elte.hu>
|
|
|
|
Kenneth Nagin <NAGIN@il.ibm.com>
|
|
|
|
Klaus Ethgen <Klaus@Ethgen.de>
|
2010-05-28 05:24:19 +08:00
|
|
|
Bryan Kearney <bkearney@redhat.com>
|
|
|
|
Darry L. Pierce <dpierce@redhat.com>
|
|
|
|
David Jorm <dfj@redhat.com>
|
|
|
|
Eduardo Otubo <otubo@linux.vnet.ibm.com>
|
|
|
|
Garry Dolley <gdolley@arpnetworks.com>
|
|
|
|
Harshavardhana <harsha@gluster.com>
|
|
|
|
Jonas Eriksson <jonas.j.eriksson@ericsson.com>
|
|
|
|
Jun Koi <junkoi2004@gmail.com>
|
|
|
|
Olivier Fourdan <ofourdan@redhat.com>
|
|
|
|
Ron Yorston <rmy@tigress.co.uk>
|
|
|
|
Shahar Klein <shaharklein@yahoo.com>
|
|
|
|
Taizo ITO <taizo.ito@hde.co.jp>
|
|
|
|
Thomas Treutner <thomas@scripty.at>
|
|
|
|
Jean-Baptiste Rouault <jean-baptiste.rouault@diateam.net>
|
|
|
|
Марк Коренберг <socketpair@gmail.com>
|
2010-06-20 02:08:25 +08:00
|
|
|
Alan Pevec <apevec@redhat.com>
|
2010-08-03 03:55:33 +08:00
|
|
|
Aurelien Rougemont <beorn@binaries.fr>
|
2010-08-18 01:44:27 +08:00
|
|
|
Patrick Dignan <pat_dignan@dell.com>
|
2010-06-16 06:46:21 +08:00
|
|
|
Serge Hallyn <serge.hallyn@canonical.com>
|
2010-10-12 22:03:24 +08:00
|
|
|
Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com>
|
2010-10-12 15:13:16 +08:00
|
|
|
Lai Jiangshan <laijs@cn.fujitsu.com>
|
2010-10-14 23:17:42 +08:00
|
|
|
Harsh Prateek Bora <harsh@linux.vnet.ibm.com>
|
2010-10-20 16:32:57 +08:00
|
|
|
John Morrissey <jwm@horde.net>
|
2011-03-03 12:52:14 +08:00
|
|
|
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
|
2010-11-30 15:12:54 +08:00
|
|
|
Hu Tao <hutao@cn.fujitsu.com>
|
2010-12-06 01:53:26 +08:00
|
|
|
Laurent Léonard <laurent@open-minds.org>
|
2010-12-06 15:24:09 +08:00
|
|
|
MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
|
2012-07-03 02:55:26 +08:00
|
|
|
Josh Durgin <josh.durgin@inktank.com>
|
2010-12-14 00:07:38 +08:00
|
|
|
Roopa Prabhu <roprabhu@cisco.com>
|
2010-12-20 19:31:19 +08:00
|
|
|
Paweł Krześniak <pawel.krzesniak@gmail.com>
|
2011-01-06 16:14:58 +08:00
|
|
|
Kay Schubert <kayegypt@web.de>
|
2011-01-10 19:12:32 +08:00
|
|
|
Marc-André Lureau <marcandre.lureau@redhat.com>
|
2011-01-28 20:52:18 +08:00
|
|
|
Juerg Haefliger <juerg.haefliger@hp.com>
|
2010-04-21 22:28:21 +08:00
|
|
|
Matthias Dahl <mdvirt@designassembly.de>
|
2011-02-02 00:22:01 +08:00
|
|
|
Niels de Vos <ndevos@redhat.com>
|
2011-02-03 23:09:00 +08:00
|
|
|
Davidlohr Bueso <dave@gnu.org>
|
2011-02-04 07:40:46 +08:00
|
|
|
Alon Levy <alevy@redhat.com>
|
2011-02-09 01:30:03 +08:00
|
|
|
Hero Phương <herophuong93@gmail.com>
|
|
|
|
Zdenek Styblik <stybla@turnovfree.net>
|
2011-02-09 01:41:17 +08:00
|
|
|
Gui Jianfeng <guijianfeng@cn.fujitsu.com>
|
2011-02-09 10:05:19 +08:00
|
|
|
Michal Novotny <minovotn@redhat.com>
|
2011-02-21 21:40:06 +08:00
|
|
|
Markus Groß <gross@univention.de>
|
2011-03-05 00:52:12 +08:00
|
|
|
Phil Petty <phpetty@cisco.com>
|
2011-03-02 16:07:48 +08:00
|
|
|
Taku Izumi <izumi.taku@jp.fujitsu.com>
|
2011-03-08 19:06:51 +08:00
|
|
|
Minoru Usui <usui@mxm.nes.nec.co.jp>
|
2011-03-06 01:36:23 +08:00
|
|
|
Tiziano Mueller <dev-zero@gentoo.org>
|
2011-03-22 22:33:22 +08:00
|
|
|
Thibault VINCENT <thibault.vincent@smartjog.com>
|
2011-03-30 09:19:47 +08:00
|
|
|
Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
|
2011-03-28 09:30:14 +08:00
|
|
|
Jesse Cook <code.crashenx@gmail.com>
|
2011-04-15 16:57:06 +08:00
|
|
|
Alexander Todorov <atodorov@otb.bg>
|
2011-04-17 14:34:10 +08:00
|
|
|
Richard Laager <rlaager@wiktel.com>
|
2011-04-22 17:45:33 +08:00
|
|
|
Mark Wu <dwu@redhat.com>
|
2011-04-27 20:09:12 +08:00
|
|
|
Yufang Zhang <yuzhang@redhat.com>
|
2011-06-30 16:22:20 +08:00
|
|
|
Supriya Kannery <supriyak@linux.vnet.ibm.com>
|
2011-05-17 19:26:09 +08:00
|
|
|
Dirk Herrendoerfer <d.herrendoerfer@herrendoerfer.name>
|
2011-05-27 01:28:54 +08:00
|
|
|
Taisuke Yamada <tai@rakugaki.org>
|
2011-06-03 00:23:43 +08:00
|
|
|
Heath Petersen <HeathPetersen@Kandre.com>
|
2011-06-03 21:43:30 +08:00
|
|
|
Neil Wilson <neil@aldur.co.uk>
|
2011-06-15 00:17:09 +08:00
|
|
|
Ohad Levy <ohadlevy@gmail.com>
|
2011-06-13 11:05:45 +08:00
|
|
|
Michael Chapman <mike@very.puzzling.org>
|
2011-06-15 21:27:43 +08:00
|
|
|
Daniel Gollub <gollub@b1-systems.de>
|
2011-06-24 00:35:30 +08:00
|
|
|
David S. Wang <dwang2@cisco.com>
|
2011-06-26 17:39:14 +08:00
|
|
|
Ruben Kerkhof <ruben@rubenkerkhof.com>
|
2011-07-01 18:40:21 +08:00
|
|
|
Scott Moser <smoser@ubuntu.com>
|
2011-07-03 20:09:44 +08:00
|
|
|
Guannan Ren <gren@redhat.com>
|
2011-07-07 10:45:05 +08:00
|
|
|
John Williams <john.williams@petalogix.com>
|
2011-07-08 23:13:54 +08:00
|
|
|
Michael Santos <michael.santos@gmail.com>
|
2011-07-12 03:50:31 +08:00
|
|
|
Oskari Saarenmaa <os@ohmu.fi>
|
2011-07-13 16:36:32 +08:00
|
|
|
Nan Zhang <nzhang@redhat.com>
|
2011-07-22 23:53:16 +08:00
|
|
|
Wieland Hoffmann <themineo@googlemail.com>
|
2011-08-15 15:44:39 +08:00
|
|
|
Douglas Schilling Landgraf <dougsland@redhat.com>
|
2011-08-17 14:30:02 +08:00
|
|
|
Tom Vijlbrief <tom.vijlbrief@xs4all.nl>
|
2011-08-24 23:30:51 +08:00
|
|
|
Shradha Shah <sshah@solarflare.com>
|
2011-08-25 00:48:20 +08:00
|
|
|
Steve Hodgson <shodgson@solarflare.com>
|
2011-08-29 10:52:23 +08:00
|
|
|
Xu He Jie <xuhj@linux.vnet.ibm.com>
|
2011-09-05 15:52:03 +08:00
|
|
|
Lei Li <lilei@linux.vnet.ibm.com>
|
2011-09-09 21:59:26 +08:00
|
|
|
Matthias Witte <witte@netzquadrat.de>
|
2011-10-07 17:34:47 +08:00
|
|
|
Tang Chen <tangchen@cn.fujitsu.com>
|
2011-10-11 23:30:50 +08:00
|
|
|
Dan Horák <dan@danny.cz>
|
2011-09-20 12:13:42 +08:00
|
|
|
Sage Weil <sage@newdream.net>
|
2011-10-19 03:55:25 +08:00
|
|
|
David L Stevens <dlstevens@us.ibm.com>
|
2011-10-25 07:43:47 +08:00
|
|
|
Tyler Coumbes <coumbes@gmail.com>
|
2012-07-10 02:08:52 +08:00
|
|
|
Royce Lv <lvroyce@linux.vnet.ibm.com>
|
2011-10-21 13:56:07 +08:00
|
|
|
Patrice LACHANCE <patlachance@gmail.com>
|
2011-11-11 13:50:46 +08:00
|
|
|
Eli Qiao <taget@linux.vnet.ibm.com>
|
2011-11-15 04:26:55 +08:00
|
|
|
Michael Wood <esiotrot@gmail.com>
|
2011-11-11 20:51:45 +08:00
|
|
|
Bharata B Rao <bharata@linux.vnet.ibm.com>
|
2011-11-22 11:31:22 +08:00
|
|
|
Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
|
2011-11-22 15:34:40 +08:00
|
|
|
Chang Liu <lingjiao.lc@taobao.com>
|
2011-11-28 22:26:57 +08:00
|
|
|
Lorin Hochstein <lorin@isi.edu>
|
2011-11-28 20:15:25 +08:00
|
|
|
Christian Franke <nobody@nowhere.ws>
|
2011-10-03 20:56:20 +08:00
|
|
|
Prerna Saxena <prerna@linux.vnet.ibm.com>
|
2011-12-08 14:41:24 +08:00
|
|
|
Michael Ellerman <michael@ellerman.id.au>
|
2011-12-12 21:58:52 +08:00
|
|
|
Rommer <rommer@active.by>
|
2011-12-30 22:22:43 +08:00
|
|
|
Yuri Chornoivan <yurchor@ukr.net>
|
2012-01-10 20:53:31 +08:00
|
|
|
Deepak C Shetty <deepakcs@linux.vnet.ibm.com>
|
virCommandProcessIO(): make poll() usage more robust
POLLIN and POLLHUP are not mutually exclusive. Currently the following
seems possible: the child writes 3K to its stdout or stderr pipe, and
immediately closes it. We get POLLIN|POLLHUP (I'm not sure that's possible
on Linux, but SUSv4 seems to allow it). We read 1K and throw away the
rest.
When poll() returns and we're about to check the /revents/ member in a
given array element, let's map all the revents bits to two (independent)
ideas: "let's attempt to read()", and "let's attempt to write()". This
should cover all errors, EOFs, and normal conditions; the read()/write()
call should report any pending error.
Under this approach, both POLLHUP and POLLERR are mapped to "needs read()"
if we're otherwise prepared for POLLIN. POLLERR also maps to "needs
write()" if we're otherwise prepared for POLLOUT. The rest of the mappings
(POLLPRI etc.) would be easy, but probably useless for pipes.
Additionally, SUSv4 doesn't appear to forbid POLLIN|POLLERR (or
POLLOUT|POLLERR) set simultaneously. One could argue that the read() or
write() call would return without blocking in these cases (with an error),
so POLLIN / POLLOUT would be justified beside POLLERR.
The code now penalizes POLLIN|POLLERR differently from plain POLLERR. The
former (ie. read() returning -1) is terminal and we jump to cleanup, while
plain POLLERR masks only the affected file descriptor for the future.
Let's unify those.
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
2012-01-24 22:55:19 +08:00
|
|
|
Laszlo Ersek <lersek@redhat.com>
|
2012-01-24 10:26:18 +08:00
|
|
|
Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
|
2012-01-27 01:16:16 +08:00
|
|
|
Marcelo Cerri <mhcerri@linux.vnet.ibm.com>
|
2012-01-30 20:36:46 +08:00
|
|
|
Hendrik Schwartke <hendrik@os-t.de>
|
2012-02-11 05:09:00 +08:00
|
|
|
Ansis Atteka <aatteka@nicira.com>
|
|
|
|
Dan Wendlandt <dan@nicira.com>
|
|
|
|
Kyle Mestery <kmestery@cisco.com>
|
2012-02-20 11:21:00 +08:00
|
|
|
Lincoln Myers <lincoln_myers@yahoo.com>
|
2012-02-21 00:27:11 +08:00
|
|
|
Peter Robinson <pbrobinson@gmail.com>
|
2012-02-24 00:37:30 +08:00
|
|
|
Benjamin Cama <benoar@dolka.fr>
|
2012-03-07 00:15:41 +08:00
|
|
|
Duncan Rance <libvirt@dunquino.com>
|
2012-03-09 15:26:24 +08:00
|
|
|
Peng Zhou <ailvpeng25@gmail.com>
|
2012-03-23 12:29:00 +08:00
|
|
|
Li Zhang <zhlcindy@linux.vnet.ibm.com>
|
2012-03-27 22:20:54 +08:00
|
|
|
Stef Walter <stefw@gnome.org>
|
2012-03-28 04:00:01 +08:00
|
|
|
Christian Benvenuti <benve@cisco.com>
|
2012-04-05 04:30:43 +08:00
|
|
|
Ilja Livenson <ilja.livenson@gmail.com>
|
2012-04-06 00:44:35 +08:00
|
|
|
Stefan Bader <stefan.bader@canonical.com>
|
2012-04-09 11:40:52 +08:00
|
|
|
MATSUDA Daiki <matsudadik@intellilink.co.jp>
|
2012-03-13 23:48:27 +08:00
|
|
|
Jan Kiszka <jan.kiszka@siemens.com>
|
2012-04-21 20:13:02 +08:00
|
|
|
Ryan Woodsmall <rwoodsmall@gmail.com>
|
2012-04-25 18:43:09 +08:00
|
|
|
Wido den Hollander <wido@widodh.nl>
|
2012-05-03 01:53:41 +08:00
|
|
|
Eugen Feller <eugen.feller@inria.fr>
|
2012-05-03 02:32:37 +08:00
|
|
|
Dmitry Guryanov <dguryanov@parallels.com>
|
2012-05-14 23:14:19 +08:00
|
|
|
William Jon McCann <william.jon.mccann@gmail.com>
|
2012-05-14 17:53:02 +08:00
|
|
|
David Weber <wb@munzinger.de>
|
2012-06-02 00:25:33 +08:00
|
|
|
Marti Raudsepp <marti@juffo.org>
|
2012-06-04 15:32:37 +08:00
|
|
|
Radu Caragea <dmns_serp@yahoo.com>
|
2012-05-23 13:50:02 +08:00
|
|
|
Beat Jörg <Beat.Joerg@ssatr.ch>
|
2012-06-11 22:08:09 +08:00
|
|
|
Gao feng <gaofeng@cn.fujitsu.com>
|
2012-06-19 18:21:47 +08:00
|
|
|
Dipankar Sarma <dipankar@in.ibm.com>
|
2012-06-21 21:45:25 +08:00
|
|
|
Gerd Hoffmann <kraxel@redhat.com>
|
2012-06-25 22:56:44 +08:00
|
|
|
Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com>
|
|
|
|
Thang Pham <thang.pham@us.ibm.com>
|
Fix vm's outbound traffic control problem
Hello,
This is a patch to fix vm's outbound traffic control problem.
Currently, vm's outbound traffic control by libvirt doesn't go well.
This problem was previously discussed at libvir-list ML, however
it seems that there isn't still any answer to the problem.
http://www.redhat.com/archives/libvir-list/2011-August/msg00333.html
I measured Guest(with virtio-net) to Host TCP throughput with the
command "netperf -H".
Here are the outbound QoS parameters and the results.
outbound average rate[kilobytes/s] : Guest to Host throughput[Mbit/s]
======================================================================
1024 (8Mbit/s) : 4.56
2048 (16Mbit/s) : 3.29
4096 (32Mbit/s) : 3.35
8192 (64Mbit/s) : 3.95
16384 (128Mbit/s) : 4.08
32768 (256Mbit/s) : 3.94
65536 (512Mbit/s) : 3.23
The outbound traffic goes down unreasonably and is even not controled.
The cause of this problem is too large mtu value in "tc filter" command run by
libvirt. The command uses burst value to set mtu and the burst is equal to
average rate value if it's not set. This value is too large. For example
if the average rate is set to 1024 kilobytes/s, the mtu value is set to 1024
kilobytes. That's too large compared to the size of network packets.
Here libvirt applies tc ingress filter to Host's vnet(tun) device.
Tc ingress filter is implemented with TBF(Token Buckets Filter) algorithm. TBF
uses mtu value to calculate the amount of token consumed by each packet. With too
large mtu value, the token consumption rate is set too large. This leads to
token starvation and deterioration of TCP throughput.
Then, should we use the default mtu value 2 kilobytes?
The anser is No, because Guest with virtio-net device uses 65536 bytes
as mtu to transmit packets to Host, and the tc filter with the default mtu
value 2k drops packets whose size is larger than 2k. So, the most packets
is droped and again leads to deterioration of TCP throughput.
The appropriate mtu value is 65536 bytes which is equal to the maximum value
of network interface device defined in <linux/netdevice.h>. The value is
not so large that it causes token starvation and not so small that it
drops most packets.
Therefore this patch set the mtu value to 64kb(== 65535 bytes).
Again, here are the outbound QoS parameters and the TCP throughput with
the libvirt patched.
outbound average rate[kilobytes/s] : Guest to Host throughput[Mbit/s]
======================================================================
1024 (8Mbit/s) : 8.22
2048 (16Mbit/s) : 16.42
4096 (32Mbit/s) : 32.93
8192 (64Mbit/s) : 66.85
16384 (128Mbit/s) : 133.88
32768 (256Mbit/s) : 271.01
65536 (512Mbit/s) : 547.32
The outbound traffic conforms to the given limit.
Thank you,
Signed-off-by: Eiichi Tsukata <eiichi.tsukata.xh@hitachi.com>
2012-06-29 14:09:16 +08:00
|
|
|
Eiichi Tsukata <eiichi.tsukata.xh@hitachi.com>
|
2012-07-11 23:34:58 +08:00
|
|
|
Sascha Peilicke <saschpe@suse.de>
|
2012-07-12 23:28:17 +08:00
|
|
|
Chuck Short <chuck.short@canonical.com>
|
2012-07-19 03:06:58 +08:00
|
|
|
Sebastian Wiedenroth <wiedi@frubar.net>
|
2012-07-19 14:14:18 +08:00
|
|
|
Ata E Husain Bohra <ata.husain@hotmail.com>
|
2012-07-25 22:01:24 +08:00
|
|
|
Ján Tomko <jtomko@redhat.com>
|
2012-08-04 04:33:05 +08:00
|
|
|
Richa Marwaha <rmarwah@linux.vnet.ibm.com>
|
2012-08-09 04:59:41 +08:00
|
|
|
Peter Feiner <peter@gridcentric.ca>
|
2012-08-14 00:32:50 +08:00
|
|
|
Frido Roose <frido.roose@gmail.com>
|
2012-08-14 04:21:10 +08:00
|
|
|
Asad Saeed <asad.saeed@acidseed.com>
|
2012-08-15 15:57:53 +08:00
|
|
|
Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
|
network: use firewalld instead of iptables, when available
* configure.ac, spec file: firewalld defaults to enabled if dbus is
available, otherwise is disabled. If --with_firewalld is explicitly
requested and dbus is not available, configure will fail.
* bridge_driver: add dbus filters to get the FirewallD1.Reloaded
signal and DBus.NameOwnerChanged on org.fedoraproject.FirewallD1.
When these are encountered, reload all the iptables reuls of all
libvirt's virtual networks (similar to what happens when libvirtd is
restarted).
* iptables, ebtables: use firewall-cmd's direct passthrough interface
when available, otherwise use iptables and ebtables commands. This
decision is made once the first time libvirt calls
iptables/ebtables, and that decision is maintained for the life of
libvirtd.
* Note that the nwfilter part of this patch was separated out into
another patch by Stefan in V2, so that needs to be revised and
re-reviewed as well.
================
All the configure.ac and specfile changes are unchanged from Thomas'
V3.
V3 re-ran "firewall-cmd --state" every time a new rule was added,
which was extremely inefficient. V4 uses VIR_ONCE_GLOBAL_INIT to set
up a one-time initialization function.
The VIR_ONCE_GLOBAL_INIT(x) macro references a static function called
vir(Ip|Eb)OnceInit(), which will then be called the first time that
the static function vir(Ip|Eb)TablesInitialize() is called (that
function is defined for you by the macro). This is
thread-safe, so there is no chance of any race.
IMPORTANT NOTE: I've left the VIR_DEBUG messages in these two init
functions (one for iptables, on for ebtables) as VIR_WARN so that I
don't have to turn on all the other debug message just to see
these. Even if this patch doesn't need any other modification, those
messages need to be changed to VIR_DEBUG before pushing.
This one-time initialization works well. However, I've encountered
problems with testing:
1) Whenever I have enabled the firewalld service, *all* attempts to
call firewall-cmd from within libvirtd end with firewall-cmd hanging
internally somewhere. This is *not* the case if firewall-cmd returns
non-0 in response to "firewall-cmd --state" (i.e. *that* command runs
and returns to libvirt successfully.)
2) If I start libvirtd while firewalld is stopped, then start
firewalld later, this triggers libvirtd to reload its iptables rules,
however it also spits out a *ton* of complaints about deletion failing
(I suppose because firewalld has nuked all of libvirt's rules). I
guess we need to suppress those messages (which is a more annoying
problem to fix than you might think, but that's another story).
3) I noticed a few times during this long line of errors that
firewalld made a complaint about "Resource Temporarily
unavailable. Having libvirtd access iptables commands directly at the
same time as firewalld is doing so is apparently problematic.
4) In general, I'm concerned about the "set it once and never change
it" method - if firewalld is disabled at libvirtd startup, causing
libvirtd to always use iptables/ebtables directly, this won't cause
*terrible* problems, but if libvirtd decides to use firewall-cmd and
firewalld is later disabled, libvirtd will not be able to recover.
2012-08-15 02:59:52 +08:00
|
|
|
Thomas Woerner <twoerner@redhat.com>
|
2012-08-20 21:58:50 +08:00
|
|
|
J.B. Joret <jb@linux.vnet.ibm.com>
|
2012-08-22 21:59:11 +08:00
|
|
|
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
|
2012-08-23 00:59:24 +08:00
|
|
|
Gene Czarcinski <gene@czarc.net>
|
2012-08-31 03:27:27 +08:00
|
|
|
Nishank Trivedi <nistrive@cisco.com>
|
2012-09-04 22:57:09 +08:00
|
|
|
Jasper Lievisse Adriaanse <jasper@humppa.nl>
|
Pass a correct pointer type to localtime_r(3).
On 09/04/2012 08:20 AM, Eric Blake wrote:
> tv_sec is required by POSIX to be
> of type time_t; so this is a bug in the OpenBSD header
> [for declaring it as long]
Most likely this problem arose because of the patch I pushed
in gnulib commit e07d7c40f3ca5ec410cf5aa6fa03cfe51e712039.
Previously, gnulib required timeval's tv_sec to be
the same size as time_t. But now, it requires only that
tv_sec be big enough to hold a time_t.
This patch was needed for Emacs. Without the patch, gnulib
replaced struct timeval on OpenBSD, and this messed up
utimens.c, and Emacs wouldn't build.
Alternatively, gnulib could substitute its own struct timeval
for the system's, wrapping every struct timeval-using function
(gettimeofday, futimesat, futimes, lutimes, etc. That'd be
more work, though. And it would introduce some performance
issues with gettimeofday, which is supposed to be fast.
I've been trying to get away from using struct timeval,
and to use the higher-resolution struct timespec instead,
so messing with these obsolescent interfaces has been
lower priority for me. But if someone wants to take the
more-ambitious approach that'd be fine, I expect.
For this particular case, though, how about if we avoid
the problem entirely? libvirt doesn't need to use struct
timeval here at all. It makes libvirt smaller and probably
faster, and it ports to OpenBSD without messing with gnulib.
2012-09-05 01:03:41 +08:00
|
|
|
Paul Eggert <eggert@cs.ucla.edu>
|
2012-09-15 06:55:41 +08:00
|
|
|
Dwight Engen <dwight.engen@oracle.com>
|
2012-09-20 13:31:57 +08:00
|
|
|
liguang <lig.fnst@cn.fujitsu.com>
|
2012-08-20 21:58:50 +08:00
|
|
|
|
2007-02-23 02:56:28 +08:00
|
|
|
[....send patches to get your name here....]
|
|
|
|
|
2008-04-24 15:56:37 +08:00
|
|
|
The libvirt Logo was designed by Diana Fong
|
2007-02-23 02:56:28 +08:00
|
|
|
|
|
|
|
-- End
|
2009-01-07 01:20:27 +08:00
|
|
|
;; Local Variables:
|
|
|
|
;; coding: utf-8
|
|
|
|
;; End:
|