[libvirt] lxc: shutdown $domain broken in 1.2.2
by Stephan Sachse
host: centos-6.5
kernel: 3.13.2-4.el6.x86_64
guest: fedora20
since libvirt-1.2.2 i can not shutdown this domain. works fine with
libvirt-1.2.1
# virsh shutdown fedora2
error: Failed to shutdown domain fedora2
error: Mount namespaces are not available on this platform: Function
not implemented
from the logfile: 14478: error : virProcessRunInMountNamespace:982 :
Mount namespaces are not available on this platform: Function not
implemented
the buildhost for the rpm is a centos-6.5 system with kernel 3.1.8
(dont ask! its a vserver system) and the test for "setns" failed
configure:9592: checking for setns
configure:9592: gcc -std=gnu99 -o conftest -g -O2 conftest.c >&5
/tmp/cchlir6v.o: In function `main':
/builddir/build/BUILD/libvirt-1.2.2/conftest.c:184: undefined
reference to `setns'
collect2: ld returned 1 exit status
setns() was added in glibc-2.14 centos6 has glibc-2.12
attached is a fix for this problem.
stolen from: http://cgit.freedesktop.org/systemd/systemd/commit/src/shared/missing.h?i...
/stephan
--
Software is like sex, it's better when it's free!
10 years, 7 months
[libvirt] Request for Wiki editing access
by James Thornsberry
To whom it may concern,
I’m just beginning to use the libvirt suite of tools and, in going through your wiki, I’ve found a couple of minor things (mostly typos) that I would immediately correct.
Also, if I get my project up, I may be able to provide some less-trivial examples of network setup xml as well.
Please feel free to NOT forward this email after moderation as it will likely be of little interest to the group at large. ;-)
Thanks,
Jim Thornsberry
10 years, 7 months
[libvirt] [libvirt-python PATCH] Bump version to 1.2.5 for new dev cycle
by Martin Kletzander
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
Notes:
I'm not sure whether this can be pushed automatically as there is no
"release", just a tag in the repo. However, libvirt-python fails to
install without this commit on my machine.
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
index f4c05ca..75f30b3 100755
--- a/setup.py
+++ b/setup.py
@@ -309,7 +309,7 @@ class my_clean(clean):
_c_modules, _py_modules = get_module_lists()
setup(name = 'libvirt-python',
- version = '1.2.4',
+ version = '1.2.5',
url = 'http://www.libvirt.org',
maintainer = 'Libvirt Maintainers',
maintainer_email = 'libvir-list(a)redhat.com',
--
1.9.2
10 years, 7 months
[libvirt] [PATCH v3 0/3] bhyve: implement PCI address allocation
by Roman Bogorodskiy
The first attempt to share PCI allocation code from qemu driver with bhyve.
To this point it went pretty smooth and I didn't have to make any changes
to the implementation of the extracted PCI code.
The only slight change I made is extracing virDomainPCIAddressSetAlloc()
from DomainPCIAddressSetCreate() to perform the actual memory allocation, just
because having virDomainPCIAddressSetFree() without Alloc() felt a little
inconsistent.
During testing I spotted only one problem (so far): the domain defined on
libvirtd without new PCI allocation doesn't start on a new version because
the definition didn't have addresses auto-assigned.
Also, I guess, there could be cases where bhyve code will trigger something from
PCI allocation code that is not supported by bhyve (e.g.: pci bridge). I'm not sure
how to properly test all the cases like that.
Changes from v2:
- Base on PCI allocation code from Qemu driver
Changes from v1:
- Reserve slot 1 for LPC PCI-ISA bridge, used by console device
- Respect addresses provided by user in domain xml file
- Fix tests so 'make check' passes
Roman Bogorodskiy (3):
qemu: extract PCI handling structs
qemu: extract common PCI handling functions
bhyve: implement PCI address allocation
Roman Bogorodskiy (3):
qemu: extract PCI handling structs
qemu: extract common PCI handling functions
bhyve: implement PCI address allocation
po/POTFILES.in | 1 +
src/Makefile.am | 6 +-
src/bhyve/bhyve_command.c | 131 ++--
src/bhyve/bhyve_device.c | 174 +++++
src/bhyve/bhyve_device.h | 38 ++
src/bhyve/bhyve_domain.c | 75 +++
src/bhyve/bhyve_domain.h | 39 ++
src/bhyve/bhyve_driver.c | 9 +-
src/libvirt_private.syms | 14 +
src/qemu/qemu_command.c | 749 +++------------------
src/qemu/qemu_command.h | 40 +-
src/qemu/qemu_domain.c | 2 +-
src/qemu/qemu_domain.h | 5 +-
src/qemu/qemu_hotplug.c | 8 +-
src/qemu/qemu_process.c | 2 +-
src/util/virpci.c | 532 +++++++++++++++
src/util/virpci.h | 121 ++++
.../bhyvexml2argvdata/bhyvexml2argv-acpiapic.args | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-acpiapic.xml | 2 +
tests/bhyvexml2argvdata/bhyvexml2argv-base.args | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-base.xml | 2 +
tests/bhyvexml2argvdata/bhyvexml2argv-console.args | 4 +-
tests/bhyvexml2argvdata/bhyvexml2argv-console.xml | 2 +
.../bhyvexml2argv-disk-virtio.args | 2 +-
.../bhyvexml2argv-disk-virtio.xml | 2 +
tests/bhyvexml2argvdata/bhyvexml2argv-macaddr.args | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-macaddr.xml | 2 +
tests/bhyvexml2argvdata/bhyvexml2argv-serial.args | 4 +-
tests/bhyvexml2argvdata/bhyvexml2argv-serial.xml | 2 +
tools/Makefile.am | 1 +
30 files changed, 1205 insertions(+), 770 deletions(-)
create mode 100644 src/bhyve/bhyve_device.c
create mode 100644 src/bhyve/bhyve_device.h
create mode 100644 src/bhyve/bhyve_domain.c
create mode 100644 src/bhyve/bhyve_domain.h
--
1.9.0
10 years, 7 months
[libvirt] [PATCH] Fix build wihout macvtap or virtualport
by Ján Tomko
Commit 1b14c44 broke the build on FreeBSD by changing
the signature of a few functions without updating the
corresponding stubs that are used when WITH_MACVTAP
or WITH_VIRTUALPORT is not defined.
---
Pushed under the build-breaker rule.
src/util/virnetdevmacvlan.c | 8 ++++----
src/util/virnetdevvportprofile.c | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/util/virnetdevmacvlan.c b/src/util/virnetdevmacvlan.c
index 56a5f6b..cb85b74 100644
--- a/src/util/virnetdevmacvlan.c
+++ b/src/util/virnetdevmacvlan.c
@@ -1068,13 +1068,13 @@ int virNetDevMacVLanDelete(const char *ifname ATTRIBUTE_UNUSED)
int virNetDevMacVLanCreateWithVPortProfile(const char *ifname ATTRIBUTE_UNUSED,
const virMacAddr *macaddress ATTRIBUTE_UNUSED,
const char *linkdev ATTRIBUTE_UNUSED,
- enum virNetDevMacVLanMode mode ATTRIBUTE_UNUSED,
+ virNetDevMacVLanMode mode ATTRIBUTE_UNUSED,
bool withTap ATTRIBUTE_UNUSED,
int vnet_hdr ATTRIBUTE_UNUSED,
const unsigned char *vmuuid ATTRIBUTE_UNUSED,
virNetDevVPortProfilePtr virtPortProfile ATTRIBUTE_UNUSED,
char **res_ifname ATTRIBUTE_UNUSED,
- enum virNetDevVPortProfileOp vmop ATTRIBUTE_UNUSED,
+ virNetDevVPortProfileOp vmop ATTRIBUTE_UNUSED,
char *stateDir ATTRIBUTE_UNUSED,
virNetDevBandwidthPtr bandwidth ATTRIBUTE_UNUSED)
{
@@ -1100,7 +1100,7 @@ int virNetDevMacVLanRestartWithVPortProfile(const char *cr_ifname ATTRIBUTE_UNUS
const char *linkdev ATTRIBUTE_UNUSED,
const unsigned char *vmuuid ATTRIBUTE_UNUSED,
virNetDevVPortProfilePtr virtPortProfile ATTRIBUTE_UNUSED,
- enum virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED)
+ virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED)
{
virReportSystemError(ENOSYS, "%s",
_("Cannot create macvlan devices on this platform"));
@@ -1112,7 +1112,7 @@ int virNetDevMacVLanVPortProfileRegisterCallback(const char *ifname ATTRIBUTE_UN
const char *linkdev ATTRIBUTE_UNUSED,
const unsigned char *vmuuid ATTRIBUTE_UNUSED,
virNetDevVPortProfilePtr virtPortProfile ATTRIBUTE_UNUSED,
- enum virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED)
+ virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED)
{
virReportSystemError(ENOSYS, "%s",
_("Cannot create macvlan devices on this platform"));
diff --git a/src/util/virnetdevvportprofile.c b/src/util/virnetdevvportprofile.c
index 7354b2c..0f43b02 100644
--- a/src/util/virnetdevvportprofile.c
+++ b/src/util/virnetdevvportprofile.c
@@ -1248,7 +1248,7 @@ int virNetDevVPortProfileAssociate(const char *macvtap_ifname ATTRIBUTE_UNUSED,
const char *linkdev ATTRIBUTE_UNUSED,
int vf ATTRIBUTE_UNUSED,
const unsigned char *vmuuid ATTRIBUTE_UNUSED,
- enum virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED,
+ virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED,
bool setlink_only ATTRIBUTE_UNUSED)
{
virReportSystemError(ENOSYS, "%s",
@@ -1261,7 +1261,7 @@ int virNetDevVPortProfileDisassociate(const char *macvtap_ifname ATTRIBUTE_UNUSE
const virMacAddr *macvtap_macaddr ATTRIBUTE_UNUSED,
const char *linkdev ATTRIBUTE_UNUSED,
int vf ATTRIBUTE_UNUSED,
- enum virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED)
+ virNetDevVPortProfileOp vmOp ATTRIBUTE_UNUSED)
{
virReportSystemError(ENOSYS, "%s",
_("Virtual port profile association not supported on this platform"));
--
1.8.3.2
10 years, 7 months
[libvirt] libvirt 1.2.4 and virt-manager 0.9.0 are not incompatible
by xeon_feng
Hello everyone
I encountered a problem when I completed the update of libvirt from 0.10 to 1.2.4 .
The problem was that virt-manager(version 0.9.0) could not start and reported error : "ImportError: /usr/lib64/libvirt.so.0: version 'LIBVIRT_PRIVIATE_0.10.2' not found (required by /usr/lib64/python2.6/site-packages/libvirtmod.so)".
I found the libvirt.so.0 link file just in the /usr/lib64/ directory , but it was linking to libvirt.so.0.1002.4 .not to the libvirt.so.0.10.2
I made libvirt.so.0 to link to libvirt.so.0.10.2 and restarted virt-manager , virt-manager started normally then restarted libvirtd failure, reporting error:l “ibvirtd: /usr/lib64/libvirt.so.0: version 'LIBVIRT_1.2.3' not found (require by libvirtd) .....”
I made libvirt.so.0 to link to libvirt.so.0.1002.4 and restart libvirtd , libvirtd started normally again.
Please help me to resolve the problem and give me some advise....
Thanks a lot..
Xeon.Feng
10 years, 7 months
[libvirt] [PATCH] docs: fix a typo in formatdomain
by Chen Hanxiao
s/virual/virtual
Signed-off-by: Chen Hanxiao <chenhanxiao(a)cn.fujitsu.com>
---
docs/formatdomain.html.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index b1be724..4f19473 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -4787,7 +4787,7 @@ qemu-kvm -net nic,model=? /dev/null
<p>
The nmdm device driver, available on FreeBSD, provides two
- tty devices connected together by a virual null modem cable.
+ tty devices connected together by a virtual null modem cable.
<span class="since">Since 1.2.4</span>
</p>
--
1.9.0
10 years, 7 months
[libvirt] Question about QCOW2 and Libvirt Storage Pools
by Solly Ross
Hi,
I'm doing some work getting libvirt storage pools into OpenStack, as they definitely
make certain operations much easier for the Nova libvirt driver. However, one thing
I noticed is that since storage pools automatically refresh on reboot, initial creation
information gets lost. This poses a problem, since libvirt probes for file type for the
filesystem-based pools (dir, fs, netfs, etc), and can erroneously detect a RAW file as
another file type (for instance, QCOW2). Is there a reason libvirt doesn't have an option
to persist (to disk) the unchanging parts of the volume XML?
Best Regards,
Solly Ross
P.S. we currently deal with a similar problem in OpenStack by saving the file type to disk
the first time we use the image file. However, it would be nice if libvirt could handle
this for us, at some point, as it seems like it would be a good thing to have in libvirt.
10 years, 7 months
[libvirt] [PATCH 1/2] virsh: Replace list element to defined variable
by Li Yang
Signed-off-by: Li Yang <liyang.fnst(a)cn.fujitsu.com>
---
tools/virsh-secret.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/tools/virsh-secret.c b/tools/virsh-secret.c
index 47974fe..e996c72 100644
--- a/tools/virsh-secret.c
+++ b/tools/virsh-secret.c
@@ -558,7 +558,7 @@ cmdSecretList(vshControl *ctl, const vshCmd *cmd ATTRIBUTE_UNUSED)
const char *usageStr = virSecretUsageTypeTypeToString(usageType);
char uuid[VIR_UUID_STRING_BUFLEN];
- if (virSecretGetUUIDString(list->secrets[i], uuid) < 0) {
+ if (virSecretGetUUIDString(sec, uuid) < 0) {
vshError(ctl, "%s", _("Failed to get uuid of secret"));
goto cleanup;
}
--
1.7.1
10 years, 7 months
Re: [libvirt] [virt-tools-list] [virt-manager PATCH] test: Fix tests with latest libvirt
by Cole Robinson
On 05/04/2014 10:59 PM, Chen Hanxiao wrote:
> Signed-off-by: Chen Hanxiao <chenhanxiao(a)cn.fujitsu.com>
> ---
> tests/cli-test-xml/compare/virt-clone-clone-auto1.xml | 6 ++++++
> tests/cli-test-xml/compare/virt-clone-clone-auto2.xml | 1 +
> 2 files changed, 7 insertions(+)
>
> diff --git a/tests/cli-test-xml/compare/virt-clone-clone-auto1.xml b/tests/cli-test-xml/compare/virt-clone-clone-auto1.xml
> index b9fde61..03b7b5c 100644
> --- a/tests/cli-test-xml/compare/virt-clone-clone-auto1.xml
> +++ b/tests/cli-test-xml/compare/virt-clone-clone-auto1.xml
> @@ -22,16 +22,19 @@
> <disk type="block" device="floppy">
> <driver type="vmdk"/>
> <source dev="/dev/disk-pool/diskvol1-clone"/>
> + <backingStore/>
> <target dev="fda" bus="fdc"/>
> <address type="drive" controller="0" bus="0" target="0" unit="0"/>
> </disk>
> <disk type="block" device="disk">
> <source dev="/dev/disk-pool/diskvol2"/>
> + <backingStore/>
> <target dev="sda" bus="scsi"/>
> <readonly/>
> <address type="drive" controller="0" bus="0" target="0" unit="0"/>
> </disk>
> <disk type="block" device="cdrom">
> + <backingStore/>
> <target dev="sdb" bus="scsi"/>
> <readonly/>
> <address type="drive" controller="0" bus="0" target="0" unit="1"/>
> @@ -39,6 +42,7 @@
> <disk type="block" device="disk">
> <driver type="qcow2"/>
> <source dev="/dev/default-pool/collidevol1.img"/>
> + <backingStore/>
> <target dev="sdc" bus="scsi"/>
> <readonly/>
> <shareable/>
> @@ -46,11 +50,13 @@
> </disk>
> <disk type="file" device="disk">
> <source file="/dev/default-pool/default-vol-clone"/>
> + <backingStore/>
> <target dev="hda" bus="ide"/>
> <address type="drive" controller="0" bus="0" target="0" unit="0"/>
> </disk>
> <disk type="file" device="disk">
> <source file="/dev/default-pool/testvol2-clone.img"/>
> + <backingStore/>
> <target dev="hdb" bus="ide"/>
> <address type="drive" controller="0" bus="0" target="0" unit="1"/>
> </disk>
> diff --git a/tests/cli-test-xml/compare/virt-clone-clone-auto2.xml b/tests/cli-test-xml/compare/virt-clone-clone-auto2.xml
> index fb78434..bbbde76 100644
> --- a/tests/cli-test-xml/compare/virt-clone-clone-auto2.xml
> +++ b/tests/cli-test-xml/compare/virt-clone-clone-auto2.xml
> @@ -22,6 +22,7 @@
> <disk type="file" device="disk">
> <driver type="qcow2"/>
> <source file="/dev/default-pool/newvm.img"/>
> + <backingStore/>
> <target dev="hda" bus="ide"/>
> <address type="drive" controller="0" bus="0" target="0" unit="0"/>
> </disk>
>
Hmm, what is actually going on here? I know latest libvirt added backingStore
chain XML to the domain XML, but what does a bare <backingStore/> mean here?
Anyone on the libvirt side know if this is intentional?
- Cole
10 years, 7 months