forked from pool/libvirt
Updating link to change in openSUSE:Factory/libvirt revision 47.0
OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=9730892990ebb1adac0309ca98451aa5
This commit is contained in:
parent
6f0cda5d80
commit
f6a13ec8dd
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.7.4/src/xen/xend_internal.c
|
Index: libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xend_internal.c
|
--- libvirt-0.7.5.orig/src/xen/xend_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/xend_internal.c
|
+++ libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
@@ -4109,13 +4109,12 @@ xenDaemonAttachDevice(virDomainPtr domai
|
@@ -4123,13 +4123,12 @@ xenDaemonAttachDevice(virDomainPtr domai
|
||||||
|
|
||||||
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
|
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ Index: libvirt-0.7.4/src/xen/xend_internal.c
|
|||||||
if (!(def = xenDaemonDomainFetch(domain->conn,
|
if (!(def = xenDaemonDomainFetch(domain->conn,
|
||||||
domain->id,
|
domain->id,
|
||||||
domain->name,
|
domain->name,
|
||||||
@@ -4213,12 +4212,11 @@ xenDaemonDetachDevice(virDomainPtr domai
|
@@ -4229,12 +4228,11 @@ xenDaemonDetachDevice(virDomainPtr domai
|
||||||
|
|
||||||
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
|
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
|
||||||
|
|
||||||
@ -38,11 +38,11 @@ Index: libvirt-0.7.4/src/xen/xend_internal.c
|
|||||||
|
|
||||||
if (!(def = xenDaemonDomainFetch(domain->conn,
|
if (!(def = xenDaemonDomainFetch(domain->conn,
|
||||||
domain->id,
|
domain->id,
|
||||||
Index: libvirt-0.7.4/src/libvirt.c
|
Index: libvirt-0.7.5/src/libvirt.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/libvirt.c
|
--- libvirt-0.7.5.orig/src/libvirt.c
|
||||||
+++ libvirt-0.7.4/src/libvirt.c
|
+++ libvirt-0.7.5/src/libvirt.c
|
||||||
@@ -4919,7 +4919,8 @@ error:
|
@@ -5066,7 +5066,8 @@ error:
|
||||||
* @domain: pointer to domain object
|
* @domain: pointer to domain object
|
||||||
* @xml: pointer to XML description of one device
|
* @xml: pointer to XML description of one device
|
||||||
*
|
*
|
||||||
@ -52,7 +52,7 @@ Index: libvirt-0.7.4/src/libvirt.c
|
|||||||
*
|
*
|
||||||
* Returns 0 in case of success, -1 in case of failure.
|
* Returns 0 in case of success, -1 in case of failure.
|
||||||
*/
|
*/
|
||||||
@@ -4962,7 +4963,8 @@ error:
|
@@ -5109,7 +5110,8 @@ error:
|
||||||
* @domain: pointer to domain object
|
* @domain: pointer to domain object
|
||||||
* @xml: pointer to XML description of one device
|
* @xml: pointer to XML description of one device
|
||||||
*
|
*
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:6316a53b4cfaf184e795c7be69a371c5dc90a8a6dd6cd05c4208a1314aac10d4
|
|
||||||
size 5692288
|
|
3
libvirt-0.7.5.tar.bz2
Normal file
3
libvirt-0.7.5.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:0763b11fc054a82d47cce8566173e589e08f34cd7adab46c9c3de80b6eacc4c7
|
||||||
|
size 5997827
|
@ -1,3 +1,31 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jan 6 18:02:00 MST 2010 - jfehlig@novell.com
|
||||||
|
|
||||||
|
- Fix freeing of uninitialized pointer when using HAL in
|
||||||
|
node device driver
|
||||||
|
node-dev-free.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 4 14:14:41 MST 2010 - jfehlig@novell.com
|
||||||
|
|
||||||
|
- Require virt-utils package for common tools such as qemu-img
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 29 10:26:55 MST 2009 - jfehlig@novell.com
|
||||||
|
|
||||||
|
- Updated to version 0.7.5
|
||||||
|
- Add new API virDomainMemoryStats to header and drivers
|
||||||
|
- Public API and domain extension for CPU flags
|
||||||
|
- expose SR IOV physical/virtual function relationships
|
||||||
|
- Support for JSON mode monitor [deactivated]
|
||||||
|
- Support for interface model='netfront'
|
||||||
|
- vbox: Add support for version 3.1
|
||||||
|
- Support QEMU's virtual FAT block device driver
|
||||||
|
- lots of improvements and bug fixes
|
||||||
|
- Fix libvirt xen hypervisor driver to work with domctl interface
|
||||||
|
version 6
|
||||||
|
xen-shr-pages.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Dec 7 14:51:36 MST 2009 - jfehlig@novell.com
|
Mon Dec 7 14:51:36 MST 2009 - jfehlig@novell.com
|
||||||
|
|
||||||
|
328
libvirt.spec
328
libvirt.spec
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package libvirt (Version 0.7.4)
|
# spec file for package libvirt (Version 0.7.5)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -18,24 +18,71 @@
|
|||||||
# norootforbuild
|
# norootforbuild
|
||||||
|
|
||||||
%define with_xen 1
|
%define with_xen 1
|
||||||
%define with_lxc 0
|
%define with_qemu 1
|
||||||
%define with_selinux 0
|
%define with_lxc 1
|
||||||
|
%define with_openvz 1
|
||||||
|
%define with_vbox 1
|
||||||
|
%define with_uml 0
|
||||||
|
%define with_one 0
|
||||||
|
# hypervisor drivers that use a native remote protocol
|
||||||
%define with_phyp 0
|
%define with_phyp 0
|
||||||
|
%define with_esx 0
|
||||||
|
# host drivers
|
||||||
|
%define with_network 1
|
||||||
|
%define with_storage_fs 1
|
||||||
|
%define with_storage_lvm 1
|
||||||
|
%define with_storage_iscsi 1
|
||||||
|
%define with_storage_disk 1
|
||||||
|
%define with_storage_mpath 1
|
||||||
|
%define with_numactl 1
|
||||||
|
%define with_selinux 1
|
||||||
|
%define with_apparmor 0
|
||||||
|
# options
|
||||||
|
%define with_capng 0
|
||||||
|
%define with_netcf 0
|
||||||
|
%define with_udev 0
|
||||||
|
%define with_hal 0
|
||||||
|
%define with_yajl 0
|
||||||
# Xen is available only on i386 x86_64
|
# Xen is available only on i386 x86_64
|
||||||
%ifnarch %ix86 x86_64
|
%ifnarch %ix86 x86_64
|
||||||
%define with_xen 0
|
%define with_xen 0
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?suse_version} > 1100
|
# LXC and selinux are not available on anything < openSUSE 11.1
|
||||||
%define with_lxc 1
|
%if 0%{?suse_version} < 1110
|
||||||
%define with_selinux 1
|
%define with_lxc 0
|
||||||
|
%define with_selinux 0
|
||||||
%endif
|
%endif
|
||||||
# Build phyp backend for IBM Power systems
|
# Enable phyp driver for IBM Power systems
|
||||||
%ifarch ppc64
|
%ifarch ppc64
|
||||||
%define with_phyp 1
|
%define with_phyp 1
|
||||||
%endif
|
%endif
|
||||||
|
# numactl only on x86_64 and ia64
|
||||||
|
%ifnarch x86_64 ia64
|
||||||
|
%define with_numactl 0
|
||||||
|
%endif
|
||||||
|
# SLES doesn't contain OpenVZ, VBox, UML, OpenNebula, or ESX
|
||||||
|
%if 0%{?sles_version}
|
||||||
|
%define with_openvz 0
|
||||||
|
%define with_vbox 0
|
||||||
|
%define with_uml 0
|
||||||
|
%define with_one 0
|
||||||
|
%define with_esx 0
|
||||||
|
%endif
|
||||||
|
%if 0%{?suse_version} > 1110
|
||||||
|
%define with_udev 1
|
||||||
|
%else
|
||||||
|
%define with_hal 1
|
||||||
|
%endif
|
||||||
|
|
||||||
Name: libvirt
|
Name: libvirt
|
||||||
BuildRequires: bridge-utils cyrus-sasl-devel device-mapper-devel fdupes gettext gnutls-devel hal-devel iptables-devel libxml2-devel lvm2 ncurses-devel parted-devel pkg-config python-devel python-xml readline-devel util-linux xhtml-dtd
|
BuildRequires: bridge-utils cyrus-sasl-devel device-mapper-devel fdupes gettext gnutls-devel iptables-devel libxml2-devel lvm2 ncurses-devel parted-devel pkg-config python-devel python-xml readline-devel util-linux xhtml-dtd
|
||||||
|
%if %{with_hal}
|
||||||
|
BuildRequires: hal-devel
|
||||||
|
%endif
|
||||||
|
%if %{with_udev}
|
||||||
|
BuildRequires: libudev-devel >= 145
|
||||||
|
BuildRequires: libpciaccess0-devel >= 0.10.9
|
||||||
|
%endif
|
||||||
%if %{with_xen}
|
%if %{with_xen}
|
||||||
BuildRequires: xen-devel
|
BuildRequires: xen-devel
|
||||||
%endif
|
%endif
|
||||||
@ -47,7 +94,7 @@ BuildRequires: avahi-devel
|
|||||||
%if %{with_selinux}
|
%if %{with_selinux}
|
||||||
BuildRequires: libselinux-devel
|
BuildRequires: libselinux-devel
|
||||||
%endif
|
%endif
|
||||||
%ifarch x86_64 ia64
|
%if %{with_numactl}
|
||||||
BuildRequires: libnuma-devel
|
BuildRequires: libnuma-devel
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?suse_version} > 1110
|
%if 0%{?suse_version} > 1110
|
||||||
@ -64,25 +111,24 @@ Url: http://libvirt.org/
|
|||||||
License: LGPLv2.1+
|
License: LGPLv2.1+
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
AutoReqProv: yes
|
AutoReqProv: yes
|
||||||
Version: 0.7.4
|
Version: 0.7.5
|
||||||
Release: 1
|
Release: 1
|
||||||
Summary: A C toolkit to interract with the virtualization capabilities of Linux
|
Summary: A C toolkit to interract with the virtualization capabilities of Linux
|
||||||
Requires: readline
|
# The client side, i.e. shared libs and virsh are in a subpackage
|
||||||
Requires: ncurses
|
Requires: libvirt-client = %{version}-%{release}
|
||||||
Requires: bridge-utils
|
Requires: bridge-utils
|
||||||
Requires: iptables
|
Requires: iptables
|
||||||
Requires: cyrus-sasl
|
|
||||||
Requires: lvm2
|
Requires: lvm2
|
||||||
Requires: parted
|
Requires: parted
|
||||||
#Requires: /usr/bin/qemu-img
|
Requires: virt-utils
|
||||||
Recommends: cyrus-sasl-digestmd5
|
|
||||||
Recommends: logrotate
|
Recommends: logrotate
|
||||||
Requires: dnsmasq
|
Requires: dnsmasq
|
||||||
Requires: PolicyKit >= 0.6
|
Requires: PolicyKit >= 0.6
|
||||||
Requires: socat
|
|
||||||
Requires: open-iscsi
|
Requires: open-iscsi
|
||||||
Requires: nfs-client
|
Requires: nfs-client
|
||||||
|
%if %{with_hal}
|
||||||
Requires: hal
|
Requires: hal
|
||||||
|
%endif
|
||||||
%if 0%{?suse_version} > 1110
|
%if 0%{?suse_version} > 1110
|
||||||
Requires: polkit >= 0.9
|
Requires: polkit >= 0.9
|
||||||
%else
|
%else
|
||||||
@ -91,9 +137,9 @@ Requires: PolicyKit >= 0.6
|
|||||||
Source0: %{name}-%{version}.tar.bz2
|
Source0: %{name}-%{version}.tar.bz2
|
||||||
Source1: libvirtd.init
|
Source1: libvirtd.init
|
||||||
# Upstream patches
|
# Upstream patches
|
||||||
Patch0: xen-list-defined.patch
|
Patch0: detach-disk.patch
|
||||||
Patch1: detach-disk.patch
|
Patch1: xen-shr-pages.patch
|
||||||
Patch2: xend-description-tag.patch
|
Patch2: node-dev-free.patch
|
||||||
# Need to go upstream
|
# Need to go upstream
|
||||||
Patch100: socat.patch
|
Patch100: socat.patch
|
||||||
Patch101: clone.patch
|
Patch101: clone.patch
|
||||||
@ -106,13 +152,37 @@ Patch202: snapshots.patch
|
|||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Libvirt is a C toolkit to interract with the virtualization
|
Libvirt is a C toolkit to interact with the virtualization
|
||||||
capabilities Linux. Virtualization of the Linux Operating System means
|
capabilities of Linux. Virtualization of the Linux Operating System means
|
||||||
the ability to run multiple instances of Operating Systems concurently
|
the ability to run multiple instances of Operating Systems concurrently
|
||||||
on a single hardware system where the basic resources are driven by a
|
on a single hardware system where the basic resources are driven by a
|
||||||
Linux instance. The library aims to provide long term stable C API
|
Linux instance. The library aims to provide long term stable C API
|
||||||
initially for the Xen paravirtualization but should be able to
|
to interact with Linux virtualization technologies.
|
||||||
integrate other virtualization mechanisms if needed.
|
|
||||||
|
|
||||||
|
|
||||||
|
Authors:
|
||||||
|
--------
|
||||||
|
Daniel Veillard <veillard@redhat.com>
|
||||||
|
Karel Zak <kzak@redhat.com>
|
||||||
|
|
||||||
|
%package client
|
||||||
|
License: LGPLv2.1+
|
||||||
|
Summary: Client side library and utilities of the libvirt library
|
||||||
|
Group: Development/Libraries/C and C++
|
||||||
|
Requires: readline
|
||||||
|
Requires: ncurses
|
||||||
|
# So remote clients can access libvirt over SSH tunnel
|
||||||
|
# (client invokes 'socat' against the UNIX socket on the server)
|
||||||
|
Requires: socat
|
||||||
|
Requires: cyrus-sasl
|
||||||
|
Recommends: cyrus-sasl-digestmd5
|
||||||
|
|
||||||
|
%description client
|
||||||
|
Libvirt is a C toolkit to interract with the virtualization
|
||||||
|
capabilities of Linux. The libvirt-client package contains shared
|
||||||
|
libraries and client binaries needed to access the virtualization
|
||||||
|
capabilities of recent versions of Linux (and other OSes).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -128,17 +198,13 @@ Group: Development/Libraries/C and C++
|
|||||||
Requires: %{name} = %{version} libxml2-devel
|
Requires: %{name} = %{version} libxml2-devel
|
||||||
%if %{with_xen}
|
%if %{with_xen}
|
||||||
Requires: xen-devel
|
Requires: xen-devel
|
||||||
Requires: pkg-config
|
|
||||||
%endif
|
%endif
|
||||||
|
Requires: pkg-config
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
Libvirt is a C toolkit to interract with the virtualization
|
Libvirt is a C toolkit to interract with the virtualization
|
||||||
capabilities Linux. Virtualization of the Linux Operating System means
|
capabilities of Linux. The libvirt-devel package contains headers
|
||||||
the ability to run multiple instances of Operating Systems concurently
|
and libraries needed for developing libvirt applications.
|
||||||
on a single hardware system where the basic resources are driven by a
|
|
||||||
Linux instance. The library aims to provide long term stable C API
|
|
||||||
initially for the Xen paravirtualization but should be able to
|
|
||||||
integrate other virtualization mechanisms if needed.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -155,12 +221,8 @@ Requires: %{name} = %{version}
|
|||||||
|
|
||||||
%description doc
|
%description doc
|
||||||
Libvirt is a C toolkit to interract with the virtualization
|
Libvirt is a C toolkit to interract with the virtualization
|
||||||
capabilities Linux. Virtualization of the Linux Operating System means
|
capabilities of Linux. The libvirt-doc packages contains documentation
|
||||||
the ability to run multiple instances of Operating Systems concurently
|
for the libvirt API and tools.
|
||||||
on a single hardware system where the basic resources are driven by a
|
|
||||||
Linux instance. The library aims to provide long term stable C API
|
|
||||||
initially for the Xen paravirtualization but should be able to
|
|
||||||
integrate other virtualization mechanisms if needed.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -178,12 +240,8 @@ Requires: %{name} = %{version}
|
|||||||
|
|
||||||
%description python
|
%description python
|
||||||
Libvirt is a C toolkit to interract with the virtualization
|
Libvirt is a C toolkit to interract with the virtualization
|
||||||
capabilities Linux. Virtualization of the Linux Operating System means
|
capabilities of Linux. The libvirt-python package provides python
|
||||||
the ability to run multiple instances of Operating Systems concurently
|
bindings for the libvirt C API.
|
||||||
on a single hardware system where the basic resources are driven by a
|
|
||||||
Linux instance. The library aims to provide long term stable C API
|
|
||||||
initially for the Xen paravirtualization but should be able to
|
|
||||||
integrate other virtualization mechanisms if needed.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -209,24 +267,80 @@ Authors:
|
|||||||
%if ! %{with_xen}
|
%if ! %{with_xen}
|
||||||
%define _without_xen --without-xen
|
%define _without_xen --without-xen
|
||||||
%endif
|
%endif
|
||||||
|
%if ! %{with_qemu}
|
||||||
|
%define _without_qemu --without-qemu
|
||||||
|
%endif
|
||||||
%if ! %{with_lxc}
|
%if ! %{with_lxc}
|
||||||
%define _without_lxc --without-lxc
|
%define _without_lxc --without-lxc
|
||||||
%endif
|
%endif
|
||||||
%if %{with_selinux}
|
%if ! %{with_openvz}
|
||||||
%define _with_selinux --with-selinux
|
%define _without_openvz --without-openvz
|
||||||
|
%endif
|
||||||
|
%if ! %{with_vbox}
|
||||||
|
%define _without_vbox --without-vbox
|
||||||
|
%endif
|
||||||
|
%if ! %{with_uml}
|
||||||
|
%define _without_uml --without-uml
|
||||||
|
%endif
|
||||||
|
%if ! %{with_one}
|
||||||
|
%define _without_one --without-one
|
||||||
|
%endif
|
||||||
|
%if ! %{with_phyp}
|
||||||
|
%define _without_phyp --without-phyp
|
||||||
|
%endif
|
||||||
|
%if ! %{with_esx}
|
||||||
|
%define _without_esx --without-esx
|
||||||
|
%endif
|
||||||
|
%if ! %{with_numactl}
|
||||||
|
%define _without_numactl --without-numactl
|
||||||
|
%endif
|
||||||
|
%if ! %{with_selinux}
|
||||||
|
%define _without_selinux --without-selinux
|
||||||
|
%endif
|
||||||
|
%if ! %{with_apparmor}
|
||||||
|
%define _without_apparmor --without-apparmor
|
||||||
|
%endif
|
||||||
|
%if ! %{with_capng}
|
||||||
|
%define _without_capng --without-capng
|
||||||
|
%endif
|
||||||
|
%if ! %{with_netcf}
|
||||||
|
%define _without_netcf --without-netcf
|
||||||
|
%endif
|
||||||
|
%if ! %{with_hal}
|
||||||
|
%define _without_hal --without-hal
|
||||||
|
%endif
|
||||||
|
%if ! %{with_udev}
|
||||||
|
%define _without_udev --without-udev
|
||||||
|
%endif
|
||||||
|
%if ! %{with_yajl}
|
||||||
|
%define _without_yajl --without-yajl
|
||||||
%endif
|
%endif
|
||||||
autoreconf -f -i
|
autoreconf -f -i
|
||||||
export CFLAGS="$RPM_OPT_FLAGS"
|
export CFLAGS="$RPM_OPT_FLAGS"
|
||||||
%configure --disable-static --with-pic \
|
%configure --disable-static --with-pic \
|
||||||
%{?_without_xen} \
|
%{?_without_xen} \
|
||||||
|
%{?_without_qemu} \
|
||||||
%{?_without_lxc} \
|
%{?_without_lxc} \
|
||||||
|
%{?_without_openvz} \
|
||||||
|
%{?_without_vbox} \
|
||||||
|
%{?_without_uml} \
|
||||||
|
%{?_without_one} \
|
||||||
|
%{?_without_phyp} \
|
||||||
|
%{?_without_esx} \
|
||||||
|
%{?_without_numactl} \
|
||||||
%{?_with_selinux} \
|
%{?_with_selinux} \
|
||||||
|
%{?_without_capng} \
|
||||||
|
%{?_without_netcf} \
|
||||||
|
%{?_without_selinux} \
|
||||||
|
%{?_without_apparmor} \
|
||||||
|
%{?_without_hal} \
|
||||||
|
%{?_without_udev} \
|
||||||
|
%{?_without_yajl} \
|
||||||
|
--without-xen-proxy \
|
||||||
--libexecdir=%{_libdir}/%{name} \
|
--libexecdir=%{_libdir}/%{name} \
|
||||||
--with-init-script=none \
|
--with-init-script=none \
|
||||||
--with-remote-pid-file=%{_localstatedir}/run/libvirtd.pid \
|
--with-remote-pid-file=%{_localstatedir}/run/libvirtd.pid \
|
||||||
--with-xen-proxy=no \
|
|
||||||
ac_cv_path_DNSMASQ=/usr/sbin/dnsmasq \
|
ac_cv_path_DNSMASQ=/usr/sbin/dnsmasq \
|
||||||
ac_cv_path_QEMU_IMG=/usr/bin/qemu-img-xen \
|
|
||||||
ac_cv_path_ISCSIADM=/sbin/iscsiadm \
|
ac_cv_path_ISCSIADM=/sbin/iscsiadm \
|
||||||
ac_cv_path_MODPROBE=/sbin/modprobe \
|
ac_cv_path_MODPROBE=/sbin/modprobe \
|
||||||
ac_cv_path_UDEVADM=/sbin/udevadm \
|
ac_cv_path_UDEVADM=/sbin/udevadm \
|
||||||
@ -244,6 +358,14 @@ rm -f $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
|
|||||||
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/run/libvirt
|
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/run/libvirt
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/lib/libvirt
|
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/lib/libvirt
|
||||||
rm $RPM_BUILD_ROOT%{_libdir}/*.*a $RPM_BUILD_ROOT%{py_sitedir}/*.*a
|
rm $RPM_BUILD_ROOT%{_libdir}/*.*a $RPM_BUILD_ROOT%{py_sitedir}/*.*a
|
||||||
|
%if ! %{with_lxc}
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/lxc.conf
|
||||||
|
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_lxc.aug
|
||||||
|
%endif
|
||||||
|
%if ! %{with_qemu}
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu.conf
|
||||||
|
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_qemu.aug
|
||||||
|
%endif
|
||||||
ln_dupes()
|
ln_dupes()
|
||||||
{
|
{
|
||||||
target=""
|
target=""
|
||||||
@ -269,7 +391,11 @@ ln -s /etc/init.d/libvirtd $RPM_BUILD_ROOT/usr/sbin/rclibvirtd
|
|||||||
%clean
|
%clean
|
||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
%post
|
||||||
|
/sbin/ldconfig
|
||||||
|
%if 0%{?sles_version}
|
||||||
|
%{fillup_and_insserv -f -y libvirtd}
|
||||||
|
%endif
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
%stop_on_removal libvirtd
|
%stop_on_removal libvirtd
|
||||||
@ -279,49 +405,84 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%restart_on_update libvirtd
|
%restart_on_update libvirtd
|
||||||
%insserv_cleanup
|
%insserv_cleanup
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%post client -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%postun client -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%files
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
%{_bindir}/virsh
|
|
||||||
%{_bindir}/virt-xml-validate
|
|
||||||
%{_bindir}/virt-pki-validate
|
|
||||||
%{_sbindir}/libvirtd
|
%{_sbindir}/libvirtd
|
||||||
|
%dir %{_libdir}/%{name}
|
||||||
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/
|
||||||
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
|
||||||
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
|
||||||
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
|
||||||
|
%config /etc/init.d/libvirtd
|
||||||
|
%{_sbindir}/rclibvirtd
|
||||||
|
%config %{_sysconfdir}/libvirt/libvirtd.conf
|
||||||
|
%config %{_sysconfdir}/logrotate.d/libvirtd
|
||||||
|
%config %{_sysconfdir}/libvirt/qemu/networks/default.xml
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/network/
|
||||||
|
%dir %{_localstatedir}/run/libvirt/
|
||||||
|
%dir %{_localstatedir}/lib/libvirt/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/images/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/boot/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/cache/libvirt/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/
|
||||||
|
%if 0%{?suse_version} > 1110
|
||||||
|
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
|
||||||
|
%else
|
||||||
|
%{_datadir}/PolicyKit/policy/org.libvirt.unix.policy
|
||||||
|
%endif
|
||||||
|
%{_datadir}/augeas
|
||||||
|
%if %{with_qemu}
|
||||||
|
%config %{_sysconfdir}/libvirt/qemu.conf
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/run/libvirt/qemu/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/qemu/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/cache/libvirt/qemu/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/qemu/
|
||||||
|
%endif
|
||||||
|
%if %{with_lxc}
|
||||||
|
%config %{_sysconfdir}/libvirt/lxc.conf
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/run/libvirt/lxc/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/lxc/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/lxc/
|
||||||
|
%attr(0755, root, root) %{_libdir}/%{name}/libvirt_lxc
|
||||||
|
%endif
|
||||||
|
%if %{with_uml}
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/run/libvirt/uml/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/uml/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/uml/
|
||||||
|
%endif
|
||||||
|
%if 0%{with_storage_disk}
|
||||||
|
%{_libdir}/%{name}/libvirt_parthelper
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files client -f %{name}.lang
|
||||||
|
%defattr(-, root, root)
|
||||||
%doc %dir %{_docdir}/%{name}
|
%doc %dir %{_docdir}/%{name}
|
||||||
%doc %{_docdir}/%{name}/[CNRT]*
|
%doc %{_docdir}/%{name}/[CNRT]*
|
||||||
%doc %{_docdir}/%{name}/AUTHORS
|
%doc %{_docdir}/%{name}/AUTHORS
|
||||||
%doc %{_mandir}/man1/virsh.1*
|
%doc %{_mandir}/man1/virsh.1*
|
||||||
%doc %{_mandir}/man1/virt-xml-validate.1*
|
%doc %{_mandir}/man1/virt-xml-validate.1*
|
||||||
%doc %{_mandir}/man1/virt-pki-validate.1*
|
%doc %{_mandir}/man1/virt-pki-validate.1*
|
||||||
%{_libdir}/*.so.*
|
%{_bindir}/virsh
|
||||||
%dir %{_libdir}/%{name}
|
%{_bindir}/virt-xml-validate
|
||||||
%if 0%{?suse_version} > 1030
|
%{_bindir}/virt-pki-validate
|
||||||
%{_libdir}/%{name}/libvirt_parthelper
|
%{_libdir}/lib*.so.*
|
||||||
%endif
|
%dir %{_datadir}/libvirt/
|
||||||
%if %{with_lxc}
|
%dir %{_datadir}/libvirt/schemas/
|
||||||
%attr(0755, root, root) %{_libdir}/%{name}/libvirt_lxc
|
%{_datadir}/libvirt/schemas/domain.rng
|
||||||
%endif
|
%{_datadir}/libvirt/schemas/network.rng
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/
|
%{_datadir}/libvirt/schemas/storagepool.rng
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
|
%{_datadir}/libvirt/schemas/storagevol.rng
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
|
%{_datadir}/libvirt/schemas/nodedev.rng
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
|
%{_datadir}/libvirt/schemas/capability.rng
|
||||||
%if %{with_lxc}
|
%{_datadir}/libvirt/schemas/interface.rng
|
||||||
%config %{_sysconfdir}/libvirt/lxc.conf
|
%{_datadir}/libvirt/schemas/secret.rng
|
||||||
%endif
|
%{_datadir}/libvirt/schemas/storageencryption.rng
|
||||||
%config %{_sysconfdir}/libvirt/qemu/networks/default.xml
|
%{_datadir}/libvirt/cpu_map.xml
|
||||||
%config %{_sysconfdir}/logrotate.d/libvirtd
|
|
||||||
%dir /%{_localstatedir}/run/libvirt/
|
|
||||||
%dir /%{_localstatedir}/lib/libvirt/
|
|
||||||
%config /etc/init.d/libvirtd
|
|
||||||
%{_sbindir}/rclibvirtd
|
|
||||||
%config %{_sysconfdir}/libvirt/libvirtd.conf
|
|
||||||
%config %{_sysconfdir}/libvirt/qemu.conf
|
|
||||||
%config %{_sysconfdir}/sasl2/libvirt.conf
|
%config %{_sysconfdir}/sasl2/libvirt.conf
|
||||||
%if 0%{?suse_version} > 1110
|
|
||||||
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
|
|
||||||
%else
|
|
||||||
%{_datadir}/PolicyKit/policy/org.libvirt.unix.policy
|
|
||||||
%endif
|
|
||||||
%{_datadir}/libvirt
|
|
||||||
%{_datadir}/augeas
|
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
@ -341,6 +502,5 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%doc %{_docdir}/%{name}-python
|
%doc %{_docdir}/%{name}-python
|
||||||
%{py_sitedir}/libvirt.py*
|
%{py_sitedir}/libvirt.py*
|
||||||
%{py_sitedir}/libvirtmod*
|
%{py_sitedir}/libvirtmod*
|
||||||
#%attr(0755, root, root) %{_libdir}/%{name}/virt-aa-helper
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Index: libvirt-0.7.2/daemon/libvirtd.conf
|
Index: libvirt-0.7.5/daemon/libvirtd.conf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.2.orig/daemon/libvirtd.conf
|
--- libvirt-0.7.5.orig/daemon/libvirtd.conf
|
||||||
+++ libvirt-0.7.2/daemon/libvirtd.conf
|
+++ libvirt-0.7.5/daemon/libvirtd.conf
|
||||||
@@ -18,8 +18,8 @@
|
@@ -18,8 +18,8 @@
|
||||||
# It is necessary to setup a CA and issue server certificates before
|
# It is necessary to setup a CA and issue server certificates before
|
||||||
# using this capability.
|
# using this capability.
|
||||||
@ -28,11 +28,11 @@ Index: libvirt-0.7.2/daemon/libvirtd.conf
|
|||||||
|
|
||||||
# Override the default mDNS advertizement name. This must be
|
# Override the default mDNS advertizement name. This must be
|
||||||
# unique on the immediate broadcast network.
|
# unique on the immediate broadcast network.
|
||||||
Index: libvirt-0.7.2/daemon/libvirtd.c
|
Index: libvirt-0.7.5/daemon/libvirtd.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.2.orig/daemon/libvirtd.c
|
--- libvirt-0.7.5.orig/daemon/libvirtd.c
|
||||||
+++ libvirt-0.7.2/daemon/libvirtd.c
|
+++ libvirt-0.7.5/daemon/libvirtd.c
|
||||||
@@ -135,7 +135,7 @@ static int sigwrite = -1; /* Signa
|
@@ -137,7 +137,7 @@ static int sigwrite = -1; /* Signa
|
||||||
static int ipsock = 0; /* -l Listen for TCP/IP */
|
static int ipsock = 0; /* -l Listen for TCP/IP */
|
||||||
|
|
||||||
/* Defaults for configuration file elements */
|
/* Defaults for configuration file elements */
|
||||||
@ -41,7 +41,7 @@ Index: libvirt-0.7.2/daemon/libvirtd.c
|
|||||||
static int listen_tcp = 0;
|
static int listen_tcp = 0;
|
||||||
static char *listen_addr = (char *) LIBVIRTD_LISTEN_ADDR;
|
static char *listen_addr = (char *) LIBVIRTD_LISTEN_ADDR;
|
||||||
static char *tls_port = (char *) LIBVIRTD_TLS_PORT;
|
static char *tls_port = (char *) LIBVIRTD_TLS_PORT;
|
||||||
@@ -157,7 +157,7 @@ static int auth_tcp = REMOTE_AUTH_NONE;
|
@@ -159,7 +159,7 @@ static int auth_tcp = REMOTE_AUTH_NONE;
|
||||||
#endif
|
#endif
|
||||||
static int auth_tls = REMOTE_AUTH_NONE;
|
static int auth_tls = REMOTE_AUTH_NONE;
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.7.4/src/xen/xend_internal.c
|
Index: libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xend_internal.c
|
--- libvirt-0.7.5.orig/src/xen/xend_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/xend_internal.c
|
+++ libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
@@ -4517,6 +4517,8 @@ xenDaemonDomainMigratePerform (virDomain
|
@@ -4559,6 +4559,8 @@ xenDaemonDomainMigratePerform (virDomain
|
||||||
"node", "-1",
|
"node", "-1",
|
||||||
"ssl", "0",
|
"ssl", "0",
|
||||||
"resource", "0", /* required, xend ignores it */
|
"resource", "0", /* required, xend ignores it */
|
||||||
|
29
node-dev-free.patch
Normal file
29
node-dev-free.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
This invalid free results in heap corruption. Some symptoms I saw
|
||||||
|
because of this were libvirtd crashing and virt-manager hanging
|
||||||
|
while trying to enumerate devices.
|
||||||
|
---
|
||||||
|
src/node_device/node_device_driver.c | 4 ++--
|
||||||
|
1 files changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: libvirt-0.7.5/src/node_device/node_device_driver.c
|
||||||
|
===================================================================
|
||||||
|
--- libvirt-0.7.5.orig/src/node_device/node_device_driver.c
|
||||||
|
+++ libvirt-0.7.5/src/node_device/node_device_driver.c
|
||||||
|
@@ -78,7 +78,7 @@ static int update_driver_name(virConnect
|
||||||
|
virNodeDeviceObjPtr dev)
|
||||||
|
{
|
||||||
|
char *driver_link = NULL;
|
||||||
|
- char *devpath;
|
||||||
|
+ char *devpath = NULL;
|
||||||
|
char *p;
|
||||||
|
int ret = -1;
|
||||||
|
|
||||||
|
@@ -114,7 +114,7 @@ static int update_driver_name(virConnect
|
||||||
|
|
||||||
|
cleanup:
|
||||||
|
VIR_FREE(driver_link);
|
||||||
|
- free(devpath);
|
||||||
|
+ VIR_FREE(devpath);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#else
|
246
snapshots.patch
246
snapshots.patch
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.7.4/include/libvirt/libvirt.h.in
|
Index: libvirt-0.7.5/include/libvirt/libvirt.h.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/include/libvirt/libvirt.h.in
|
--- libvirt-0.7.5.orig/include/libvirt/libvirt.h.in
|
||||||
+++ libvirt-0.7.4/include/libvirt/libvirt.h.in
|
+++ libvirt-0.7.5/include/libvirt/libvirt.h.in
|
||||||
@@ -565,6 +565,21 @@ int virDomainRestore
|
@@ -621,6 +621,21 @@ int virDomainRestore
|
||||||
const char *from);
|
const char *from);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -24,11 +24,11 @@ Index: libvirt-0.7.4/include/libvirt/libvirt.h.in
|
|||||||
* Domain core dump
|
* Domain core dump
|
||||||
*/
|
*/
|
||||||
int virDomainCoreDump (virDomainPtr domain,
|
int virDomainCoreDump (virDomainPtr domain,
|
||||||
Index: libvirt-0.7.4/src/libvirt.c
|
Index: libvirt-0.7.5/src/libvirt.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/libvirt.c
|
--- libvirt-0.7.5.orig/src/libvirt.c
|
||||||
+++ libvirt-0.7.4/src/libvirt.c
|
+++ libvirt-0.7.5/src/libvirt.c
|
||||||
@@ -2281,6 +2281,166 @@ error:
|
@@ -2339,6 +2339,166 @@ error:
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -195,10 +195,10 @@ Index: libvirt-0.7.4/src/libvirt.c
|
|||||||
* virDomainCoreDump:
|
* virDomainCoreDump:
|
||||||
* @domain: a domain object
|
* @domain: a domain object
|
||||||
* @to: path for the core file
|
* @to: path for the core file
|
||||||
Index: libvirt-0.7.4/src/driver.h
|
Index: libvirt-0.7.5/src/driver.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/driver.h
|
--- libvirt-0.7.5.orig/src/driver.h
|
||||||
+++ libvirt-0.7.4/src/driver.h
|
+++ libvirt-0.7.5/src/driver.h
|
||||||
@@ -136,6 +136,21 @@ typedef int
|
@@ -136,6 +136,21 @@ typedef int
|
||||||
(*virDrvDomainRestore) (virConnectPtr conn,
|
(*virDrvDomainRestore) (virConnectPtr conn,
|
||||||
const char *from);
|
const char *from);
|
||||||
@ -221,10 +221,10 @@ Index: libvirt-0.7.4/src/driver.h
|
|||||||
(*virDrvDomainCoreDump) (virDomainPtr domain,
|
(*virDrvDomainCoreDump) (virDomainPtr domain,
|
||||||
const char *to,
|
const char *to,
|
||||||
int flags);
|
int flags);
|
||||||
@@ -435,6 +450,11 @@ struct _virDriver {
|
@@ -448,6 +463,11 @@ struct _virDriver {
|
||||||
virDrvConnectIsSecure isSecure;
|
|
||||||
virDrvDomainIsActive domainIsActive;
|
virDrvDomainIsActive domainIsActive;
|
||||||
virDrvDomainIsPersistent domainIsPersistent;
|
virDrvDomainIsPersistent domainIsPersistent;
|
||||||
|
virDrvCPUCompare cpuCompare;
|
||||||
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
|
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
|
||||||
+ virDrvDomainSnapshotApply domainSnapshotApply;
|
+ virDrvDomainSnapshotApply domainSnapshotApply;
|
||||||
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
|
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
|
||||||
@ -233,10 +233,10 @@ Index: libvirt-0.7.4/src/driver.h
|
|||||||
};
|
};
|
||||||
|
|
||||||
typedef int
|
typedef int
|
||||||
Index: libvirt-0.7.4/src/xen/xen_driver.c
|
Index: libvirt-0.7.5/src/xen/xen_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xen_driver.c
|
--- libvirt-0.7.5.orig/src/xen/xen_driver.c
|
||||||
+++ libvirt-0.7.4/src/xen/xen_driver.c
|
+++ libvirt-0.7.5/src/xen/xen_driver.c
|
||||||
@@ -1052,6 +1052,81 @@ xenUnifiedDomainRestore (virConnectPtr c
|
@@ -1052,6 +1052,81 @@ xenUnifiedDomainRestore (virConnectPtr c
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -319,22 +319,22 @@ Index: libvirt-0.7.4/src/xen/xen_driver.c
|
|||||||
xenUnifiedDomainCoreDump (virDomainPtr dom, const char *to, int flags)
|
xenUnifiedDomainCoreDump (virDomainPtr dom, const char *to, int flags)
|
||||||
{
|
{
|
||||||
GET_PRIVATE(dom->conn);
|
GET_PRIVATE(dom->conn);
|
||||||
@@ -1860,6 +1935,11 @@ static virDriver xenUnifiedDriver = {
|
@@ -1862,6 +1937,11 @@ static virDriver xenUnifiedDriver = {
|
||||||
xenUnifiedIsSecure,
|
|
||||||
xenUnifiedDomainIsActive,
|
xenUnifiedDomainIsActive,
|
||||||
xenUnifiedDomainisPersistent,
|
xenUnifiedDomainisPersistent,
|
||||||
+ xenUnifiedDomainSnapshotCreate,
|
NULL, /* cpuCompare */
|
||||||
+ xenUnifiedDomainSnapshotApply,
|
+ xenUnifiedDomainSnapshotCreate, /* domainSnapshotCreate */
|
||||||
+ xenUnifiedDomainSnapshotDelete,
|
+ xenUnifiedDomainSnapshotApply, /* domainSnapshotApply */
|
||||||
+ xenUnifiedDomainNumOfSnapshots,
|
+ xenUnifiedDomainSnapshotDelete, /* domainSnapshotDelete */
|
||||||
+ xenUnifiedDomainListSnapshots,
|
+ xenUnifiedDomainNumOfSnapshots, /* domainNumOfSnapshots */
|
||||||
|
+ xenUnifiedDomainListSnapshots, /* domainListSnapshots */
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Index: libvirt-0.7.4/src/xen/xen_driver.h
|
Index: libvirt-0.7.5/src/xen/xen_driver.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xen_driver.h
|
--- libvirt-0.7.5.orig/src/xen/xen_driver.h
|
||||||
+++ libvirt-0.7.4/src/xen/xen_driver.h
|
+++ libvirt-0.7.5/src/xen/xen_driver.h
|
||||||
@@ -100,6 +100,11 @@ struct xenUnifiedDriver {
|
@@ -100,6 +100,11 @@ struct xenUnifiedDriver {
|
||||||
virDrvDomainGetSchedulerType domainGetSchedulerType;
|
virDrvDomainGetSchedulerType domainGetSchedulerType;
|
||||||
virDrvDomainGetSchedulerParameters domainGetSchedulerParameters;
|
virDrvDomainGetSchedulerParameters domainGetSchedulerParameters;
|
||||||
@ -347,10 +347,10 @@ Index: libvirt-0.7.4/src/xen/xen_driver.h
|
|||||||
};
|
};
|
||||||
|
|
||||||
typedef struct xenXMConfCache *xenXMConfCachePtr;
|
typedef struct xenXMConfCache *xenXMConfCachePtr;
|
||||||
Index: libvirt-0.7.4/src/xen/xend_internal.c
|
Index: libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xend_internal.c
|
--- libvirt-0.7.5.orig/src/xen/xend_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/xend_internal.c
|
+++ libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
@@ -53,6 +53,12 @@
|
@@ -53,6 +53,12 @@
|
||||||
|
|
||||||
#ifndef PROXY
|
#ifndef PROXY
|
||||||
@ -364,7 +364,7 @@ Index: libvirt-0.7.4/src/xen/xend_internal.c
|
|||||||
/*
|
/*
|
||||||
* The number of Xen scheduler parameters
|
* The number of Xen scheduler parameters
|
||||||
*/
|
*/
|
||||||
@@ -3271,6 +3277,87 @@ xenDaemonDomainRestore(virConnectPtr con
|
@@ -3282,6 +3288,87 @@ xenDaemonDomainRestore(virConnectPtr con
|
||||||
}
|
}
|
||||||
return xend_op(conn, "", "op", "restore", "file", filename, NULL);
|
return xend_op(conn, "", "op", "restore", "file", filename, NULL);
|
||||||
}
|
}
|
||||||
@ -452,7 +452,7 @@ Index: libvirt-0.7.4/src/xen/xend_internal.c
|
|||||||
#endif /* !PROXY */
|
#endif /* !PROXY */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -5123,6 +5210,11 @@ struct xenUnifiedDriver xenDaemonDriver
|
@@ -5165,6 +5252,11 @@ struct xenUnifiedDriver xenDaemonDriver
|
||||||
xenDaemonGetSchedulerType, /* domainGetSchedulerType */
|
xenDaemonGetSchedulerType, /* domainGetSchedulerType */
|
||||||
xenDaemonGetSchedulerParameters, /* domainGetSchedulerParameters */
|
xenDaemonGetSchedulerParameters, /* domainGetSchedulerParameters */
|
||||||
xenDaemonSetSchedulerParameters, /* domainSetSchedulerParameters */
|
xenDaemonSetSchedulerParameters, /* domainSetSchedulerParameters */
|
||||||
@ -464,10 +464,10 @@ Index: libvirt-0.7.4/src/xen/xend_internal.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
/************************************************************************
|
/************************************************************************
|
||||||
Index: libvirt-0.7.4/src/xen/proxy_internal.c
|
Index: libvirt-0.7.5/src/xen/proxy_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/proxy_internal.c
|
--- libvirt-0.7.5.orig/src/xen/proxy_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/proxy_internal.c
|
+++ libvirt-0.7.5/src/xen/proxy_internal.c
|
||||||
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenProxyDriver =
|
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenProxyDriver =
|
||||||
NULL, /* domainGetSchedulerType */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainGetSchedulerParameters */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
@ -480,11 +480,11 @@ Index: libvirt-0.7.4/src/xen/proxy_internal.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/xen/xen_hypervisor.c
|
Index: libvirt-0.7.5/src/xen/xen_hypervisor.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xen_hypervisor.c
|
--- libvirt-0.7.5.orig/src/xen/xen_hypervisor.c
|
||||||
+++ libvirt-0.7.4/src/xen/xen_hypervisor.c
|
+++ libvirt-0.7.5/src/xen/xen_hypervisor.c
|
||||||
@@ -750,6 +750,11 @@ struct xenUnifiedDriver xenHypervisorDri
|
@@ -800,6 +800,11 @@ struct xenUnifiedDriver xenHypervisorDri
|
||||||
xenHypervisorGetSchedulerType, /* domainGetSchedulerType */
|
xenHypervisorGetSchedulerType, /* domainGetSchedulerType */
|
||||||
xenHypervisorGetSchedulerParameters, /* domainGetSchedulerParameters */
|
xenHypervisorGetSchedulerParameters, /* domainGetSchedulerParameters */
|
||||||
xenHypervisorSetSchedulerParameters, /* domainSetSchedulerParameters */
|
xenHypervisorSetSchedulerParameters, /* domainSetSchedulerParameters */
|
||||||
@ -496,10 +496,10 @@ Index: libvirt-0.7.4/src/xen/xen_hypervisor.c
|
|||||||
};
|
};
|
||||||
#endif /* !PROXY */
|
#endif /* !PROXY */
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/xen/xm_internal.c
|
Index: libvirt-0.7.5/src/xen/xm_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xm_internal.c
|
--- libvirt-0.7.5.orig/src/xen/xm_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/xm_internal.c
|
+++ libvirt-0.7.5/src/xen/xm_internal.c
|
||||||
@@ -116,6 +116,11 @@ struct xenUnifiedDriver xenXMDriver = {
|
@@ -116,6 +116,11 @@ struct xenUnifiedDriver xenXMDriver = {
|
||||||
NULL, /* domainGetSchedulerType */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainGetSchedulerParameters */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
@ -512,10 +512,10 @@ Index: libvirt-0.7.4/src/xen/xm_internal.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
#define xenXMError(conn, code, fmt...) \
|
#define xenXMError(conn, code, fmt...) \
|
||||||
Index: libvirt-0.7.4/src/xen/xs_internal.c
|
Index: libvirt-0.7.5/src/xen/xs_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xs_internal.c
|
--- libvirt-0.7.5.orig/src/xen/xs_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/xs_internal.c
|
+++ libvirt-0.7.5/src/xen/xs_internal.c
|
||||||
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenStoreDriver =
|
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenStoreDriver =
|
||||||
NULL, /* domainGetSchedulerType */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainGetSchedulerParameters */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
@ -528,11 +528,11 @@ Index: libvirt-0.7.4/src/xen/xs_internal.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
#endif /* ! PROXY */
|
#endif /* ! PROXY */
|
||||||
Index: libvirt-0.7.4/tools/virsh.c
|
Index: libvirt-0.7.5/tools/virsh.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/tools/virsh.c
|
--- libvirt-0.7.5.orig/tools/virsh.c
|
||||||
+++ libvirt-0.7.4/tools/virsh.c
|
+++ libvirt-0.7.5/tools/virsh.c
|
||||||
@@ -1179,6 +1179,188 @@ cmdSave(vshControl *ctl, const vshCmd *c
|
@@ -1233,6 +1233,188 @@ cmdSave(vshControl *ctl, const vshCmd *c
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -721,7 +721,7 @@ Index: libvirt-0.7.4/tools/virsh.c
|
|||||||
* "schedinfo" command
|
* "schedinfo" command
|
||||||
*/
|
*/
|
||||||
static const vshCmdInfo info_schedinfo[] = {
|
static const vshCmdInfo info_schedinfo[] = {
|
||||||
@@ -7298,6 +7480,12 @@ static const vshCmdDef commands[] = {
|
@@ -7431,6 +7613,12 @@ static const vshCmdDef commands[] = {
|
||||||
{"undefine", cmdUndefine, opts_undefine, info_undefine},
|
{"undefine", cmdUndefine, opts_undefine, info_undefine},
|
||||||
{"uri", cmdURI, NULL, info_uri},
|
{"uri", cmdURI, NULL, info_uri},
|
||||||
|
|
||||||
@ -734,14 +734,14 @@ Index: libvirt-0.7.4/tools/virsh.c
|
|||||||
{"vol-create", cmdVolCreate, opts_vol_create, info_vol_create},
|
{"vol-create", cmdVolCreate, opts_vol_create, info_vol_create},
|
||||||
{"vol-create-from", cmdVolCreateFrom, opts_vol_create_from, info_vol_create_from},
|
{"vol-create-from", cmdVolCreateFrom, opts_vol_create_from, info_vol_create_from},
|
||||||
{"vol-create-as", cmdVolCreateAs, opts_vol_create_as, info_vol_create_as},
|
{"vol-create-as", cmdVolCreateAs, opts_vol_create_as, info_vol_create_as},
|
||||||
Index: libvirt-0.7.4/src/lxc/lxc_driver.c
|
Index: libvirt-0.7.5/src/lxc/lxc_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/lxc/lxc_driver.c
|
--- libvirt-0.7.5.orig/src/lxc/lxc_driver.c
|
||||||
+++ libvirt-0.7.4/src/lxc/lxc_driver.c
|
+++ libvirt-0.7.5/src/lxc/lxc_driver.c
|
||||||
@@ -2404,6 +2404,11 @@ static virDriver lxcDriver = {
|
@@ -2456,6 +2456,11 @@ static virDriver lxcDriver = {
|
||||||
lxcIsSecure,
|
|
||||||
lxcDomainIsActive,
|
lxcDomainIsActive,
|
||||||
lxcDomainIsPersistent,
|
lxcDomainIsPersistent,
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -750,14 +750,14 @@ Index: libvirt-0.7.4/src/lxc/lxc_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
static virStateDriver lxcStateDriver = {
|
static virStateDriver lxcStateDriver = {
|
||||||
Index: libvirt-0.7.4/src/openvz/openvz_driver.c
|
Index: libvirt-0.7.5/src/openvz/openvz_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/openvz/openvz_driver.c
|
--- libvirt-0.7.5.orig/src/openvz/openvz_driver.c
|
||||||
+++ libvirt-0.7.4/src/openvz/openvz_driver.c
|
+++ libvirt-0.7.5/src/openvz/openvz_driver.c
|
||||||
@@ -1534,6 +1534,11 @@ static virDriver openvzDriver = {
|
@@ -1535,6 +1535,11 @@ static virDriver openvzDriver = {
|
||||||
openvzIsSecure,
|
|
||||||
openvzDomainIsActive,
|
openvzDomainIsActive,
|
||||||
openvzDomainIsPersistent,
|
openvzDomainIsPersistent,
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -766,14 +766,14 @@ Index: libvirt-0.7.4/src/openvz/openvz_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
int openvzRegister(void) {
|
int openvzRegister(void) {
|
||||||
Index: libvirt-0.7.4/src/qemu/qemu_driver.c
|
Index: libvirt-0.7.5/src/qemu/qemu_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/qemu/qemu_driver.c
|
--- libvirt-0.7.5.orig/src/qemu/qemu_driver.c
|
||||||
+++ libvirt-0.7.4/src/qemu/qemu_driver.c
|
+++ libvirt-0.7.5/src/qemu/qemu_driver.c
|
||||||
@@ -7559,6 +7559,11 @@ static virDriver qemuDriver = {
|
@@ -7990,6 +7990,11 @@ static virDriver qemuDriver = {
|
||||||
qemuIsSecure,
|
|
||||||
qemuDomainIsActive,
|
qemuDomainIsActive,
|
||||||
qemuDomainIsPersistent,
|
qemuDomainIsPersistent,
|
||||||
|
qemuCPUCompare, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -782,14 +782,14 @@ Index: libvirt-0.7.4/src/qemu/qemu_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/esx/esx_driver.c
|
Index: libvirt-0.7.5/src/esx/esx_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/esx/esx_driver.c
|
--- libvirt-0.7.5.orig/src/esx/esx_driver.c
|
||||||
+++ libvirt-0.7.4/src/esx/esx_driver.c
|
+++ libvirt-0.7.5/src/esx/esx_driver.c
|
||||||
@@ -3425,6 +3425,11 @@ static virDriver esxDriver = {
|
@@ -3455,6 +3455,11 @@ static virDriver esxDriver = {
|
||||||
esxIsSecure, /* isSecure */
|
|
||||||
esxDomainIsActive, /* domainIsActive */
|
esxDomainIsActive, /* domainIsActive */
|
||||||
esxDomainIsPersistent, /* domainIsPersistent */
|
esxDomainIsPersistent, /* domainIsPersistent */
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -798,14 +798,14 @@ Index: libvirt-0.7.4/src/esx/esx_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/test/test_driver.c
|
Index: libvirt-0.7.5/src/test/test_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/test/test_driver.c
|
--- libvirt-0.7.5.orig/src/test/test_driver.c
|
||||||
+++ libvirt-0.7.4/src/test/test_driver.c
|
+++ libvirt-0.7.5/src/test/test_driver.c
|
||||||
@@ -5233,6 +5233,11 @@ static virDriver testDriver = {
|
@@ -5238,6 +5238,11 @@ static virDriver testDriver = {
|
||||||
testIsSecure, /* isEncrypted */
|
|
||||||
testDomainIsActive, /* domainIsActive */
|
testDomainIsActive, /* domainIsActive */
|
||||||
testDomainIsPersistent, /* domainIsPersistent */
|
testDomainIsPersistent, /* domainIsPersistent */
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -814,14 +814,14 @@ Index: libvirt-0.7.4/src/test/test_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
static virNetworkDriver testNetworkDriver = {
|
static virNetworkDriver testNetworkDriver = {
|
||||||
Index: libvirt-0.7.4/src/uml/uml_driver.c
|
Index: libvirt-0.7.5/src/uml/uml_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/uml/uml_driver.c
|
--- libvirt-0.7.5.orig/src/uml/uml_driver.c
|
||||||
+++ libvirt-0.7.4/src/uml/uml_driver.c
|
+++ libvirt-0.7.5/src/uml/uml_driver.c
|
||||||
@@ -1888,6 +1888,11 @@ static virDriver umlDriver = {
|
@@ -1924,6 +1924,11 @@ static virDriver umlDriver = {
|
||||||
umlIsSecure,
|
|
||||||
umlDomainIsActive,
|
umlDomainIsActive,
|
||||||
umlDomainIsPersistent,
|
umlDomainIsPersistent,
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -830,14 +830,14 @@ Index: libvirt-0.7.4/src/uml/uml_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/vbox/vbox_tmpl.c
|
Index: libvirt-0.7.5/src/vbox/vbox_tmpl.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/vbox/vbox_tmpl.c
|
--- libvirt-0.7.5.orig/src/vbox/vbox_tmpl.c
|
||||||
+++ libvirt-0.7.4/src/vbox/vbox_tmpl.c
|
+++ libvirt-0.7.5/src/vbox/vbox_tmpl.c
|
||||||
@@ -6571,6 +6571,11 @@ virDriver NAME(Driver) = {
|
@@ -7051,6 +7051,11 @@ virDriver NAME(Driver) = {
|
||||||
vboxIsSecure,
|
|
||||||
vboxDomainIsActive,
|
vboxDomainIsActive,
|
||||||
vboxDomainIsPersistent,
|
vboxDomainIsPersistent,
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -846,14 +846,14 @@ Index: libvirt-0.7.4/src/vbox/vbox_tmpl.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
virNetworkDriver NAME(NetworkDriver) = {
|
virNetworkDriver NAME(NetworkDriver) = {
|
||||||
Index: libvirt-0.7.4/src/opennebula/one_driver.c
|
Index: libvirt-0.7.5/src/opennebula/one_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/opennebula/one_driver.c
|
--- libvirt-0.7.5.orig/src/opennebula/one_driver.c
|
||||||
+++ libvirt-0.7.4/src/opennebula/one_driver.c
|
+++ libvirt-0.7.5/src/opennebula/one_driver.c
|
||||||
@@ -781,6 +781,11 @@ static virDriver oneDriver = {
|
@@ -783,6 +783,11 @@ static virDriver oneDriver = {
|
||||||
oneIsSecure,
|
|
||||||
NULL, /* domainIsActive */
|
NULL, /* domainIsActive */
|
||||||
NULL, /* domainIsPersistent */
|
NULL, /* domainIsPersistent */
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -862,14 +862,14 @@ Index: libvirt-0.7.4/src/opennebula/one_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
static virStateDriver oneStateDriver = {
|
static virStateDriver oneStateDriver = {
|
||||||
Index: libvirt-0.7.4/src/phyp/phyp_driver.c
|
Index: libvirt-0.7.5/src/phyp/phyp_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/phyp/phyp_driver.c
|
--- libvirt-0.7.5.orig/src/phyp/phyp_driver.c
|
||||||
+++ libvirt-0.7.4/src/phyp/phyp_driver.c
|
+++ libvirt-0.7.5/src/phyp/phyp_driver.c
|
||||||
@@ -1650,6 +1650,11 @@ virDriver phypDriver = {
|
@@ -1651,6 +1651,11 @@ virDriver phypDriver = {
|
||||||
phypIsSecure,
|
|
||||||
NULL, /* domainIsActive */
|
NULL, /* domainIsActive */
|
||||||
NULL, /* domainIsPersistent */
|
NULL, /* domainIsPersistent */
|
||||||
|
NULL, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -878,14 +878,14 @@ Index: libvirt-0.7.4/src/phyp/phyp_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
Index: libvirt-0.7.4/src/remote/remote_driver.c
|
Index: libvirt-0.7.5/src/remote/remote_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/remote/remote_driver.c
|
--- libvirt-0.7.5.orig/src/remote/remote_driver.c
|
||||||
+++ libvirt-0.7.4/src/remote/remote_driver.c
|
+++ libvirt-0.7.5/src/remote/remote_driver.c
|
||||||
@@ -8847,6 +8847,11 @@ static virDriver remote_driver = {
|
@@ -8940,6 +8940,11 @@ static virDriver remote_driver = {
|
||||||
remoteIsSecure, /* isSecure */
|
|
||||||
remoteDomainIsActive, /* domainIsActive */
|
remoteDomainIsActive, /* domainIsActive */
|
||||||
remoteDomainIsPersistent, /* domainIsPersistent */
|
remoteDomainIsPersistent, /* domainIsPersistent */
|
||||||
|
remoteCPUCompare, /* cpuCompare */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -894,11 +894,11 @@ Index: libvirt-0.7.4/src/remote/remote_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
static virNetworkDriver network_driver = {
|
static virNetworkDriver network_driver = {
|
||||||
Index: libvirt-0.7.4/docs/libvirt-api.xml
|
Index: libvirt-0.7.5/docs/libvirt-api.xml
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/docs/libvirt-api.xml
|
--- libvirt-0.7.5.orig/docs/libvirt-api.xml
|
||||||
+++ libvirt-0.7.4/docs/libvirt-api.xml
|
+++ libvirt-0.7.5/docs/libvirt-api.xml
|
||||||
@@ -271,6 +271,11 @@
|
@@ -293,6 +293,11 @@
|
||||||
<exports symbol='virDomainSetVcpus' type='function'/>
|
<exports symbol='virDomainSetVcpus' type='function'/>
|
||||||
<exports symbol='virDomainShutdown' type='function'/>
|
<exports symbol='virDomainShutdown' type='function'/>
|
||||||
<exports symbol='virDomainSuspend' type='function'/>
|
<exports symbol='virDomainSuspend' type='function'/>
|
||||||
@ -910,7 +910,7 @@ Index: libvirt-0.7.4/docs/libvirt-api.xml
|
|||||||
<exports symbol='virDomainUndefine' type='function'/>
|
<exports symbol='virDomainUndefine' type='function'/>
|
||||||
<exports symbol='virEventAddHandleFunc' type='function'/>
|
<exports symbol='virEventAddHandleFunc' type='function'/>
|
||||||
<exports symbol='virEventAddTimeoutFunc' type='function'/>
|
<exports symbol='virEventAddTimeoutFunc' type='function'/>
|
||||||
@@ -1878,6 +1883,36 @@ This function may requires privileged ac
|
@@ -1972,6 +1977,36 @@ This function may requires privileged ac
|
||||||
<return type='int' info='0 in case of success and -1 in case of failure.'/>
|
<return type='int' info='0 in case of success and -1 in case of failure.'/>
|
||||||
<arg name='domain' type='virDomainPtr' info='a domain object'/>
|
<arg name='domain' type='virDomainPtr' info='a domain object'/>
|
||||||
</function>
|
</function>
|
||||||
@ -947,10 +947,10 @@ Index: libvirt-0.7.4/docs/libvirt-api.xml
|
|||||||
<function name='virDomainUndefine' file='libvirt' module='libvirt'>
|
<function name='virDomainUndefine' file='libvirt' module='libvirt'>
|
||||||
<info><![CDATA[Undefine a domain but does not stop it if it is running]]></info>
|
<info><![CDATA[Undefine a domain but does not stop it if it is running]]></info>
|
||||||
<return type='int' info='0 in case of success, -1 in case of error'/>
|
<return type='int' info='0 in case of success, -1 in case of error'/>
|
||||||
Index: libvirt-0.7.4/src/libvirt_public.syms
|
Index: libvirt-0.7.5/src/libvirt_public.syms
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/libvirt_public.syms
|
--- libvirt-0.7.5.orig/src/libvirt_public.syms
|
||||||
+++ libvirt-0.7.4/src/libvirt_public.syms
|
+++ libvirt-0.7.5/src/libvirt_public.syms
|
||||||
@@ -215,6 +215,11 @@ LIBVIRT_0.4.2 {
|
@@ -215,6 +215,11 @@ LIBVIRT_0.4.2 {
|
||||||
LIBVIRT_0.4.5 {
|
LIBVIRT_0.4.5 {
|
||||||
global:
|
global:
|
||||||
@ -963,11 +963,11 @@ Index: libvirt-0.7.4/src/libvirt_public.syms
|
|||||||
} LIBVIRT_0.4.2;
|
} LIBVIRT_0.4.2;
|
||||||
|
|
||||||
LIBVIRT_0.5.0 {
|
LIBVIRT_0.5.0 {
|
||||||
Index: libvirt-0.7.4/python/generator.py
|
Index: libvirt-0.7.5/python/generator.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/python/generator.py
|
--- libvirt-0.7.5.orig/python/generator.py
|
||||||
+++ libvirt-0.7.4/python/generator.py
|
+++ libvirt-0.7.5/python/generator.py
|
||||||
@@ -287,6 +287,7 @@ skip_impl = (
|
@@ -288,6 +288,7 @@ skip_impl = (
|
||||||
'virDomainSetSchedulerParameters',
|
'virDomainSetSchedulerParameters',
|
||||||
'virDomainGetVcpus',
|
'virDomainGetVcpus',
|
||||||
'virDomainPinVcpu',
|
'virDomainPinVcpu',
|
||||||
@ -975,11 +975,11 @@ Index: libvirt-0.7.4/python/generator.py
|
|||||||
'virSecretGetValue',
|
'virSecretGetValue',
|
||||||
'virSecretSetValue',
|
'virSecretSetValue',
|
||||||
'virSecretGetUUID',
|
'virSecretGetUUID',
|
||||||
Index: libvirt-0.7.4/python/libvirt-override.c
|
Index: libvirt-0.7.5/python/libvirt-override.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/python/libvirt-override.c
|
--- libvirt-0.7.5.orig/python/libvirt-override.c
|
||||||
+++ libvirt-0.7.4/python/libvirt-override.c
|
+++ libvirt-0.7.5/python/libvirt-override.c
|
||||||
@@ -1400,6 +1400,34 @@ libvirt_virStoragePoolGetInfo(PyObject *
|
@@ -1516,6 +1516,34 @@ libvirt_virStoragePoolGetInfo(PyObject *
|
||||||
return(py_retval);
|
return(py_retval);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1014,7 +1014,7 @@ Index: libvirt-0.7.4/python/libvirt-override.c
|
|||||||
|
|
||||||
static PyObject *
|
static PyObject *
|
||||||
libvirt_virStorageVolGetInfo(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
libvirt_virStorageVolGetInfo(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
||||||
@@ -2557,6 +2585,7 @@ static PyMethodDef libvirtMethods[] = {
|
@@ -2690,6 +2718,7 @@ static PyMethodDef libvirtMethods[] = {
|
||||||
{(char *) "virStoragePoolGetAutostart", libvirt_virStoragePoolGetAutostart, METH_VARARGS, NULL},
|
{(char *) "virStoragePoolGetAutostart", libvirt_virStoragePoolGetAutostart, METH_VARARGS, NULL},
|
||||||
{(char *) "virStoragePoolListVolumes", libvirt_virStoragePoolListVolumes, METH_VARARGS, NULL},
|
{(char *) "virStoragePoolListVolumes", libvirt_virStoragePoolListVolumes, METH_VARARGS, NULL},
|
||||||
{(char *) "virStoragePoolGetInfo", libvirt_virStoragePoolGetInfo, METH_VARARGS, NULL},
|
{(char *) "virStoragePoolGetInfo", libvirt_virStoragePoolGetInfo, METH_VARARGS, NULL},
|
||||||
@ -1022,11 +1022,11 @@ Index: libvirt-0.7.4/python/libvirt-override.c
|
|||||||
{(char *) "virStorageVolGetInfo", libvirt_virStorageVolGetInfo, METH_VARARGS, NULL},
|
{(char *) "virStorageVolGetInfo", libvirt_virStorageVolGetInfo, METH_VARARGS, NULL},
|
||||||
{(char *) "virStoragePoolGetUUID", libvirt_virStoragePoolGetUUID, METH_VARARGS, NULL},
|
{(char *) "virStoragePoolGetUUID", libvirt_virStoragePoolGetUUID, METH_VARARGS, NULL},
|
||||||
{(char *) "virStoragePoolGetUUIDString", libvirt_virStoragePoolGetUUIDString, METH_VARARGS, NULL},
|
{(char *) "virStoragePoolGetUUIDString", libvirt_virStoragePoolGetUUIDString, METH_VARARGS, NULL},
|
||||||
Index: libvirt-0.7.4/python/libvirt-override-api.xml
|
Index: libvirt-0.7.5/python/libvirt-override-api.xml
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/python/libvirt-override-api.xml
|
--- libvirt-0.7.5.orig/python/libvirt-override-api.xml
|
||||||
+++ libvirt-0.7.4/python/libvirt-override-api.xml
|
+++ libvirt-0.7.5/python/libvirt-override-api.xml
|
||||||
@@ -140,6 +140,11 @@
|
@@ -145,6 +145,11 @@
|
||||||
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
|
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
|
||||||
<arg name='params' type='virSchedParameterPtr' info='pointer to scheduler parameter objects'/>
|
<arg name='params' type='virSchedParameterPtr' info='pointer to scheduler parameter objects'/>
|
||||||
</function>
|
</function>
|
||||||
@ -1038,10 +1038,10 @@ Index: libvirt-0.7.4/python/libvirt-override-api.xml
|
|||||||
<function name='virConnectListStoragePools' file='python'>
|
<function name='virConnectListStoragePools' file='python'>
|
||||||
<info>list the storage pools, stores the pointers to the names in @names</info>
|
<info>list the storage pools, stores the pointers to the names in @names</info>
|
||||||
<arg name='conn' type='virConnectPtr' info='pointer to the hypervisor connection'/>
|
<arg name='conn' type='virConnectPtr' info='pointer to the hypervisor connection'/>
|
||||||
Index: libvirt-0.7.4/src/xen/xen_inotify.c
|
Index: libvirt-0.7.5/src/xen/xen_inotify.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xen_inotify.c
|
--- libvirt-0.7.5.orig/src/xen/xen_inotify.c
|
||||||
+++ libvirt-0.7.4/src/xen/xen_inotify.c
|
+++ libvirt-0.7.5/src/xen/xen_inotify.c
|
||||||
@@ -86,6 +86,11 @@ struct xenUnifiedDriver xenInotifyDriver
|
@@ -86,6 +86,11 @@ struct xenUnifiedDriver xenInotifyDriver
|
||||||
NULL, /* domainGetSchedulerType */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainGetSchedulerParameters */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.7.4/src/conf/network_conf.c
|
Index: libvirt-0.7.5/src/conf/network_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/conf/network_conf.c
|
--- libvirt-0.7.5.orig/src/conf/network_conf.c
|
||||||
+++ libvirt-0.7.4/src/conf/network_conf.c
|
+++ libvirt-0.7.5/src/conf/network_conf.c
|
||||||
@@ -865,6 +865,137 @@ error:
|
@@ -863,6 +863,137 @@ error:
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -140,7 +140,7 @@ Index: libvirt-0.7.4/src/conf/network_conf.c
|
|||||||
int virNetworkLoadAllConfigs(virConnectPtr conn,
|
int virNetworkLoadAllConfigs(virConnectPtr conn,
|
||||||
virNetworkObjListPtr nets,
|
virNetworkObjListPtr nets,
|
||||||
const char *configDir,
|
const char *configDir,
|
||||||
@@ -904,6 +1035,7 @@ int virNetworkLoadAllConfigs(virConnectP
|
@@ -902,6 +1033,7 @@ int virNetworkLoadAllConfigs(virConnectP
|
||||||
|
|
||||||
closedir(dir);
|
closedir(dir);
|
||||||
|
|
||||||
@ -148,10 +148,10 @@ Index: libvirt-0.7.4/src/conf/network_conf.c
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/conf/network_conf.h
|
Index: libvirt-0.7.5/src/conf/network_conf.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/conf/network_conf.h
|
--- libvirt-0.7.5.orig/src/conf/network_conf.h
|
||||||
+++ libvirt-0.7.4/src/conf/network_conf.h
|
+++ libvirt-0.7.5/src/conf/network_conf.h
|
||||||
@@ -94,6 +94,7 @@ struct _virNetworkObj {
|
@@ -94,6 +94,7 @@ struct _virNetworkObj {
|
||||||
unsigned int active : 1;
|
unsigned int active : 1;
|
||||||
unsigned int autostart : 1;
|
unsigned int autostart : 1;
|
||||||
@ -160,11 +160,11 @@ Index: libvirt-0.7.4/src/conf/network_conf.h
|
|||||||
|
|
||||||
virNetworkDefPtr def; /* The current definition */
|
virNetworkDefPtr def; /* The current definition */
|
||||||
virNetworkDefPtr newDef; /* New definition to activate at shutdown */
|
virNetworkDefPtr newDef; /* New definition to activate at shutdown */
|
||||||
Index: libvirt-0.7.4/src/network/bridge_driver.c
|
Index: libvirt-0.7.5/src/network/bridge_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/network/bridge_driver.c
|
--- libvirt-0.7.5.orig/src/network/bridge_driver.c
|
||||||
+++ libvirt-0.7.4/src/network/bridge_driver.c
|
+++ libvirt-0.7.5/src/network/bridge_driver.c
|
||||||
@@ -994,6 +994,11 @@ static int networkShutdownNetworkDaemon(
|
@@ -1010,6 +1010,11 @@ static int networkShutdownNetworkDaemon(
|
||||||
unlink(stateFile);
|
unlink(stateFile);
|
||||||
VIR_FREE(stateFile);
|
VIR_FREE(stateFile);
|
||||||
|
|
||||||
@ -176,7 +176,7 @@ Index: libvirt-0.7.4/src/network/bridge_driver.c
|
|||||||
if (network->dnsmasqPid > 0)
|
if (network->dnsmasqPid > 0)
|
||||||
kill(network->dnsmasqPid, SIGTERM);
|
kill(network->dnsmasqPid, SIGTERM);
|
||||||
|
|
||||||
@@ -1494,6 +1499,12 @@ static int networkSetAutostart(virNetwor
|
@@ -1510,6 +1515,12 @@ static int networkSetAutostart(virNetwor
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,36 +0,0 @@
|
|||||||
commit 7cfbb17978c467625afab866b7a22119789abee0
|
|
||||||
Author: Matthias Bolte <matthias.bolte@googlemail.com>
|
|
||||||
Date: Thu Nov 26 00:09:40 2009 +0100
|
|
||||||
|
|
||||||
xen: Fix unconditional freeing in xenDaemonListDefinedDomains()
|
|
||||||
|
|
||||||
Commit 790f0b3057787bb64da8c46c111ff8d3eff7b2af causes the contents of
|
|
||||||
the names array to be freed even on success, resulting in no listing of
|
|
||||||
defined but inactive Xen domains.
|
|
||||||
|
|
||||||
Spotted by Jim Fehlig
|
|
||||||
|
|
||||||
diff --git a/src/xen/xend_internal.c b/src/xen/xend_internal.c
|
|
||||||
index e370eb8..4d9dcd1 100644
|
|
||||||
--- a/src/xen/xend_internal.c
|
|
||||||
+++ b/src/xen/xend_internal.c
|
|
||||||
@@ -4696,12 +4696,17 @@ xenDaemonListDefinedDomains(virConnectPtr conn, char **const names, int maxnames
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
+cleanup:
|
|
||||||
+ sexpr_free(root);
|
|
||||||
+ return(ret);
|
|
||||||
+
|
|
||||||
error:
|
|
||||||
for (i = 0; i < ret; ++i)
|
|
||||||
VIR_FREE(names[i]);
|
|
||||||
|
|
||||||
- sexpr_free(root);
|
|
||||||
- return(ret);
|
|
||||||
+ ret = -1;
|
|
||||||
+
|
|
||||||
+ goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.7.4/src/xen/xend_internal.c
|
Index: libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.7.4.orig/src/xen/xend_internal.c
|
--- libvirt-0.7.5.orig/src/xen/xend_internal.c
|
||||||
+++ libvirt-0.7.4/src/xen/xend_internal.c
|
+++ libvirt-0.7.5/src/xen/xend_internal.c
|
||||||
@@ -5365,7 +5365,10 @@ xenDaemonFormatSxprDisk(virConnectPtr co
|
@@ -5409,7 +5409,10 @@ xenDaemonFormatSxprDisk(virConnectPtr co
|
||||||
} else if (def->device == VIR_DOMAIN_DISK_DEVICE_CDROM) {
|
} else if (def->device == VIR_DOMAIN_DISK_DEVICE_CDROM) {
|
||||||
virBufferVSprintf(buf, "(dev '%s:cdrom')", def->dst);
|
virBufferVSprintf(buf, "(dev '%s:cdrom')", def->dst);
|
||||||
} else {
|
} else {
|
||||||
|
248
xen-shr-pages.patch
Normal file
248
xen-shr-pages.patch
Normal file
@ -0,0 +1,248 @@
|
|||||||
|
Index: libvirt-0.7.5/src/xen/xen_hypervisor.c
|
||||||
|
===================================================================
|
||||||
|
--- libvirt-0.7.5.orig/src/xen/xen_hypervisor.c
|
||||||
|
+++ libvirt-0.7.5/src/xen/xen_hypervisor.c
|
||||||
|
@@ -215,10 +215,26 @@ struct xen_v2d5_getdomaininfo {
|
||||||
|
};
|
||||||
|
typedef struct xen_v2d5_getdomaininfo xen_v2d5_getdomaininfo;
|
||||||
|
|
||||||
|
+struct xen_v2d6_getdomaininfo {
|
||||||
|
+ domid_t domain; /* the domain number */
|
||||||
|
+ uint32_t flags; /* flags, see before */
|
||||||
|
+ uint64_t tot_pages ALIGN_64; /* total number of pages used */
|
||||||
|
+ uint64_t max_pages ALIGN_64; /* maximum number of pages allowed */
|
||||||
|
+ uint64_t shr_pages ALIGN_64; /* number of shared pages */
|
||||||
|
+ uint64_t shared_info_frame ALIGN_64; /* MFN of shared_info struct */
|
||||||
|
+ uint64_t cpu_time ALIGN_64; /* CPU time used */
|
||||||
|
+ uint32_t nr_online_vcpus; /* Number of VCPUs currently online. */
|
||||||
|
+ uint32_t max_vcpu_id; /* Maximum VCPUID in use by this domain. */
|
||||||
|
+ uint32_t ssidref;
|
||||||
|
+ xen_domain_handle_t handle;
|
||||||
|
+};
|
||||||
|
+typedef struct xen_v2d6_getdomaininfo xen_v2d6_getdomaininfo;
|
||||||
|
+
|
||||||
|
union xen_getdomaininfo {
|
||||||
|
struct xen_v0_getdomaininfo v0;
|
||||||
|
struct xen_v2_getdomaininfo v2;
|
||||||
|
struct xen_v2d5_getdomaininfo v2d5;
|
||||||
|
+ struct xen_v2d6_getdomaininfo v2d6;
|
||||||
|
};
|
||||||
|
typedef union xen_getdomaininfo xen_getdomaininfo;
|
||||||
|
|
||||||
|
@@ -226,6 +242,7 @@ union xen_getdomaininfolist {
|
||||||
|
struct xen_v0_getdomaininfo *v0;
|
||||||
|
struct xen_v2_getdomaininfo *v2;
|
||||||
|
struct xen_v2d5_getdomaininfo *v2d5;
|
||||||
|
+ struct xen_v2d6_getdomaininfo *v2d6;
|
||||||
|
};
|
||||||
|
typedef union xen_getdomaininfolist xen_getdomaininfolist;
|
||||||
|
|
||||||
|
@@ -263,114 +280,147 @@ typedef struct xen_v2s5_availheap xen_v
|
||||||
|
#define XEN_GETDOMAININFOLIST_ALLOC(domlist, size) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
(VIR_ALLOC_N(domlist.v0, (size)) == 0) : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- (VIR_ALLOC_N(domlist.v2, (size)) == 0) : \
|
||||||
|
- (VIR_ALLOC_N(domlist.v2d5, (size)) == 0)))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ (VIR_ALLOC_N(domlist.v2d6, (size)) == 0) : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ (VIR_ALLOC_N(domlist.v2d5, (size)) == 0) : \
|
||||||
|
+ (VIR_ALLOC_N(domlist.v2, (size)) == 0))))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFOLIST_FREE(domlist) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
VIR_FREE(domlist.v0) : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- VIR_FREE(domlist.v2) : \
|
||||||
|
- VIR_FREE(domlist.v2d5)))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ VIR_FREE(domlist.v2d6) : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ VIR_FREE(domlist.v2d5) : \
|
||||||
|
+ VIR_FREE(domlist.v2))))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFOLIST_CLEAR(domlist, size) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
memset(domlist.v0, 0, sizeof(*domlist.v0) * size) : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- memset(domlist.v2, 0, sizeof(*domlist.v2) * size) : \
|
||||||
|
- memset(domlist.v2d5, 0, sizeof(*domlist.v2d5) * size)))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ memset(domlist.v2d6, 0, sizeof(*domlist.v2d6) * size) : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ memset(domlist.v2d5, 0, sizeof(*domlist.v2d5) * size) : \
|
||||||
|
+ memset(domlist.v2, 0, sizeof(*domlist.v2) * size))))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFOLIST_DOMAIN(domlist, n) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
domlist.v0[n].domain : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- domlist.v2[n].domain : \
|
||||||
|
- domlist.v2d5[n].domain))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ domlist.v2d6[n].domain : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ domlist.v2d5[n].domain : \
|
||||||
|
+ domlist.v2[n].domain)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFOLIST_UUID(domlist, n) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
domlist.v0[n].handle : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- domlist.v2[n].handle : \
|
||||||
|
- domlist.v2d5[n].handle))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ domlist.v2d6[n].handle : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ domlist.v2d5[n].handle : \
|
||||||
|
+ domlist.v2[n].handle)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFOLIST_DATA(domlist) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
(void*)(domlist->v0) : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- (void*)(domlist->v2) : \
|
||||||
|
- (void*)(domlist->v2d5)))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ (void*)(domlist->v2d6) : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ (void*)(domlist->v2d5) : \
|
||||||
|
+ (void*)(domlist->v2))))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_SIZE \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
sizeof(xen_v0_getdomaininfo) : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- sizeof(xen_v2_getdomaininfo) : \
|
||||||
|
- sizeof(xen_v2d5_getdomaininfo)))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ sizeof(xen_v2d6_getdomaininfo) : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ sizeof(xen_v2d5_getdomaininfo) : \
|
||||||
|
+ sizeof(xen_v2_getdomaininfo))))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_CLEAR(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
memset(&(dominfo.v0), 0, sizeof(xen_v0_getdomaininfo)) : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- memset(&(dominfo.v2), 0, sizeof(xen_v2_getdomaininfo)) : \
|
||||||
|
- memset(&(dominfo.v2d5), 0, sizeof(xen_v2d5_getdomaininfo))))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ memset(&(dominfo.v2d6), 0, sizeof(xen_v2d6_getdomaininfo)) : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ memset(&(dominfo.v2d5), 0, sizeof(xen_v2d5_getdomaininfo)) : \
|
||||||
|
+ memset(&(dominfo.v2), 0, sizeof(xen_v2_getdomaininfo)))))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_DOMAIN(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.domain : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.domain : \
|
||||||
|
- dominfo.v2d5.domain))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.domain : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.domain : \
|
||||||
|
+ dominfo.v2.domain)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_CPUTIME(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.cpu_time : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.cpu_time : \
|
||||||
|
- dominfo.v2d5.cpu_time))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.cpu_time : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.cpu_time : \
|
||||||
|
+ dominfo.v2.cpu_time)))
|
||||||
|
+
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_CPUCOUNT(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.nr_online_vcpus : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.nr_online_vcpus : \
|
||||||
|
- dominfo.v2d5.nr_online_vcpus))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.nr_online_vcpus : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.nr_online_vcpus : \
|
||||||
|
+ dominfo.v2.nr_online_vcpus)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_MAXCPUID(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.max_vcpu_id : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.max_vcpu_id : \
|
||||||
|
- dominfo.v2d5.max_vcpu_id))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.max_vcpu_id : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.max_vcpu_id : \
|
||||||
|
+ dominfo.v2.max_vcpu_id)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_FLAGS(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.flags : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.flags : \
|
||||||
|
- dominfo.v2d5.flags))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.flags : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.flags : \
|
||||||
|
+ dominfo.v2.flags)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_TOT_PAGES(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.tot_pages : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.tot_pages : \
|
||||||
|
- dominfo.v2d5.tot_pages))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.tot_pages : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.tot_pages : \
|
||||||
|
+ dominfo.v2.tot_pages)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_MAX_PAGES(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.max_pages : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.max_pages : \
|
||||||
|
- dominfo.v2d5.max_pages))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.max_pages : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.max_pages : \
|
||||||
|
+ dominfo.v2.max_pages)))
|
||||||
|
|
||||||
|
#define XEN_GETDOMAININFO_UUID(dominfo) \
|
||||||
|
(hypervisor_version < 2 ? \
|
||||||
|
dominfo.v0.handle : \
|
||||||
|
- (dom_interface_version < 5 ? \
|
||||||
|
- dominfo.v2.handle : \
|
||||||
|
- dominfo.v2d5.handle))
|
||||||
|
+ (dom_interface_version >= 6 ? \
|
||||||
|
+ dominfo.v2d6.handle : \
|
||||||
|
+ (dom_interface_version == 5 ? \
|
||||||
|
+ dominfo.v2d5.handle : \
|
||||||
|
+ dominfo.v2.handle)))
|
||||||
|
|
||||||
|
|
||||||
|
static int
|
||||||
|
@@ -2050,6 +2100,12 @@ xenHypervisorInit(void)
|
||||||
|
DEBUG0("Using hypervisor call v2, sys ver6 dom ver5\n");
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
+ /* Xen 4.0 */
|
||||||
|
+ dom_interface_version = 6; /* XEN_DOMCTL_INTERFACE_VERSION */
|
||||||
|
+ if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
|
||||||
|
+ DEBUG0("Using hypervisor call v2, sys ver6 dom ver6\n");
|
||||||
|
+ goto done;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
hypervisor_version = 1;
|
@ -1,36 +0,0 @@
|
|||||||
From acba9b620128c4dcdbb95a1ea06604f3013a0518 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jim Fehlig <jfehlig@novell.com>
|
|
||||||
Date: Mon, 7 Dec 2009 14:24:21 -0700
|
|
||||||
Subject: [PATCH] Plumb domain description tag in xend backend
|
|
||||||
|
|
||||||
xen-unstable changesets 20321 and 20521 added support for
|
|
||||||
description in xend domain config. This patch extends that
|
|
||||||
support in xend backend.
|
|
||||||
---
|
|
||||||
src/xen/xend_internal.c | 6 ++++++
|
|
||||||
1 files changed, 6 insertions(+), 0 deletions(-)
|
|
||||||
|
|
||||||
Index: libvirt-0.7.4/src/xen/xend_internal.c
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-0.7.4.orig/src/xen/xend_internal.c
|
|
||||||
+++ libvirt-0.7.4/src/xen/xend_internal.c
|
|
||||||
@@ -2360,6 +2360,9 @@ xenDaemonParseSxpr(virConnectPtr conn,
|
|
||||||
}
|
|
||||||
virUUIDParse(tmp, def->uuid);
|
|
||||||
|
|
||||||
+ if (sexpr_node_copy(root, "domain/description", &def->description) < 0)
|
|
||||||
+ goto no_memory;
|
|
||||||
+
|
|
||||||
hvm = sexpr_lookup(root, "domain/image/hvm") ? 1 : 0;
|
|
||||||
if (!hvm) {
|
|
||||||
if (sexpr_node_copy(root, "domain/bootloader",
|
|
||||||
@@ -5676,6 +5679,9 @@ xenDaemonFormatSxpr(virConnectPtr conn,
|
|
||||||
virUUIDFormat(def->uuid, uuidstr);
|
|
||||||
virBufferVSprintf(&buf, "(uuid '%s')", uuidstr);
|
|
||||||
|
|
||||||
+ if (def->description)
|
|
||||||
+ virBufferVSprintf(&buf, "(description '%s')", def->description);
|
|
||||||
+
|
|
||||||
if (def->os.bootloader) {
|
|
||||||
if (def->os.bootloader[0])
|
|
||||||
virBufferVSprintf(&buf, "(bootloader '%s')", def->os.bootloader);
|
|
Loading…
Reference in New Issue
Block a user