[libvirt] [PATCH 1/2] Add a new <nesting/> option in the domain config features list.
by Evan Broder
---
docs/formatdomain.html.in | 4 ++++
docs/schemas/domain.rng | 5 +++++
src/conf/domain_conf.c | 3 ++-
src/conf/domain_conf.h | 1 +
4 files changed, 12 insertions(+), 1 deletions(-)
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index 72bd7b9..c4eed79 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -263,6 +263,7 @@
<pae/>
<acpi/>
<apic/>
+ <nesting/>
</features>
...</pre>
@@ -282,6 +283,9 @@
<dd>ACPI is useful for power management, for example, with
KVM guests it is required for graceful shutdown to work.
</dd>
+ <dt><code>nesting</code></dt>
+ <dd>Some hypervisors support nested hardware-supported
+ virtualization, allowing you to run VMs inside of VMs.</dd>
</dl>
<h3><a name="elementsTime">Time keeping</a></h3>
diff --git a/docs/schemas/domain.rng b/docs/schemas/domain.rng
index b75f17e..78a4504 100644
--- a/docs/schemas/domain.rng
+++ b/docs/schemas/domain.rng
@@ -1213,6 +1213,11 @@
<empty/>
</element>
</optional>
+ <optional>
+ <element name="nesting">
+ <empty/>
+ </element>
+ </optional>
</interleave>
</element>
</optional>
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 918a5d7..653cba0 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -70,7 +70,8 @@ VIR_ENUM_IMPL(virDomainBoot, VIR_DOMAIN_BOOT_LAST,
VIR_ENUM_IMPL(virDomainFeature, VIR_DOMAIN_FEATURE_LAST,
"acpi",
"apic",
- "pae")
+ "pae",
+ "nesting")
VIR_ENUM_IMPL(virDomainLifecycle, VIR_DOMAIN_LIFECYCLE_LAST,
"destroy",
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index fadf43f..7306b0b 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -517,6 +517,7 @@ enum virDomainFeature {
VIR_DOMAIN_FEATURE_ACPI,
VIR_DOMAIN_FEATURE_APIC,
VIR_DOMAIN_FEATURE_PAE,
+ VIR_DOMAIN_FEATURE_NESTING,
VIR_DOMAIN_FEATURE_LAST
};
--
1.6.2.1
15 years
[libvirt] VirtualBox and windows.
by Varghese Mathew
Does libvirt support running a virtualbox vm on windows.. ?
Is there any limitations with this, vs. a linux environment?
/v
15 years
[libvirt] [PATCH] Fix error handling in qemuMonitorOpen
by Ryota Ozaki
* src/qemu/qemu_monitor.c: add error check for qemuMonitorOpenXXX
---
src/qemu/qemu_monitor.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c
index dcd2dd7..2357734 100644
--- a/src/qemu/qemu_monitor.c
+++ b/src/qemu/qemu_monitor.c
@@ -474,6 +474,8 @@ qemuMonitorOpen(virDomainObjPtr vm,
goto cleanup;
}
+ if (mon->fd == -1) goto cleanup;
+
if (virSetCloseExec(mon->fd) < 0) {
qemudReportError(NULL, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
"%s", _("Unable to set monitor close-on-exec flag"));
--
1.6.2.5
15 years
[libvirt] [PATCH] Exclude numactl on s390[x]
by Daniel P. Berrange
The numactl package is not applicable for s390[x] arches, so do
not enable it as a build dep.
* libvirt.spec.in: Exclude numactl on s390[x]
---
libvirt.spec.in | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/libvirt.spec.in b/libvirt.spec.in
index 9238bdd..770a064 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -72,6 +72,10 @@
%define with_xen 0
%endif
+# Numactl is not available on s390[x]
+%ifarch s390 s390x
+%define with_numactl 0
+%endif
# RHEL doesn't ship OpenVZ, VBox, UML, OpenNebula, PowerHypervisor or ESX
%if 0%{?rhel}
--
1.6.2.5
15 years
[libvirt] [PATCH] Disable IPv6 socket auto-binding to IPv4 socket
by Daniel P. Berrange
Sometimes getaddrinfo returns IPv4 addresses before IPv4 addresses.
IPv6 sockets default to attempting to bind to IPv4 addresses too.
So if the IPv4 address is activated first, then binding to IPv6
will fail.
* daemon/libvirtd.c: Bind to IPv6 and IPv4 addresses separately
---
daemon/libvirtd.c | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c
index 2fcd9a9..01c9bbc 100644
--- a/daemon/libvirtd.c
+++ b/daemon/libvirtd.c
@@ -615,6 +615,21 @@ remoteMakeSockets (int *fds, int max_fds, int *nfds_r, const char *node, const c
int opt = 1;
setsockopt (fds[*nfds_r], SOL_SOCKET, SO_REUSEADDR, &opt, sizeof opt);
+#ifdef IPV6_V6ONLY
+ if (runp->ai_family == PF_INET6) {
+ int on = 1;
+ /*
+ * Normally on Linux an INET6 socket will bind to the INET4
+ * address too. If getaddrinfo returns results with INET4
+ * first though, this will result in INET6 binding failing.
+ * We can trivially cope with multiple server sockets, so
+ * we force it to only listen on IPv6
+ */
+ setsockopt(fds[*nfds_r], IPPROTO_IPV6,IPV6_V6ONLY,
+ (void*)&on, sizeof on);
+ }
+#endif
+
if (bind (fds[*nfds_r], runp->ai_addr, runp->ai_addrlen) == -1) {
if (errno != EADDRINUSE) {
VIR_ERROR(_("bind: %s"), virStrerror (errno, ebuf, sizeof ebuf));
--
1.6.2.5
15 years
[libvirt] Mounting a bare-metal folder as a drive
by Adam Mooz
Hello List,
Still working on getting the DVD drive to go, but I got another question. I'm attempting to ad a folder located on the bare-metal machine to the VM and have it appear as a drive (such as HDD), is this possible? I've looked over the documentation and it suggests this is only possible for USB devices or virtual disks, but not a folder.
How would I go about adding a folder located on the bare-metal to the VM to appear as a hard drive but still be accessable to the bare metal machine?
-----------------------------------------------------------------
Adam Mooz
Adam.Mooz(a)gmail.com
AdamMooz(a)me.com
http://www.AdamMooz.com
15 years
[libvirt] [PATCH] python bindings: override virDomainGetVcpus doc
by Dan Kenigsberg
---
python/libvirt-override-api.xml | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/python/libvirt-override-api.xml b/python/libvirt-override-api.xml
index 148b89b..e7b5cbe 100644
--- a/python/libvirt-override-api.xml
+++ b/python/libvirt-override-api.xml
@@ -118,7 +118,7 @@
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
</function>
<function name='virDomainGetVcpus' file='python'>
- <info>Extract information about virtual CPUs of domain, store it in info array and also in cpumaps if this pointer is'nt NULL.</info>
+ <info>Extract information about virtual CPUs of domain. Return two lists: one with cpuinfo per vcpu, and the other with cpu affinity map per vcpu.</info>
<return type='int' info='the number of info filled in case of success, -1 in case of failure.'/>
<arg name='domain' type='virDomainPtr' info='pointer to domain object, or NULL for Domain0'/>
</function>
--
1.6.5.2
15 years
[libvirt] Possibly deadlock with tunnelled migration
by Cole Robinson
Hi Chris (and list),
Playing with TUNNELLED migration, I'm hitting an issue. Take this example:
VM URI = qemu+ssh://phys1/system
destconn = qemu:///system
invoking virDomainMigrate with a VM from the former URI, and destconn as the
latter, we will deadlock. The qemu driver would be reopening it's local
qemu:///system, and eventually lock up. We should probably add some sanity
checking for the URI we plan to open.
Aside from that, anyone have recommendations on the best way to handle the
above situation? I'm currently improving the migration support in
virt-manager, and if the TUNNELLED API requires opening a URI, it makes the
remote-to-local migration case a bit annoying, because we would have to
require the user to provide a remote accessible URI for the local system.
Thanks,
Cole
15 years
[libvirt] [PATCH] phyp: too much timeout when polling socket
by Eduardo Otubo
Hello all,
Since I moved to libssh2 I had noticed a weird behaviour, virsh was
taking too much time to complete the operations when using phyp driver.
Just found the problem, 10 seconds of timeout passed to select().
Changed to zero, since I'm just polling the socket.
Actually this patch is more important than it seems, now I can write a
script (using virsh) to test all the phyp features.
Thanks!
[]'s
--
Eduardo Otubo
Software Engineer
Linux Technology Center
IBM Systems & Technology Group
Mobile: +55 19 8135 0885
eotubo(a)linux.vnet.ibm.com
15 years
[libvirt] [PATCH] Set owner and group for file used for saving domain
by Anoop Vijayan
virsh save a domain created by libvirt and it hangs with the log message "sh: /home/newguest: Permission denied".
---
src/qemu/qemu_driver.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 30003e6..a2d9534 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -3415,6 +3415,11 @@ static int qemudDomainSave(virDomainPtr dom,
goto endjob;
}
+ if (qemuDomainSetFileOwnership(dom->conn, path, driver->user,
+ driver->group) < 0 ) {
+ goto endjob;
+ }
+
if (safewrite(fd, &header, sizeof(header)) != sizeof(header)) {
qemudReportError(dom->conn, dom, NULL, VIR_ERR_OPERATION_FAILED,
"%s", _("failed to write save header"));
--
1.5.4.5
--
Cheers!
Anoop
Linux Technology Center, IBM
15 years