[libvirt] [PATCH] libxl: always use libxlVmCleanupJob in shutdown thread
by Jim Fehlig
Commit e4a0e900 missed calling libxlVmCleanupJob in the shutdown
handler when processing a reboot event.
Signed-off-by: Jim Fehlig <jfehlig(a)suse.com>
---
src/libxl/libxl_driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index f7ca91c..9f87e71 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -393,7 +393,7 @@ libxlDomainShutdownThread(void *opaque)
break;
case LIBXL_SHUTDOWN_REASON_REBOOT:
libxl_domain_destroy(ctx, vm->def->id, NULL);
- libxlVmCleanup(driver, vm, VIR_DOMAIN_SHUTOFF_SHUTDOWN);
+ libxlVmCleanupJob(driver, vm, VIR_DOMAIN_SHUTOFF_SHUTDOWN);
libxlVmStart(driver, vm, 0, -1);
break;
default:
--
1.8.1.4
10 years, 9 months
[libvirt] [PATCH] qemu: adjust maxmem/maxvcpu computation
by Eric Blake
https://bugzilla.redhat.com/show_bug.cgi?id=1038363
If a domain has a different maximum for persistent and live maxmem
or max vcpus, then it is possible to hit cases where libvirt
refuses to adjust the current values or gets halfway through
the adjustment before failing. Better is to determine up front
if the change is possible for all requested flags.
* src/qemu/qemu_driver.c (qemuDomainSetMemoryFlags): Compute
correct maximum if both live and config are being set.
(qemuDomainSetVcpusFlags): Likewise.
Signed-off-by: Eric Blake <eblake(a)redhat.com>
---
src/qemu/qemu_driver.c | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index a0b3ce3..288b98b 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -2242,8 +2242,16 @@ static int qemuDomainSetMemoryFlags(virDomainPtr dom, unsigned long newmem,
} else {
/* resize the current memory */
+ unsigned long oldmax = 0;
- if (newmem > vm->def->mem.max_balloon) {
+ if (flags & VIR_DOMAIN_AFFECT_LIVE)
+ oldmax = vm->def->mem.max_balloon;
+ if (flags & VIR_DOMAIN_AFFECT_CONFIG) {
+ if (!oldmax || oldmax > persistentDef->mem.max_balloon)
+ oldmax = persistentDef->mem.max_balloon;
+ }
+
+ if (newmem > oldmax) {
virReportError(VIR_ERR_INVALID_ARG, "%s",
_("cannot set memory higher than max memory"));
goto endjob;
@@ -4121,6 +4129,7 @@ qemuDomainSetVcpusFlags(virDomainPtr dom, unsigned int nvcpus,
virDomainDefPtr persistentDef;
int ret = -1;
bool maximum;
+ unsigned int maxvcpus = 0;
virQEMUDriverConfigPtr cfg = NULL;
virCapsPtr caps = NULL;
qemuAgentCPUInfoPtr cpuinfo = NULL;
@@ -4168,11 +4177,17 @@ qemuDomainSetVcpusFlags(virDomainPtr dom, unsigned int nvcpus,
goto endjob;
}
- if (!maximum && nvcpus > vm->def->maxvcpus) {
+ if (flags & VIR_DOMAIN_AFFECT_LIVE)
+ maxvcpus = vm->def->maxvcpus;
+ if (flags & VIR_DOMAIN_AFFECT_CONFIG) {
+ if (!maxvcpus || maxvcpus > persistentDef->maxvcpus)
+ maxvcpus = persistentDef->maxvcpus;
+ }
+ if (!maximum && nvcpus > maxvcpus) {
virReportError(VIR_ERR_INVALID_ARG,
_("requested vcpus is greater than max allowable"
" vcpus for the domain: %d > %d"),
- nvcpus, vm->def->maxvcpus);
+ nvcpus, maxvcpus);
goto endjob;
}
--
1.8.5.3
10 years, 9 months
[libvirt] [PATCH 0/4] add 'virsh event' and friends
by Eric Blake
Inspired by my work on qemu monitor events; Dan correctly argued
that if we're going to expose those through virsh, we also need
to expose regular events. Patch 5/4 still coming, which adds
handlers for the remaining 15 domain event types.
Eric Blake (4):
virsh: common code for parsing --seconds
virsh: common code for waiting for an event
virsh: add event command, for lifecycle events
virsh: add net-event command
tools/virsh-domain.c | 410 +++++++++++++++++++++++++++++++++++++++++++-------
tools/virsh-network.c | 171 ++++++++++++++++++++-
tools/virsh.c | 186 ++++++++++++++++++++++-
tools/virsh.h | 17 ++-
tools/virsh.pod | 30 ++++
5 files changed, 752 insertions(+), 62 deletions(-)
--
1.8.5.3
10 years, 9 months
[libvirt] [PATCH] Rename virDomainGetRootFilesystem to virDomainGetFilesystemForTarget
by Daniel P. Berrange
The virDomainGetRootFilesystem method can be generalized to allow
any filesystem path to be obtained.
While doing this, start a new test case for purpose of testing various
helper methods in the domain_conf.{c,h} files, such as this one.
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
.gitignore | 1 +
src/conf/domain_conf.c | 5 +-
src/conf/domain_conf.h | 3 +-
src/libvirt_private.syms | 2 +-
src/lxc/lxc_container.c | 2 +-
src/lxc/lxc_process.c | 2 +-
tests/Makefile.am | 6 ++
tests/domainconfdata/getfilesystem.xml | 28 ++++++++
tests/domainconftest.c | 120 +++++++++++++++++++++++++++++++++
tests/testutils.c | 57 ++++++++++++++++
tests/testutils.h | 5 ++
11 files changed, 225 insertions(+), 6 deletions(-)
create mode 100644 tests/domainconfdata/getfilesystem.xml
create mode 100644 tests/domainconftest.c
diff --git a/.gitignore b/.gitignore
index d5a6cf5..cbb3e8a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -147,6 +147,7 @@
/tests/commandtest
/tests/conftest
/tests/cputest
+/tests/domainconftest
/tests/domainsnapshotxml2xmltest
/tests/esxutilstest
/tests/eventtest
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 0079234..dd36026 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -17827,12 +17827,13 @@ virDiskNameToBusDeviceIndex(virDomainDiskDefPtr disk,
}
virDomainFSDefPtr
-virDomainGetRootFilesystem(virDomainDefPtr def)
+virDomainGetFilesystemForTarget(virDomainDefPtr def,
+ const char *path)
{
size_t i;
for (i = 0; i < def->nfss; i++) {
- if (STREQ(def->fss[i]->dst, "/"))
+ if (STREQ(def->fss[i]->dst, path))
return def->fss[i];
}
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 647d115..ea7f1a1 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -2541,7 +2541,8 @@ int virDiskNameToBusDeviceIndex(virDomainDiskDefPtr disk,
int *busIdx,
int *devIdx);
-virDomainFSDefPtr virDomainGetRootFilesystem(virDomainDefPtr def);
+virDomainFSDefPtr virDomainGetFilesystemForTarget(virDomainDefPtr def,
+ const char *path);
int virDomainFSIndexByName(virDomainDefPtr def, const char *name);
int virDomainVideoDefaultType(const virDomainDef *def);
int virDomainVideoDefaultRAM(const virDomainDef *def, int type);
diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
index 2dbb8f8..a870e9c 100644
--- a/src/libvirt_private.syms
+++ b/src/libvirt_private.syms
@@ -225,7 +225,7 @@ virDomainFSTypeFromString;
virDomainFSTypeToString;
virDomainFSWrpolicyTypeFromString;
virDomainFSWrpolicyTypeToString;
-virDomainGetRootFilesystem;
+virDomainGetFilesystemForTarget;
virDomainGraphicsAuthConnectedTypeFromString;
virDomainGraphicsAuthConnectedTypeToString;
virDomainGraphicsDefFree;
diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c
index c6bdc8c..c32b085 100644
--- a/src/lxc/lxc_container.c
+++ b/src/lxc/lxc_container.c
@@ -1823,7 +1823,7 @@ static int lxcContainerChild(void *data)
if (lxcContainerSetID(vmDef) < 0)
goto cleanup;
- root = virDomainGetRootFilesystem(vmDef);
+ root = virDomainGetFilesystemForTarget(vmDef, "/");
if (argv->nttyPaths) {
const char *tty = argv->ttyPaths[0];
diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
index cc9c1a2..f0190a0 100644
--- a/src/lxc/lxc_process.c
+++ b/src/lxc/lxc_process.c
@@ -934,7 +934,7 @@ virLXCProcessReadLogOutput(virDomainObjPtr vm,
static int
virLXCProcessEnsureRootFS(virDomainObjPtr vm)
{
- virDomainFSDefPtr root = virDomainGetRootFilesystem(vm->def);
+ virDomainFSDefPtr root = virDomainGetFilesystemForTarget(vm->def, "/");
if (root)
return 0;
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 568b7a0..90fb3a0 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -65,6 +65,7 @@ EXTRA_DIST = \
commanddata \
confdata \
cputestdata \
+ domainconfdata \
domainschemadata \
domainschematest \
domainsnapshotschematest \
@@ -141,6 +142,7 @@ test_programs = virshtest sockettest \
virportallocatortest \
sysinfotest \
virstoragetest \
+ domainconftest \
$(NULL)
if WITH_REMOTE
@@ -893,6 +895,10 @@ sysinfotest_SOURCES = \
sysinfotest.c testutils.h testutils.c
sysinfotest_LDADD = $(LDADDS)
+domainconftest_SOURCES = \
+ domainconftest.c testutils.h testutils.c
+domainconftest_LDADD = $(LDADDS)
+
fdstreamtest_SOURCES = \
fdstreamtest.c testutils.h testutils.c
fdstreamtest_LDADD = $(LDADDS)
diff --git a/tests/domainconfdata/getfilesystem.xml b/tests/domainconfdata/getfilesystem.xml
new file mode 100644
index 0000000..2ee78b4
--- /dev/null
+++ b/tests/domainconfdata/getfilesystem.xml
@@ -0,0 +1,28 @@
+<domain type='test'>
+ <name>demo</name>
+ <uuid>8369f1ac-7e46-e869-4ca5-759d51478066</uuid>
+ <memory unit='KiB'>500000</memory>
+ <currentMemory unit='KiB'>500000</currentMemory>
+ <vcpu placement='static'>1</vcpu>
+ <os>
+ <type arch='x86_64'>hvm</type>
+ <init>/bin/sh</init>
+ </os>
+ <clock offset='utc'/>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>destroy</on_crash>
+ <devices>
+ <filesystem type='mount' accessmode='passthrough'>
+ <source dir='/'/>
+ <target dir='/'/>
+ </filesystem>
+ <filesystem type='mount' accessmode='passthrough'>
+ <source dir='/'/>
+ <target dir='/dev'/>
+ </filesystem>
+ <console type='pty'>
+ <target type='lxc' port='0'/>
+ </console>
+ </devices>
+</domain>
diff --git a/tests/domainconftest.c b/tests/domainconftest.c
new file mode 100644
index 0000000..d38ef5c
--- /dev/null
+++ b/tests/domainconftest.c
@@ -0,0 +1,120 @@
+/*
+ * Copyright (C) 2013 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ *
+ * Author: Daniel P. Berrange <berrange(a)redhat.com>
+ */
+
+#include <config.h>
+
+#include "testutils.h"
+#include "virerror.h"
+#include "viralloc.h"
+#include "virlog.h"
+
+#include "domain_conf.h"
+
+#define VIR_FROM_THIS VIR_FROM_NONE
+
+static virCapsPtr caps;
+static virDomainXMLOptionPtr xmlopt;
+
+struct testGetFilesystemData {
+ const char *filename;
+ const char *path;
+ bool expectEntry;
+};
+
+static int testGetFilesystem(const void *opaque)
+{
+ int ret = -1;
+ char *xmlData = NULL;
+ virDomainDefPtr def = NULL;
+ char *filename = NULL;
+ const struct testGetFilesystemData *data = opaque;
+ virDomainFSDefPtr fsdef;
+
+ if (virAsprintf(&filename, "%s/domainconfdata/%s.xml",
+ abs_srcdir, data->filename) < 0)
+ goto cleanup;
+
+ if (virtTestLoadFile(filename, &xmlData) < 0)
+ goto cleanup;
+
+ if (!(def = virDomainDefParseString(xmlData, caps, xmlopt,
+ 1 << VIR_DOMAIN_VIRT_TEST, 0)))
+ goto cleanup;
+
+ fsdef = virDomainGetFilesystemForTarget(def,
+ data->path);
+ if (!fsdef) {
+ if (data->expectEntry) {
+ fprintf(stderr, "Expected FS for path '%s' in '%s'\n",
+ data->path, filename);
+ goto cleanup;
+ }
+ } else {
+ if (!data->expectEntry) {
+ fprintf(stderr, "Unexpected FS for path '%s' in '%s'\n",
+ data->path, filename);
+ goto cleanup;
+ }
+ }
+
+ ret = 0;
+
+cleanup:
+ virDomainDefFree(def);
+ VIR_FREE(xmlData);
+ VIR_FREE(filename);
+ return ret;
+}
+
+static int
+mymain(void)
+{
+ int ret = 0;
+
+ if ((caps = virTestGenericCapsInit()) == NULL)
+ goto cleanup;
+
+ if (!(xmlopt = virTestGenericDomainXMLConfInit()))
+ goto cleanup;
+
+#define DO_TEST_GET_FS(fspath, expect) \
+ do { \
+ struct testGetFilesystemData data = { \
+ .filename = "getfilesystem", \
+ .path = fspath, \
+ .expectEntry = expect, \
+ }; \
+ if (virtTestRun("Get FS " fspath, testGetFilesystem, &data) < 0) \
+ ret = -1; \
+ } while (0)
+
+ DO_TEST_GET_FS("/", true);
+ DO_TEST_GET_FS("/dev", true);
+ DO_TEST_GET_FS("/dev/pts", false);
+ DO_TEST_GET_FS("/doesnotexist", false);
+
+ virObjectUnref(caps);
+ virObjectUnref(xmlopt);
+
+ cleanup:
+ return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
+}
+
+VIRT_TEST_MAIN(mymain)
diff --git a/tests/testutils.c b/tests/testutils.c
index 32fe374..ac2a654 100644
--- a/tests/testutils.c
+++ b/tests/testutils.c
@@ -645,3 +645,60 @@ int virtTestClearLineRegex(const char *pattern,
return 0;
}
+
+
+virCapsPtr virTestGenericCapsInit(void)
+{
+ virCapsPtr caps;
+ virCapsGuestPtr guest;
+
+ if ((caps = virCapabilitiesNew(VIR_ARCH_X86_64,
+ 0, 0)) == NULL)
+ return NULL;
+
+ if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_I686,
+ "/usr/bin/acme-virt", NULL,
+ 0, NULL)) == NULL)
+ goto error;
+
+ if (!virCapabilitiesAddGuestDomain(guest, "test", NULL, NULL, 0, NULL))
+ goto error;
+
+
+ if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_X86_64,
+ "/usr/bin/acme-virt", NULL,
+ 0, NULL)) == NULL)
+ goto error;
+
+ if (!virCapabilitiesAddGuestDomain(guest, "test", NULL, NULL, 0, NULL))
+ goto error;
+
+
+ if (virTestGetDebug()) {
+ char *caps_str;
+
+ caps_str = virCapabilitiesFormatXML(caps);
+ if (!caps_str)
+ goto error;
+
+ fprintf(stderr, "Generic driver capabilities:\n%s", caps_str);
+
+ VIR_FREE(caps_str);
+ }
+
+ return caps;
+
+error:
+ virObjectUnref(caps);
+ return NULL;
+}
+
+static virDomainDefParserConfig virTestGenericDomainDefParserConfig;
+static virDomainXMLPrivateDataCallbacks virTestGenericPrivateDataCallbacks;
+
+virDomainXMLOptionPtr virTestGenericDomainXMLConfInit(void)
+{
+ return virDomainXMLOptionNew(&virTestGenericDomainDefParserConfig,
+ &virTestGenericPrivateDataCallbacks,
+ NULL);
+}
diff --git a/tests/testutils.h b/tests/testutils.h
index 674d3df..8d2048b 100644
--- a/tests/testutils.h
+++ b/tests/testutils.h
@@ -27,6 +27,8 @@
# include "viralloc.h"
# include "virfile.h"
# include "virstring.h"
+# include "capabilities.h"
+# include "domain_conf.h"
# define EXIT_AM_SKIP 77 /* tell Automake we're skipping a test */
# define EXIT_AM_HARDFAIL 99 /* tell Automake that the framework is broken */
@@ -102,4 +104,7 @@ int virtTestMain(int argc,
return virtTestMain(argc, argv, func); \
}
+virCapsPtr virTestGenericCapsInit(void);
+virDomainXMLOptionPtr virTestGenericDomainXMLConfInit(void);
+
#endif /* __VIT_TEST_UTILS_H__ */
--
1.8.4.2
10 years, 9 months
[libvirt] help debugging event timing
by Eric Blake
In my recent work on events, I'm running into something where I'm
stumped on timing behavior. I'm using
virEventRegisterDefaultImpl()/virEventRunDefaultImpl() as my event loop,
and trying to test that an event is firing correctly.
With the test:///default (or any other local URI), if I register an
event callback function, the callback gets invoked almost right after
the event happens. This is the same behavior under test in our
testsuite (in objecteventtest.c). But with qemu:///system (or any other
remote URI), when I register an event callback function, my callback
does not get invoked until I make some other RPC call on the connection.
At first, I thought the events were not being wired up at all, and that
I was just blocking forever because I missed something, but while
stepping through gdb on the client side, I noticed that calling
virConnectDomainEventDeregisterAny() in my shutdown code then indeed
proceeded to go through the entire backlog of events that had been
generated, but at that point I was no longer registered so my callback
was not called. So I ended up using virEventAddTimeout() to set up a
periodic interrupt (at 10 seconds, slow enough to see the delays), where
in the handler I called virConnectGetLibVersion() as a way to force RPC
traffic and at least get events as a result of my timer. If it matters,
I was initially using keepalive_interval=-1 in
/etc/libvirt/libvirtd.conf in order to avoid killing my debug sessions;
but even when I switched to keepalive_interval=3, I'm still seeing the
same delayed behavior (if the keepalive were to make a difference, I
would have expected seeing the event at 3 seconds instead of my timer at
10 seconds).
I thought that the RPC protocol was supposed to allow asynchronous
events, and with minimal downtime. gdb in libvirtd says that
remoteDispatchObjectEventSend() is called in a timely manner, but that
merely queues things up, and I got lost trying to follow where
virNetSocketUpdateIOCallback() turned into something that wakes up the
actual write() to the socket. On the other side, I don't see a call to
virDomainEventDispatchDefaultFunc() which then calls my callback until
the next RPC call/response, but again, I got lost on trying to trace
whether a read() of the socket was getting data in a timely manner but
just not firing anything in my event loop, or whether things were
getting stuck client side after the read but with nothing waking up my
event loop. Any advice on how to better debug where things are getting
stuck, to determine whether the holdup is in the server not sending or
in the client not being responsive to the send? Is it something where
systemtap might give me a better picture? Or better yet, a patch to fix
the problem would be nice.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
10 years, 9 months
[libvirt] [PATCH] Fix multiple bugs in LXC domainMemoryStats driver
by Daniel P. Berrange
The virCgroupXXX APIs' return value must be checked for
being less than 0, not equal to 0.
An VIR_ERR_OPERATION_INVALID error must also be raised
when the VM is not running to prevent a crash on NULL
priv->cgroup field.
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
src/lxc/lxc_driver.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index 50910df..10e0fbb 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -5410,13 +5410,16 @@ lxcDomainMemoryStats(virDomainPtr dom,
if (virDomainMemoryStatsEnsureACL(dom->conn, vm->def) < 0)
goto cleanup;
- if (!virCgroupGetMemSwapUsage(priv->cgroup, &swap_usage))
+ if (!virDomainObjIsActive(vm)) {
+ virReportError(VIR_ERR_OPERATION_INVALID, "%s",
+ _("domain is not active"));
goto cleanup;
+ }
- if (!virCgroupGetMemoryUsage(priv->cgroup, &mem_usage))
+ if (virCgroupGetMemSwapUsage(priv->cgroup, &swap_usage) < 0)
goto cleanup;
- if (!virDomainObjIsActive(vm))
+ if (virCgroupGetMemoryUsage(priv->cgroup, &mem_usage) < 0)
goto cleanup;
ret = 0;
--
1.8.5.3
10 years, 9 months
[libvirt] [PATCH glib] gobject-stream: fix issue found by coverity
by Pavel Hrdina
The coverity server found issue in gvir_stream_close function that
we ignore return values of g_input_stream_close and
g_outpu_stream_close, but we also ignore the error message and we
assume that it's closed without error.
Now we will check return values and also propagate the error message
to the upper layers.
Signed-off-by: Pavel Hrdina <phrdina(a)redhat.com>
---
libvirt-gobject/libvirt-gobject-stream.c | 24 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/libvirt-gobject/libvirt-gobject-stream.c b/libvirt-gobject/libvirt-gobject-stream.c
index 1572022..66a12ab 100644
--- a/libvirt-gobject/libvirt-gobject-stream.c
+++ b/libvirt-gobject/libvirt-gobject-stream.c
@@ -102,17 +102,33 @@ static GOutputStream* gvir_stream_get_output_stream(GIOStream *io_stream)
static gboolean gvir_stream_close(GIOStream *io_stream,
GCancellable *cancellable,
- G_GNUC_UNUSED GError **error)
+ GError **error)
{
GVirStream *self = GVIR_STREAM(io_stream);
+ GError *local_error = NULL;
+ gboolean i_ret = TRUE, o_ret = TRUE;
if (self->priv->input_stream)
- g_input_stream_close(self->priv->input_stream, cancellable, NULL);
+ i_ret = g_input_stream_close(self->priv->input_stream, cancellable, &local_error);
+
+ if (local_error) {
+ if (!*error)
+ g_propagate_error(error, local_error);
+ else
+ g_error_free(local_error);
+ }
if (self->priv->output_stream)
- g_output_stream_close(self->priv->output_stream, cancellable, NULL);
+ o_ret = g_output_stream_close(self->priv->output_stream, cancellable, &local_error);
+
+ if (local_error) {
+ if (!*error)
+ g_propagate_error(error, local_error);
+ else
+ g_error_free(local_error);
+ }
- return TRUE; /* FIXME: really close the stream? */
+ return (i_ret && o_ret);
}
--
1.8.3.1
10 years, 9 months
[libvirt] 1.2.0 segfault on Centos 6
by Franky Van Liedekerke
Hi,
using libvirt 1.2.0 on a up-to-date Centos6.5 machine leads to
occasional segmentation faults (see below).
Sometimes it runs for 5 minutes, sometimes for an hour, but after that
the result is always the same: segfault after some weird qom-list, that
apparently the qemu version on centos doesn't know. Has 1.2.1 a known
fix for this?
Franky (debug log of last crash is below the dotted line)
-------------------------------------------------
2014-02-04 15:50:27.351+0000: 9082: error :
qemuMonitorJSONCheckError:354 : internal error: unable to execute QEMU
command 'qom-list': The command qom-list has not been found
Caught Segmentation violation dumping internal log buffer:
====== start of log =====
+0000: 9084: debug : virObjectRef:293 : OBJECT_REF: obj=0x7fac58000ac0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac58000ac0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.347+0000: 9084: debug :
remoteDispatchDomainLookupByNameHelper:4965 : server=0x7fac7ce77ae0
client=0x7fac7ce86610 msg=0x7fac7ce827f0 rerr=0x7fac6c5b3bc0
args=0x7fac40002730 ret=0x7fac40002790
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.347+0000: 9084: debug : virDomainLookupByName:2269
: conn=0x7fac340018a0, name=bqafm0001ap.frm.meshcore.net
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce760b0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug :
virAccessManagerCheckDomain:231 : manager=0x7fac7ce760b0(name=stack)
driver=QEMU domain=0x7fac5c2386c0 perm=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug :
virAccessManagerCheckDomain:231 : manager=0x7fac7ce776f0(name=none)
driver=QEMU domain=0x7fac5c2386c0 perm=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce760b0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectNew:199 :
OBJECT_NEW: obj=0x7fac40002750 classname=virDomain
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac340018a0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virDomainFree:2433 :
dom=0x7fac40002750, (VM: name=bqafm0001ap.frm.meshcore.net,
uuid=3b009e73-e095-29fa-8970-f5c2b647d5a0)
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac40002750
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:258 :
OBJECT_DISPOSE: obj=0x7fac40002750
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.347+0000: 9084: debug : virDomainDispose:264 :
release domain 0x7fac40002750 bqafm0001ap.frm.meshcore.net
3b009e73-e095-29fa-8970-f5c2b647d5a0
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac340018a0
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032347
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac58000ac0
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027347
2014-02-04 15:50:27.347+0000: 9084: debug :
virNetMessageEncodePayload:374 : Encode length as 80
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3965
ms
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac58000ac0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3965
2014-02-04 15:50:27.347+0000: 9084: debug :
virNetServerClientSendMessageLocked:1451 : msg=0x7fac7ce827f0 proc=23
len=80 offset=0
2014-02-04 15:50:27.347+0000: 9084: debug :
virNetServerClientSendMessageLocked:1459 :
RPC_SERVER_CLIENT_MSG_TX_QUEUE: client=0x7fac7ce86610 len=80
prog=536903814 vers=1 proc=23 type=1 status=0 serial=4
2014-02-04 15:50:27.347+0000: 9084: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86c80 tx=0x7fac7ce827f0
2014-02-04 15:50:27.347+0000: 9084: debug :
virNetServerClientCalculateHandleMode:188 : mode=3
2014-02-04 15:50:27.347+0000: 9084: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=3
2014-02-04 15:50:27.347+0000: 9084: debug :
virEventPollInterruptLocked:717 : Interrupting
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce80030
2014-02-04 15:50:27.347+0000: 9084: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce86610
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=1
events=1
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.347+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.347+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.347+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=5 d=0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032347
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027348
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3964
ms
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3964
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=58
events=2
2014-02-04 15:50:27.348+0000: 9081: debug : virNetMessageFree:72 :
msg=0x7fac7ce827f0 nfds=0 cb=(nil)
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86c80 tx=(nil)
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientCalculateHandleMode:188 : mode=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.348+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032347
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027348
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3964
ms
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3964
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=58
events=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetMessageDecodeLength:149 : Got length, now need 80 total (76 more)
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86c80 tx=(nil)
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientCalculateHandleMode:188 : mode=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientDispatchRead:1202 : RPC_SERVER_CLIENT_MSG_RX:
client=0x7fac7ce86610 len=80 prog=536903814 vers=1 proc=150 type=0
status=0 serial=5
2014-02-04 15:50:27.348+0000: 9081: debug :
virKeepAliveCheckMessage:374 : ka=0x7fac7ce86d60, client=0x7fac7ce86610,
msg=0x7fac7ce86c80
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollUpdateTimeout:260 : EVENT_POLL_UPDATE_TIMEOUT: timer=59
frequency=5000
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollUpdateTimeout:278 : Set timer freq=5000
expires=1391529032348
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.348+0000: 9081: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce86610
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerDispatchNewMessage:213 : server=0x7fac7ce77ae0
client=0x7fac7ce86610 message=0x7fac7ce86c80
2014-02-04 15:50:27.348+0000: 9081: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce80030
2014-02-04 15:50:27.348+0000: 9081: debug : virNetMessageNew:44 :
msg=0x7fac7ce86e60 tracked=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86e60 tx=(nil)
2014-02-04 15:50:27.348+0000: 9083: debug : virNetServerHandleJob:184 :
server=0x7fac7ce77ae0 client=0x7fac7ce86610 message=0x7fac7ce86c80
prog=0x7fac7ce80030
2014-02-04 15:50:27.348+0000: 9081: debug :
virNetServerClientCalculateHandleMode:188 : mode=1
2014-02-04 15:50:27.348+0000: 9083: debug :
virNetServerProgramDispatch:285 : prog=536903814 ver=1 type=0 status=0
serial=5 proc=150
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac58000ac0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac58000ac0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.348+0000: 9083: debug :
remoteDispatchDomainIsActiveHelper:4723 : server=0x7fac7ce77ae0
client=0x7fac7ce86610 msg=0x7fac7ce86c80 rerr=0x7fac6cfb4bc0
args=0x7fac50000970 ret=0x7fac50000910
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectNew:199 :
OBJECT_NEW: obj=0x7fac50000930 classname=virDomain
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac340018a0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virDomainIsActive:17649 :
dom=0x7fac50000930
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce760b0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug :
virAccessManagerCheckDomain:231 : manager=0x7fac7ce760b0(name=stack)
driver=QEMU domain=0x7fac5c2386c0 perm=1
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug :
virAccessManagerCheckDomain:231 : manager=0x7fac7ce776f0(name=none)
driver=QEMU domain=0x7fac5c2386c0 perm=1
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce760b0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virDomainFree:2433 :
dom=0x7fac50000930, (VM: name=bqafm0001ap.frm.meshcore.net,
uuid=3b009e73-e095-29fa-8970-f5c2b647d5a0)
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac50000930
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:258 :
OBJECT_DISPOSE: obj=0x7fac50000930
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virDomainDispose:264 :
release domain 0x7fac50000930 bqafm0001ap.frm.meshcore.net
3b009e73-e095-29fa-8970-f5c2b647d5a0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac340018a0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac58000ac0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032348
2014-02-04 15:50:27.348+0000: 9083: debug :
virNetMessageEncodePayload:374 : Encode length as 32
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac58000ac0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027348
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3964
ms
2014-02-04 15:50:27.348+0000: 9083: debug :
virNetServerClientSendMessageLocked:1451 : msg=0x7fac7ce86c80 proc=150
len=32 offset=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3964
2014-02-04 15:50:27.348+0000: 9083: debug :
virNetServerClientSendMessageLocked:1459 :
RPC_SERVER_CLIENT_MSG_TX_QUEUE: client=0x7fac7ce86610 len=32
prog=536903814 vers=1 proc=150 type=1 status=0 serial=5
2014-02-04 15:50:27.348+0000: 9083: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86e60 tx=0x7fac7ce86c80
2014-02-04 15:50:27.348+0000: 9083: debug :
virNetServerClientCalculateHandleMode:188 : mode=3
2014-02-04 15:50:27.348+0000: 9083: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=3
2014-02-04 15:50:27.348+0000: 9083: debug :
virEventPollInterruptLocked:717 : Interrupting
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce80030
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.348+0000: 9083: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce86610
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=1
events=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.348+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=5 d=0
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032348
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027348
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3964
ms
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3964
2014-02-04 15:50:27.348+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.348+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=58
events=2
2014-02-04 15:50:27.349+0000: 9081: debug : virNetMessageFree:72 :
msg=0x7fac7ce86c80 nfds=0 cb=(nil)
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86e60 tx=(nil)
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientCalculateHandleMode:188 : mode=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.349+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032348
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027349
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3963
ms
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3963
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=58
events=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetMessageDecodeLength:149 : Got length, now need 88 total (84 more)
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce86e60 tx=(nil)
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientCalculateHandleMode:188 : mode=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientDispatchRead:1202 : RPC_SERVER_CLIENT_MSG_RX:
client=0x7fac7ce86610 len=88 prog=536903814 vers=1 proc=159 type=0
status=0 serial=6
2014-02-04 15:50:27.349+0000: 9081: debug :
virKeepAliveCheckMessage:374 : ka=0x7fac7ce86d60, client=0x7fac7ce86610,
msg=0x7fac7ce86e60
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollUpdateTimeout:260 : EVENT_POLL_UPDATE_TIMEOUT: timer=59
frequency=5000
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollUpdateTimeout:278 : Set timer freq=5000
expires=1391529032349
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.349+0000: 9081: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce86610
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerDispatchNewMessage:213 : server=0x7fac7ce77ae0
client=0x7fac7ce86610 message=0x7fac7ce86e60
2014-02-04 15:50:27.349+0000: 9081: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce80030
2014-02-04 15:50:27.349+0000: 9081: debug : virNetMessageNew:44 :
msg=0x7fac7ce78c60 tracked=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientCalculateHandleMode:153 : tls=(nil) hs=-1,
rx=0x7fac7ce78c60 tx=(nil)
2014-02-04 15:50:27.349+0000: 9081: debug :
virNetServerClientCalculateHandleMode:188 : mode=1
2014-02-04 15:50:27.349+0000: 9082: debug : virNetServerHandleJob:184 :
server=0x7fac7ce77ae0 client=0x7fac7ce86610 message=0x7fac7ce86e60
prog=0x7fac7ce80030
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=58
events=1
2014-02-04 15:50:27.349+0000: 9082: debug :
virNetServerProgramDispatch:285 : prog=536903814 ver=1 type=0 status=0
serial=6 proc=159
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac58000ac0
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac58000ac0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.349+0000: 9082: debug :
remoteDispatchDomainMemoryStatsHelper:5195 : server=0x7fac7ce77ae0
client=0x7fac7ce86610 msg=0x7fac7ce86e60 rerr=0x7fac6d9b5bc0
args=0x7fac44000900 ret=0x7fac440009a0
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectNew:199 :
OBJECT_NEW: obj=0x7fac440008c0 classname=virDomain
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac340018a0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug : virDomainMemoryStats:8719 :
dom=0x7fac440008c0, (VM: name=bqafm0001ap.frm.meshcore.net,
uuid=3b009e73-e095-29fa-8970-f5c2b647d5a0), stats=0x7fac44000af0,
nr_stats=8, flags=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac7ce760b0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug :
virAccessManagerCheckDomain:231 : manager=0x7fac7ce760b0(name=stack)
driver=QEMU domain=0x7fac5c2386c0 perm=1
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug :
virAccessManagerCheckDomain:231 : manager=0x7fac7ce776f0(name=none)
driver=QEMU domain=0x7fac5c2386c0 perm=1
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac7ce760b0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac5c209c20
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.349+0000: 9082: debug :
qemuDomainObjBeginJobInternal:1024 : Starting job: query (async=none
vm=0x7fac5c2141a0 name=bqafm0001ap.frm.meshcore.net)
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac5c2141a0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.349+0000: 9082: debug :
qemuDomainObjBeginJobInternal:1066 : Started job: query (async=none
vm=0x7fac5c2141a0 name=bqafm0001ap.frm.meshcore.net)
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac5c209c20
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032349
2014-02-04 15:50:27.349+0000: 9082: debug :
qemuDomainObjEnterMonitorInternal:1252 : Entering monitor
(mon=0x7fac54000c00 vm=0x7fac5c2141a0 name=bqafm0001ap.frm.meshcore.net)
2014-02-04 15:50:27.349+0000: 9082: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac54000c00
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027349
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3963
ms
2014-02-04 15:50:27.349+0000: 9082: debug :
qemuMonitorGetMemoryStats:1565 : mon=0x7fac54000c00 stats=0x7fac44000af0
nstats=8
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3963
2014-02-04 15:50:27.349+0000: 9082: debug :
qemuMonitorFindBalloonObjectPath:1045 : Searching for Balloon Object
Path starting at /
2014-02-04 15:50:27.349+0000: 9082: debug : virJSONValueToString:1106 :
object=0x7fac44000a50
2014-02-04 15:50:27.349+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000a50 type=0
gen=0x7fac44000d60
2014-02-04 15:50:27.349+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000a70 type=2
gen=0x7fac44000d60
2014-02-04 15:50:27.349+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000bf0 type=0
gen=0x7fac44000d60
2014-02-04 15:50:27.349+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000c10 type=2
gen=0x7fac44000d60
2014-02-04 15:50:27.349+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000ce0 type=2
gen=0x7fac44000d60
2014-02-04 15:50:27.349+0000: 9082: debug : virJSONValueToString:1139 :
result={"execute":"qom-list","arguments":{"path":"/"},"id":"libvirt-6"}
2014-02-04 15:50:27.349+0000: 9082: debug :
qemuMonitorJSONCommandWithFd:264 : Send command
'{"execute":"qom-list","arguments":{"path":"/"},"id":"libvirt-6"}' for
write with FD -1
2014-02-04 15:50:27.349+0000: 9082: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=10
events=15
2014-02-04 15:50:27.349+0000: 9082: debug :
virEventPollInterruptLocked:717 : Interrupting
2014-02-04 15:50:27.349+0000: 9082: debug : qemuMonitorSend:959 :
QEMU_MONITOR_SEND_MSG: mon=0x7fac54000c00
msg={"execute":"qom-list","arguments":{"path":"/"},"id":"libvirt-6"}
fd=-1
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=1
events=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.349+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=29 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032349
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027349
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3963
ms
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3963
2014-02-04 15:50:27.349+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=10
events=2
2014-02-04 15:50:27.349+0000: 9081: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac54000c00
2014-02-04 15:50:27.349+0000: 9081: debug : qemuMonitorIOWrite:504 :
QEMU_MONITOR_IO_WRITE: mon=0x7fac54000c00
buf={"execute":"qom-list","arguments":{"path":"/"},"id":"libvirt-6"}
len=66 ret=66 errno=22
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=10
events=13
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.349+0000: 9081: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac54000c00
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.349+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.350+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032349
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027350
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3962
ms
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3962
2014-02-04 15:50:27.350+0000: 9081: debug : virEventPollRunOnce:641 :
Poll got 1 event(s)
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchTimeouts:426 : Dispatch 5
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:471 : Dispatch 15
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=0 w=1
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=1 w=2
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=2 w=3
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=3 w=4
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=4 w=5
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=5 w=6
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=6 w=7
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=7 w=8
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=8 w=9
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=9 w=10
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:499 : EVENT_POLL_DISPATCH_HANDLE: watch=10
events=1
2014-02-04 15:50:27.350+0000: 9081: debug : virObjectRef:293 :
OBJECT_REF: obj=0x7fac54000c00
2014-02-04 15:50:27.350+0000: 9081: debug : qemuMonitorIOProcess:396 :
QEMU_MONITOR_IO_PROCESS: mon=0x7fac54000c00 buf={"id": "libvirt-6",
"error": {"class": "CommandNotFound", "desc": "The command qom-list has
not been found", "data": {"name": "qom-list"}}}
len=141
2014-02-04 15:50:27.350+0000: 9081: debug :
qemuMonitorJSONIOProcessLine:157 : Line [{"id": "libvirt-6", "error":
{"class": "CommandNotFound", "desc": "The command qom-list has not been
found", "data": {"name": "qom-list"}}}]
2014-02-04 15:50:27.350+0000: 9081: debug : virJSONValueFromString:975
: string={"id": "libvirt-6", "error": {"class": "CommandNotFound",
"desc": "The command qom-list has not been found", "data": {"name":
"qom-list"}}}
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleStartMap:853 : parser=0x7fffd5667f70
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleMapKey:835 : parser=0x7fffd5667f70 key=0x7fac7ce78d42
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleString:815 : parser=0x7fffd5667f70 str=0x7fac7ce78d48
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleMapKey:835 : parser=0x7fffd5667f70 key=0x7fac7ce78d55
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleStartMap:853 : parser=0x7fffd5667f70
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleMapKey:835 : parser=0x7fffd5667f70 key=0x7fac7ce78d5f
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleString:815 : parser=0x7fffd5667f70 str=0x7fac7ce78d68
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleMapKey:835 : parser=0x7fffd5667f70 key=0x7fac7ce78d7b
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleString:815 : parser=0x7fffd5667f70 str=0x7fac7ce78d83
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleMapKey:835 : parser=0x7fffd5667f70 key=0x7fac7ce78dae
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleStartMap:853 : parser=0x7fffd5667f70
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleMapKey:835 : parser=0x7fffd5667f70 key=0x7fac7ce78db7
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleString:815 : parser=0x7fffd5667f70 str=0x7fac7ce78dbf
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleEndMap:881 : parser=0x7fffd5667f70
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleEndMap:881 : parser=0x7fffd5667f70
2014-02-04 15:50:27.350+0000: 9081: debug :
virJSONParserHandleEndMap:881 : parser=0x7fffd5667f70
2014-02-04 15:50:27.350+0000: 9081: debug : virJSONValueFromString:1026
: result=0x7fac7ce6b9a0
2014-02-04 15:50:27.350+0000: 9081: debug :
qemuMonitorJSONIOProcessLine:177 : QEMU_MONITOR_RECV_REPLY:
mon=0x7fac54000c00 reply={"id": "libvirt-6", "error": {"class":
"CommandNotFound", "desc": "The command qom-list has not been found",
"data": {"name": "qom-list"}}}
2014-02-04 15:50:27.350+0000: 9081: debug :
qemuMonitorJSONIOProcess:226 : Total used 141 bytes out of 141 available
in buffer
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=10
events=13
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 1 140378773645312
2014-02-04 15:50:27.350+0000: 9081: debug : virObjectUnref:256 :
OBJECT_UNREF: obj=0x7fac54000c00
2014-02-04 15:50:27.350+0000: 9082: debug :
virEventPollUpdateHandle:147 : EVENT_POLL_UPDATE_HANDLE: watch=10
events=13
2014-02-04 15:50:27.350+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=10 w=11
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=11 w=12
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=12 w=13
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=13 w=14
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollDispatchHandles:485 : i=14 w=58
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.351+0000: 9081: debug : virEventRunDefaultImpl:271
: running default event implementation
2014-02-04 15:50:27.351+0000: 9082: debug :
virEventPollInterruptLocked:713 : Skip interrupt, 0 140378773645312
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCleanupTimeouts:517 : Cleanup 5
2014-02-04 15:50:27.351+0000: 9082: debug :
qemuMonitorJSONCommandWithFd:269 : Receive command reply ret=0
rxObject=0x7fac7ce6b9a0
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCleanupHandles:565 : Cleanup 15
2014-02-04 15:50:27.351+0000: 9082: debug : virJSONValueToString:1106 :
object=0x7fac44000a50
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=0 w=1, f=5 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000a50 type=0
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=1 w=2, f=7 e=1 d=0
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=2 w=3, f=12 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000a70 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=3 w=4, f=13 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000bf0 type=0
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=4 w=5, f=14 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000c10 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=5 w=6, f=15 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac44000ce0 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=6 w=7, f=16 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug : virJSONValueToString:1139 :
result={"execute":"qom-list","arguments":{"path":"/"},"id":"libvirt-6"}
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=7 w=8, f=17 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug : virJSONValueToString:1106 :
object=0x7fac7ce6b9a0
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=8 w=9, f=19 e=1 d=0
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=9 w=10, f=23 e=25 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce6b9a0 type=0
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=10 w=11, f=25 e=25 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce6b8a0 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=11 w=12, f=24 e=25 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce67660 type=0
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=12 w=13, f=26 e=25 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce83f30 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=13 w=14, f=27 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce61930 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollMakePollFDs:394
: Prepare n=14 w=58, f=28 e=1 d=0
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce6ce30 type=0
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCalculateTimeout:332 : Calculate expiry of 5 timers
2014-02-04 15:50:27.351+0000: 9082: debug :
virJSONValueToStringOne:1037 : object=0x7fac7ce80230 type=2
gen=0x7fac44001000
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529031312
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCalculateTimeout:340 : Got a timeout scheduled for
1391529032349
2014-02-04 15:50:27.351+0000: 9082: debug : virJSONValueToString:1139 :
result={"id":"libvirt-6","error":{"class":"CommandNotFound","desc":"The
command qom-list has not been found","data":{"name":"qom-list"}}}
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCalculateTimeout:353 : Schedule timeout then=1391529031312
now=1391529027351
2014-02-04 15:50:27.351+0000: 9082: debug :
qemuMonitorJSONCheckError:343 : unable to execute QEMU command
{"execute":"qom-list","arguments":{"path":"/"},"id":"libvirt-6"}:
{"id":"libvirt-6","error":{"class":"CommandNotFound","desc":"The command
qom-list has not been found","data":{"name":"qom-list"}}}
2014-02-04 15:50:27.351+0000: 9081: debug :
virEventPollCalculateTimeout:362 : Timeout at 1391529031312 due in 3961
ms
2014-02-04 15:50:27.351+0000: 9081: debug : virEventPollRunOnce:630 :
EVENT_POLL_RUN: nhandles=15 timeout=3961
2014-02-04 15:50:27.351+0000: 9082: error :
qemuMonitorJSONCheckError:354 : internal error: unable to execute QEMU
command 'qom-list': The command qom-list has not been found
====== end of log =====
Segmentation fault (core dumped)
10 years, 9 months
[libvirt] [PATCH v2] bandwidth: Adjust documentation
by John Ferlan
Recent autotest/virt-test testing on f20 discovered an anomaly in how
the bandwidth options are documented and used. This was discovered due
to a bug fix in the /sbin/tc utility found in iproute-3.11.0.1 (on f20)
in which overflow was actually caught and returned as an error. The fix
was first introduced in iproute-3.10 (search on iproute2 commit 'a303853e').
The autotest/virt-test test for virsh domiftune was attempting to send
the largest unsigned integer value (4294967295) for maximum value
testing. The libvirt xml implementation was designed to manage values
in kilobytes thus when this value was passed to /sbin/tc, it (now)
properly rejected the 4294967295kbps value.
Investigation of the problem discovered that formatdomain.html.in and
formatnetwork.html.in described the elements and property types slightly
differently, although they use the same code - virNetDevBandwidthParseRate()
(shared by portgroups, domains, and networks xml parsers). Rather than
have the descriptions in two places, this patch will combine and reword
the description under formatnetwork.html.in and have formatdomain.html.in
link to that description.
This documentation faux pas was continued into the virsh man page where
the bandwidth description for both 'attach-interface' and 'domiftune'
did not indicate the format of each value, thus leading to the test using
largest unsigned integer value assuming "bps" rather than "kbps", which
ultimately was wrong.
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
Changes since v1:
-> Reflection and some private IRC validation results in changing
to use "kilobyte" and not "kibibyte"
-> Although the smallest unit is 1 kb/kbps, it's felt that things
aren't headed in the going smaller direction, rather things are
desired to be larger. So the inability to "test" the maximum of
4294967295 bps in favor of 4294967 kbps shouldn't really matter.
docs/formatdomain.html.in | 35 +++-----------------
docs/formatnetwork.html.in | 81 ++++++++++++++++++++++++++++++++++------------
tools/virsh.pod | 10 ++++--
3 files changed, 73 insertions(+), 53 deletions(-)
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index 4660983..ea1a97b 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -3750,37 +3750,10 @@ qemu-kvm -net nic,model=? /dev/null
<p>
This part of interface XML provides setting quality of service. Incoming
- and outgoing traffic can be shaped independently. The
- <code>bandwidth</code> element can have at most one <code>inbound</code>
- and at most one <code>outbound</code> child elements. Leaving any of these
- children element out result in no QoS applied on that traffic direction.
- So, when you want to shape only domain's incoming traffic, use
- <code>inbound</code> only, and vice versa. Each of these elements have one
- mandatory attribute <code>average</code> (or <code>floor</code> as
- described below). <code>average</code> specifies average bit rate on
- the interface being shaped. Then there are two optional attributes:
- <code>peak</code>, which specifies maximum rate at which interface can send
- data, and <code>burst</code>, amount of bytes that can be burst at
- <code>peak</code> speed. Accepted values for attributes are integer
- numbers. The units for <code>average</code> and <code>peak</code> attributes
- are kilobytes per second, and for the <code>burst</code> just kilobytes.
- Note the limitation of implementation: the <code>peak</code> attribute in
- <code>outbound</code> element is ignored (as linux ingress filters don't
- know it yet). <span class="since">Since 0.9.4</span> The <code>inbound</code> can
- optionally have <code>floor</code> attribute. This is there for
- guaranteeing minimal throughput for shaped interfaces. This, however,
- requires that all traffic goes through one point where QoS decisions can
- take place. That's why this attribute works only for virtual networks for
- now (that is <code><interface type='network'/></code> with a
- forward type of route, nat, or no forward at all). Moreover, the
- virtual network the interface is connected to is required to have at least
- inbound QoS set (<code>average</code> at least). Moreover, with
- <code>floor</code> attribute users don't need to specify
- <code>average</code>. However, <code>peak</code> and <code>burst</code>
- attributes still require <code>average</code>. Currently, linux kernel
- doesn't allow ingress qdiscs to have any classes therefore
- <code>floor</code> can be applied only on <code>inbound</code> and not
- <code>outbound</code>. <span class="since">Since 1.0.1</span>
+ and outgoing traffic can be shaped independently.
+ The <code>bandwidth</code> element and its child elements are described
+ in the <a href="formatnetwork.html#elementQoS">QoS</a> section of
+ the Network XML.
</p>
<h5><a name="elementVlanTag">Setting VLAN tag (on supported network types only)</a></h5>
diff --git a/docs/formatnetwork.html.in b/docs/formatnetwork.html.in
index 1ca1bec..d4c390a 100644
--- a/docs/formatnetwork.html.in
+++ b/docs/formatnetwork.html.in
@@ -412,40 +412,81 @@
<p>
The <code><bandwidth></code> element allows setting
- quality of service for a particular network.
- <span class="since">Since 0.9.4</span> The limits specified
+ quality of service for a particular network
+ (<span class="since">since 0.9.4</span>). For a <code>domain</code>
+ object, the limits specified are applied to the domain traffic.
+ For a <code>network</code> object, the limits specified
are applied to the aggregate of all traffic to/from all guest
interfaces attached to that network, <b>not</b> to each guest
- interface individually. Setting <code>bandwidth</code> for a
+ interface individually. Setting <code>bandwidth</code> for a
network is supported only for networks with
a <code><forward></code> mode
of <code>route</code>, <code>nat</code>, or no mode at all
- (i.e. an "isolated" network). <code>bandwidth</code> setting
+ (i.e. an "isolated" network). Setting <code>bandwidth</code>
is <b>not</b> supported for forward modes
of <code>bridge</code>, <code>passthrough</code>, <code>private</code>,
or <code>hostdev</code>, and attempts to do this will lead to
- a failure to define the network (or to create a transient
- network).
+ a failure to define the network (or to create a transient network).
</p>
<p>
Incoming and outgoing traffic can be shaped independently. The
- <code>bandwidth</code> element can have at most
- one <code>inbound</code> and at most one <code>outbound</code>
+ <code>bandwidth</code> element can have at most one
+ <code>inbound</code> and at most one <code>outbound</code>
child element. Leaving either of these children elements out
results in no QoS applied for that traffic direction. So,
- when you want to shape only a network's incoming traffic, use
+ when you want to shape only incoming traffic, use
<code>inbound</code> only, and vice versa. Each of these
- elements have one mandatory attribute - <code>average</code>,
- which specifies the desired average bit rate for the interface
- being shaped (in kibibytes/second). There are also two
- optional attributes: <code>peak</code>, which specifies the
- maximum rate at which the bridge can send data (again in
- kibibytes/second), and <code>burst</code> - the amount of
- bytes that can be transmitted in a single burst at
- <code>peak</code> speed (in kibibytes). Accepted values for
- attributes are integer numbers. The allotted bandwidth is
- shared equally between domains connected to the network.
+ elements have one mandatory attribute - <code>average</code> (or
+ <code>floor</code> as described below). The attributes are as follows,
+ where accepted values for each attribute is an integer number.
</p>
+ <dl>
+ <dt><code>average</code></dt>
+ <dd>
+ Specifies the desired average bit rate for the interface
+ being shaped (in kilobytes/second).
+ </dd>
+ <dt><code>peak</code></dt>
+ <dd>
+ Optional attribute which specifies the maximum rate at
+ which the bridge can send data (in kilobytes/second).
+ Note the limitation of implementation: this attribute in the
+ <code>outbound</code> element is ignored (as Linux ingress
+ filters don't know it yet).
+ </dd>
+ <dt><code>burst</code></dt>
+ <dd>
+ Optional attribute which specifies the amount of kilobytes that
+ can be transmitted in a single burst at <code>peak</code> speed.
+ </dd>
+ <dt><code>floor</code></dt>
+ <dd>
+ Optional attribute available only for the <code>inbound</code>
+ element. This attribute guarantees minimal throughput for
+ shaped interfaces. This, however, requires that all traffic
+ goes through one point where QoS decisions can take place, hence
+ why this attribute works only for virtual networks for now
+ (that is <code><interface type='network'/></code> with a
+ forward type of route, nat, or no forward at all). Moreover, the
+ virtual network the interface is connected to is required to have
+ at least inbound QoS set (<code>average</code> at least). If
+ using the <code>floor</code> attribute users don't need to specify
+ <code>average</code>. However, <code>peak</code> and
+ <code>burst</code> attributes still require <code>average</code>.
+ Currently, the Linux kernel doesn't allow ingress qdiscs to have
+ any classes therefore <code>floor</code> can be applied only
+ on <code>inbound</code> and not <code>outbound</code>.
+ </dd>
+ </dl>
+
+ <p>
+ Attributes <code>average</code>, <code>peak</code>, and
+ <code>burst</code> are available
+ <span class="since">since 0.9.4</span>, while the
+ <code>floor</code> attribute is available
+ <span class="since">since 1.0.1</span>.
+ </p>
+
<p>
A <code><portgroup></code> element can also include
a <code><bandwidth></code> element. In that case, the
@@ -561,7 +602,7 @@
network), and each portgroup has a name, as well as various
subelements associated with it. The currently supported
subelements are <code><bandwidth></code>
- (documented <a href="formatdomain.html#elementQoS">here</a>)
+ (described <a href="formatnetwork.html#elementQoS">here</a>)
and <code><virtualport></code>
(documented <a href="formatdomain.html#elementsNICSDirect">here</a>).
If a domain interface definition specifies a portgroup (by
diff --git a/tools/virsh.pod b/tools/virsh.pod
index f221475..30dcbb8 100644
--- a/tools/virsh.pod
+++ b/tools/virsh.pod
@@ -680,7 +680,10 @@ or the MAC address.
If no I<--inbound> or I<--outbound> is specified, this command will
query and show the bandwidth settings. Otherwise, it will set the
inbound or outbound bandwidth. I<average,peak,burst> is the same as
-in command I<attach-interface>.
+in command I<attach-interface>. Values for I<average> and I<peak> are
+expressed in kilobytes per second, while I<burst> is expressed in kilobytes
+in a single burst at -I<peak> speed as described in the Network XML
+documentation at L<http://libvirt.org/formatnetwork.html#elementQoS>.
If I<--live> is specified, affect a running guest.
If I<--config> is specified, affect the next boot of a persistent guest.
@@ -2019,7 +2022,10 @@ of the network interface. I<script> allows to specify a path to a script
handling a bridge instead of the default one. I<model> allows to specify the
model type. I<inbound> and I<outbound> control the bandwidth of the interface.
I<peak> and I<burst> are optional, so "average,peak", "average,,burst" and
-"average" are also legal.
+"average" are also legal. Values for I<average> and I<peak> are
+expressed in kilobytes per second, while I<burst> is expressed in kilobytes
+in a single burst at -I<peak> speed as described in the Network XML
+documentation at L<http://libvirt.org/formatnetwork.html#elementQoS>.
If I<--live> is specified, affect a running domain.
If I<--config> is specified, affect the next startup of a persistent domain.
--
1.8.4.2
10 years, 9 months
[libvirt] [PATCH] Fix build of portallocator on mingw
by Ján Tomko
IN6ADDR_ANY_INIT does not seem to be working as expected on MinGW:
error: missing braces around initializer [-Werror=missing-braces]
.sin6_addr = IN6ADDR_ANY_INIT,
Use the in6addr_any variable instead.
Reported by Daniel P. Berrange.
---
Pushed as a build breaker.
src/util/virportallocator.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/util/virportallocator.c b/src/util/virportallocator.c
index 06174b0..22cdc37 100644
--- a/src/util/virportallocator.c
+++ b/src/util/virportallocator.c
@@ -106,7 +106,7 @@ static int virPortAllocatorBindToPort(bool *used,
struct sockaddr_in6 addr6 = {
.sin6_family = AF_INET6,
.sin6_port = htons(port),
- .sin6_addr = IN6ADDR_ANY_INIT,
+ .sin6_addr = in6addr_any
};
struct sockaddr_in addr4 = {
.sin_family = AF_INET,
--
1.8.3.2
10 years, 9 months