Hello community,
here is the log from the commit of package libvirt for openSUSE:Factory
checked in at Fri Jan 8 01:37:02 CET 2010.
--------
--- libvirt/libvirt.changes 2009-12-07 23:07:57.000000000 +0100
+++ /mounts/work_src_done/STABLE/libvirt/libvirt.changes 2010-01-07 02:07:07.000000000 +0100
@@ -1,0 +2,28 @@
+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
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
libvirt-0.7.4.tar.bz2
xen-list-defined.patch
xend-description-tag.patch
New:
----
libvirt-0.7.5.tar.bz2
node-dev-free.patch
xen-shr-pages.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libvirt.spec ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:42.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:42.000000000 +0100
@@ -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
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,24 +18,71 @@
# norootforbuild
%define with_xen 1
-%define with_lxc 0
-%define with_selinux 0
+%define with_qemu 1
+%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_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
%ifnarch %ix86 x86_64
%define with_xen 0
%endif
-%if 0%{?suse_version} > 1100
-%define with_lxc 1
-%define with_selinux 1
+# LXC and selinux are not available on anything < openSUSE 11.1
+%if 0%{?suse_version} < 1110
+%define with_lxc 0
+%define with_selinux 0
%endif
-# Build phyp backend for IBM Power systems
+# Enable phyp driver for IBM Power systems
%ifarch ppc64
%define with_phyp 1
%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
-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}
BuildRequires: xen-devel
%endif
@@ -47,7 +94,7 @@
%if %{with_selinux}
BuildRequires: libselinux-devel
%endif
-%ifarch x86_64 ia64
+%if %{with_numactl}
BuildRequires: libnuma-devel
%endif
%if 0%{?suse_version} > 1110
@@ -64,25 +111,24 @@
License: LGPLv2.1+
Group: Development/Libraries/C and C++
AutoReqProv: yes
-Version: 0.7.4
+Version: 0.7.5
Release: 1
Summary: A C toolkit to interract with the virtualization capabilities of Linux
-Requires: readline
-Requires: ncurses
+# The client side, i.e. shared libs and virsh are in a subpackage
+Requires: libvirt-client = %{version}-%{release}
Requires: bridge-utils
Requires: iptables
-Requires: cyrus-sasl
Requires: lvm2
Requires: parted
-#Requires: /usr/bin/qemu-img
-Recommends: cyrus-sasl-digestmd5
+Requires: virt-utils
Recommends: logrotate
Requires: dnsmasq
Requires: PolicyKit >= 0.6
-Requires: socat
Requires: open-iscsi
Requires: nfs-client
+%if %{with_hal}
Requires: hal
+%endif
%if 0%{?suse_version} > 1110
Requires: polkit >= 0.9
%else
@@ -91,9 +137,9 @@
Source0: %{name}-%{version}.tar.bz2
Source1: libvirtd.init
# Upstream patches
-Patch0: xen-list-defined.patch
-Patch1: detach-disk.patch
-Patch2: xend-description-tag.patch
+Patch0: detach-disk.patch
+Patch1: xen-shr-pages.patch
+Patch2: node-dev-free.patch
# Need to go upstream
Patch100: socat.patch
Patch101: clone.patch
@@ -106,13 +152,37 @@
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
-Libvirt is a C toolkit to interract with the virtualization
-capabilities Linux. Virtualization of the Linux Operating System means
-the ability to run multiple instances of Operating Systems concurently
+Libvirt is a C toolkit to interact with the virtualization
+capabilities of Linux. Virtualization of the Linux Operating System means
+the ability to run multiple instances of Operating Systems concurrently
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.
+to interact with Linux virtualization technologies.
+
+
+
+Authors:
+--------
+ Daniel Veillard
+ Karel Zak
+
+%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 @@
Requires: %{name} = %{version} libxml2-devel
%if %{with_xen}
Requires: xen-devel
-Requires: pkg-config
%endif
+Requires: pkg-config
%description devel
Libvirt is a C toolkit to interract with the virtualization
-capabilities Linux. Virtualization of the Linux Operating System means
-the ability to run multiple instances of Operating Systems concurently
-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.
+capabilities of Linux. The libvirt-devel package contains headers
+and libraries needed for developing libvirt applications.
@@ -155,12 +221,8 @@
%description doc
Libvirt is a C toolkit to interract with the virtualization
-capabilities Linux. Virtualization of the Linux Operating System means
-the ability to run multiple instances of Operating Systems concurently
-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.
+capabilities of Linux. The libvirt-doc packages contains documentation
+for the libvirt API and tools.
@@ -178,12 +240,8 @@
%description python
Libvirt is a C toolkit to interract with the virtualization
-capabilities Linux. Virtualization of the Linux Operating System means
-the ability to run multiple instances of Operating Systems concurently
-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.
+capabilities of Linux. The libvirt-python package provides python
+bindings for the libvirt C API.
@@ -209,24 +267,80 @@
%if ! %{with_xen}
%define _without_xen --without-xen
%endif
+%if ! %{with_qemu}
+%define _without_qemu --without-qemu
+%endif
%if ! %{with_lxc}
%define _without_lxc --without-lxc
%endif
-%if %{with_selinux}
-%define _with_selinux --with-selinux
+%if ! %{with_openvz}
+%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
autoreconf -f -i
export CFLAGS="$RPM_OPT_FLAGS"
%configure --disable-static --with-pic \
%{?_without_xen} \
+ %{?_without_qemu} \
%{?_without_lxc} \
+ %{?_without_openvz} \
+ %{?_without_vbox} \
+ %{?_without_uml} \
+ %{?_without_one} \
+ %{?_without_phyp} \
+ %{?_without_esx} \
+ %{?_without_numactl} \
%{?_with_selinux} \
+ %{?_without_capng} \
+ %{?_without_netcf} \
+ %{?_without_selinux} \
+ %{?_without_apparmor} \
+ %{?_without_hal} \
+ %{?_without_udev} \
+ %{?_without_yajl} \
+ --without-xen-proxy \
--libexecdir=%{_libdir}/%{name} \
--with-init-script=none \
--with-remote-pid-file=%{_localstatedir}/run/libvirtd.pid \
- --with-xen-proxy=no \
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_MODPROBE=/sbin/modprobe \
ac_cv_path_UDEVADM=/sbin/udevadm \
@@ -244,6 +358,14 @@
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/run/libvirt
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/lib/libvirt
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()
{
target=""
@@ -269,7 +391,11 @@
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/ldconfig
+%post
+/sbin/ldconfig
+%if 0%{?sles_version}
+%{fillup_and_insserv -f -y libvirtd}
+%endif
%preun
%stop_on_removal libvirtd
@@ -279,49 +405,84 @@
%restart_on_update libvirtd
%insserv_cleanup
-%files -f %{name}.lang
+%post client -p /sbin/ldconfig
+
+%postun client -p /sbin/ldconfig
+
+%files
%defattr(-, root, root)
-%{_bindir}/virsh
-%{_bindir}/virt-xml-validate
-%{_bindir}/virt-pki-validate
%{_sbindir}/libvirtd
-%doc %dir %{_docdir}/%{name}
-%doc %{_docdir}/%{name}/[CNRT]*
-%doc %{_docdir}/%{name}/AUTHORS
-%doc %{_mandir}/man1/virsh.1*
-%doc %{_mandir}/man1/virt-xml-validate.1*
-%doc %{_mandir}/man1/virt-pki-validate.1*
-%{_libdir}/*.so.*
%dir %{_libdir}/%{name}
-%if 0%{?suse_version} > 1030
-%{_libdir}/%{name}/libvirt_parthelper
-%endif
-%if %{with_lxc}
-%attr(0755, root, root) %{_libdir}/%{name}/libvirt_lxc
-%endif
%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
-%if %{with_lxc}
-%config %{_sysconfdir}/libvirt/lxc.conf
-%endif
-%config %{_sysconfdir}/libvirt/qemu/networks/default.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}/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}/libvirt
%{_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 %{_docdir}/%{name}/[CNRT]*
+%doc %{_docdir}/%{name}/AUTHORS
+%doc %{_mandir}/man1/virsh.1*
+%doc %{_mandir}/man1/virt-xml-validate.1*
+%doc %{_mandir}/man1/virt-pki-validate.1*
+%{_bindir}/virsh
+%{_bindir}/virt-xml-validate
+%{_bindir}/virt-pki-validate
+%{_libdir}/lib*.so.*
+%dir %{_datadir}/libvirt/
+%dir %{_datadir}/libvirt/schemas/
+%{_datadir}/libvirt/schemas/domain.rng
+%{_datadir}/libvirt/schemas/network.rng
+%{_datadir}/libvirt/schemas/storagepool.rng
+%{_datadir}/libvirt/schemas/storagevol.rng
+%{_datadir}/libvirt/schemas/nodedev.rng
+%{_datadir}/libvirt/schemas/capability.rng
+%{_datadir}/libvirt/schemas/interface.rng
+%{_datadir}/libvirt/schemas/secret.rng
+%{_datadir}/libvirt/schemas/storageencryption.rng
+%{_datadir}/libvirt/cpu_map.xml
+%config %{_sysconfdir}/sasl2/libvirt.conf
%files devel
%defattr(-, root, root)
@@ -341,6 +502,5 @@
%doc %{_docdir}/%{name}-python
%{py_sitedir}/libvirt.py*
%{py_sitedir}/libvirtmod*
-#%attr(0755, root, root) %{_libdir}/%{name}/virt-aa-helper
%changelog
++++++ detach-disk.patch ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:42.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:42.000000000 +0100
@@ -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.4/src/xen/xend_internal.c
-@@ -4109,13 +4109,12 @@ xenDaemonAttachDevice(virDomainPtr domai
+--- libvirt-0.7.5.orig/src/xen/xend_internal.c
++++ libvirt-0.7.5/src/xen/xend_internal.c
+@@ -4123,13 +4123,12 @@ xenDaemonAttachDevice(virDomainPtr domai
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
@@ -21,7 +21,7 @@
if (!(def = xenDaemonDomainFetch(domain->conn,
domain->id,
domain->name,
-@@ -4213,12 +4212,11 @@ xenDaemonDetachDevice(virDomainPtr domai
+@@ -4229,12 +4228,11 @@ xenDaemonDetachDevice(virDomainPtr domai
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
@@ -38,11 +38,11 @@
if (!(def = xenDaemonDomainFetch(domain->conn,
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.4/src/libvirt.c
-@@ -4919,7 +4919,8 @@ error:
+--- libvirt-0.7.5.orig/src/libvirt.c
++++ libvirt-0.7.5/src/libvirt.c
+@@ -5066,7 +5066,8 @@ error:
* @domain: pointer to domain object
* @xml: pointer to XML description of one device
*
@@ -52,7 +52,7 @@
*
* 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
* @xml: pointer to XML description of one device
*
++++++ libvirt-0.7.4.tar.bz2 -> libvirt-0.7.5.tar.bz2 ++++++
++++ 984762 lines of diff (skipped)
++++++ libvirtd-defaults.patch ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:49.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:49.000000000 +0100
@@ -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.2/daemon/libvirtd.conf
+--- libvirt-0.7.5.orig/daemon/libvirtd.conf
++++ libvirt-0.7.5/daemon/libvirtd.conf
@@ -18,8 +18,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.
@@ -28,11 +28,11 @@
# Override the default mDNS advertizement name. This must be
# 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.2/daemon/libvirtd.c
-@@ -135,7 +135,7 @@ static int sigwrite = -1; /* Signa
+--- libvirt-0.7.5.orig/daemon/libvirtd.c
++++ libvirt-0.7.5/daemon/libvirtd.c
+@@ -137,7 +137,7 @@ static int sigwrite = -1; /* Signa
static int ipsock = 0; /* -l Listen for TCP/IP */
/* Defaults for configuration file elements */
@@ -41,7 +41,7 @@
static int listen_tcp = 0;
static char *listen_addr = (char *) LIBVIRTD_LISTEN_ADDR;
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
static int auth_tls = REMOTE_AUTH_NONE;
++++++ migrate-params.patch ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:49.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:49.000000000 +0100
@@ -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.4/src/xen/xend_internal.c
-@@ -4517,6 +4517,8 @@ xenDaemonDomainMigratePerform (virDomain
+--- libvirt-0.7.5.orig/src/xen/xend_internal.c
++++ libvirt-0.7.5/src/xen/xend_internal.c
+@@ -4559,6 +4559,8 @@ xenDaemonDomainMigratePerform (virDomain
"node", "-1",
"ssl", "0",
"resource", "0", /* required, xend ignores it */
++++++ node-dev-free.patch ++++++
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
++++++ snapshots.patch ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:49.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:49.000000000 +0100
@@ -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.4/include/libvirt/libvirt.h.in
-@@ -565,6 +565,21 @@ int virDomainRestore
+--- libvirt-0.7.5.orig/include/libvirt/libvirt.h.in
++++ libvirt-0.7.5/include/libvirt/libvirt.h.in
+@@ -621,6 +621,21 @@ int virDomainRestore
const char *from);
/*
@@ -24,11 +24,11 @@
* Domain core dump
*/
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.4/src/libvirt.c
-@@ -2281,6 +2281,166 @@ error:
+--- libvirt-0.7.5.orig/src/libvirt.c
++++ libvirt-0.7.5/src/libvirt.c
+@@ -2339,6 +2339,166 @@ error:
}
/**
@@ -195,10 +195,10 @@
* virDomainCoreDump:
* @domain: a domain object
* @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.4/src/driver.h
+--- libvirt-0.7.5.orig/src/driver.h
++++ libvirt-0.7.5/src/driver.h
@@ -136,6 +136,21 @@ typedef int
(*virDrvDomainRestore) (virConnectPtr conn,
const char *from);
@@ -221,10 +221,10 @@
(*virDrvDomainCoreDump) (virDomainPtr domain,
const char *to,
int flags);
-@@ -435,6 +450,11 @@ struct _virDriver {
- virDrvConnectIsSecure isSecure;
+@@ -448,6 +463,11 @@ struct _virDriver {
virDrvDomainIsActive domainIsActive;
virDrvDomainIsPersistent domainIsPersistent;
+ virDrvCPUCompare cpuCompare;
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
+ virDrvDomainSnapshotApply domainSnapshotApply;
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
@@ -233,10 +233,10 @@
};
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.4/src/xen/xen_driver.c
+--- libvirt-0.7.5.orig/src/xen/xen_driver.c
++++ libvirt-0.7.5/src/xen/xen_driver.c
@@ -1052,6 +1052,81 @@ xenUnifiedDomainRestore (virConnectPtr c
}
@@ -319,22 +319,22 @@
xenUnifiedDomainCoreDump (virDomainPtr dom, const char *to, int flags)
{
GET_PRIVATE(dom->conn);
-@@ -1860,6 +1935,11 @@ static virDriver xenUnifiedDriver = {
- xenUnifiedIsSecure,
+@@ -1862,6 +1937,11 @@ static virDriver xenUnifiedDriver = {
xenUnifiedDomainIsActive,
xenUnifiedDomainisPersistent,
-+ xenUnifiedDomainSnapshotCreate,
-+ xenUnifiedDomainSnapshotApply,
-+ xenUnifiedDomainSnapshotDelete,
-+ xenUnifiedDomainNumOfSnapshots,
-+ xenUnifiedDomainListSnapshots,
+ NULL, /* cpuCompare */
++ xenUnifiedDomainSnapshotCreate, /* domainSnapshotCreate */
++ xenUnifiedDomainSnapshotApply, /* domainSnapshotApply */
++ xenUnifiedDomainSnapshotDelete, /* domainSnapshotDelete */
++ 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.4/src/xen/xen_driver.h
+--- libvirt-0.7.5.orig/src/xen/xen_driver.h
++++ libvirt-0.7.5/src/xen/xen_driver.h
@@ -100,6 +100,11 @@ struct xenUnifiedDriver {
virDrvDomainGetSchedulerType domainGetSchedulerType;
virDrvDomainGetSchedulerParameters domainGetSchedulerParameters;
@@ -347,10 +347,10 @@
};
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.4/src/xen/xend_internal.c
+--- libvirt-0.7.5.orig/src/xen/xend_internal.c
++++ libvirt-0.7.5/src/xen/xend_internal.c
@@ -53,6 +53,12 @@
#ifndef PROXY
@@ -364,7 +364,7 @@
/*
* 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);
}
@@ -452,7 +452,7 @@
#endif /* !PROXY */
/**
-@@ -5123,6 +5210,11 @@ struct xenUnifiedDriver xenDaemonDriver
+@@ -5165,6 +5252,11 @@ struct xenUnifiedDriver xenDaemonDriver
xenDaemonGetSchedulerType, /* domainGetSchedulerType */
xenDaemonGetSchedulerParameters, /* domainGetSchedulerParameters */
xenDaemonSetSchedulerParameters, /* domainSetSchedulerParameters */
@@ -464,10 +464,10 @@
};
/************************************************************************
-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.4/src/xen/proxy_internal.c
+--- libvirt-0.7.5.orig/src/xen/proxy_internal.c
++++ libvirt-0.7.5/src/xen/proxy_internal.c
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenProxyDriver =
NULL, /* domainGetSchedulerType */
NULL, /* domainGetSchedulerParameters */
@@ -480,11 +480,11 @@
};
-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.4/src/xen/xen_hypervisor.c
-@@ -750,6 +750,11 @@ struct xenUnifiedDriver xenHypervisorDri
+--- libvirt-0.7.5.orig/src/xen/xen_hypervisor.c
++++ libvirt-0.7.5/src/xen/xen_hypervisor.c
+@@ -800,6 +800,11 @@ struct xenUnifiedDriver xenHypervisorDri
xenHypervisorGetSchedulerType, /* domainGetSchedulerType */
xenHypervisorGetSchedulerParameters, /* domainGetSchedulerParameters */
xenHypervisorSetSchedulerParameters, /* domainSetSchedulerParameters */
@@ -496,10 +496,10 @@
};
#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.4/src/xen/xm_internal.c
+--- libvirt-0.7.5.orig/src/xen/xm_internal.c
++++ libvirt-0.7.5/src/xen/xm_internal.c
@@ -116,6 +116,11 @@ struct xenUnifiedDriver xenXMDriver = {
NULL, /* domainGetSchedulerType */
NULL, /* domainGetSchedulerParameters */
@@ -512,10 +512,10 @@
};
#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.4/src/xen/xs_internal.c
+--- libvirt-0.7.5.orig/src/xen/xs_internal.c
++++ libvirt-0.7.5/src/xen/xs_internal.c
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenStoreDriver =
NULL, /* domainGetSchedulerType */
NULL, /* domainGetSchedulerParameters */
@@ -528,11 +528,11 @@
};
#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.4/tools/virsh.c
-@@ -1179,6 +1179,188 @@ cmdSave(vshControl *ctl, const vshCmd *c
+--- libvirt-0.7.5.orig/tools/virsh.c
++++ libvirt-0.7.5/tools/virsh.c
+@@ -1233,6 +1233,188 @@ cmdSave(vshControl *ctl, const vshCmd *c
}
/*
@@ -721,7 +721,7 @@
* "schedinfo" command
*/
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},
{"uri", cmdURI, NULL, info_uri},
@@ -734,14 +734,14 @@
{"vol-create", cmdVolCreate, opts_vol_create, info_vol_create},
{"vol-create-from", cmdVolCreateFrom, opts_vol_create_from, info_vol_create_from},
{"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.4/src/lxc/lxc_driver.c
-@@ -2404,6 +2404,11 @@ static virDriver lxcDriver = {
- lxcIsSecure,
+--- libvirt-0.7.5.orig/src/lxc/lxc_driver.c
++++ libvirt-0.7.5/src/lxc/lxc_driver.c
+@@ -2456,6 +2456,11 @@ static virDriver lxcDriver = {
lxcDomainIsActive,
lxcDomainIsPersistent,
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -750,14 +750,14 @@
};
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.4/src/openvz/openvz_driver.c
-@@ -1534,6 +1534,11 @@ static virDriver openvzDriver = {
- openvzIsSecure,
+--- libvirt-0.7.5.orig/src/openvz/openvz_driver.c
++++ libvirt-0.7.5/src/openvz/openvz_driver.c
+@@ -1535,6 +1535,11 @@ static virDriver openvzDriver = {
openvzDomainIsActive,
openvzDomainIsPersistent,
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -766,14 +766,14 @@
};
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.4/src/qemu/qemu_driver.c
-@@ -7559,6 +7559,11 @@ static virDriver qemuDriver = {
- qemuIsSecure,
+--- libvirt-0.7.5.orig/src/qemu/qemu_driver.c
++++ libvirt-0.7.5/src/qemu/qemu_driver.c
+@@ -7990,6 +7990,11 @@ static virDriver qemuDriver = {
qemuDomainIsActive,
qemuDomainIsPersistent,
+ qemuCPUCompare, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -782,14 +782,14 @@
};
-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.4/src/esx/esx_driver.c
-@@ -3425,6 +3425,11 @@ static virDriver esxDriver = {
- esxIsSecure, /* isSecure */
+--- libvirt-0.7.5.orig/src/esx/esx_driver.c
++++ libvirt-0.7.5/src/esx/esx_driver.c
+@@ -3455,6 +3455,11 @@ static virDriver esxDriver = {
esxDomainIsActive, /* domainIsActive */
esxDomainIsPersistent, /* domainIsPersistent */
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -798,14 +798,14 @@
};
-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.4/src/test/test_driver.c
-@@ -5233,6 +5233,11 @@ static virDriver testDriver = {
- testIsSecure, /* isEncrypted */
+--- libvirt-0.7.5.orig/src/test/test_driver.c
++++ libvirt-0.7.5/src/test/test_driver.c
+@@ -5238,6 +5238,11 @@ static virDriver testDriver = {
testDomainIsActive, /* domainIsActive */
testDomainIsPersistent, /* domainIsPersistent */
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -814,14 +814,14 @@
};
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.4/src/uml/uml_driver.c
-@@ -1888,6 +1888,11 @@ static virDriver umlDriver = {
- umlIsSecure,
+--- libvirt-0.7.5.orig/src/uml/uml_driver.c
++++ libvirt-0.7.5/src/uml/uml_driver.c
+@@ -1924,6 +1924,11 @@ static virDriver umlDriver = {
umlDomainIsActive,
umlDomainIsPersistent,
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -830,14 +830,14 @@
};
-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.4/src/vbox/vbox_tmpl.c
-@@ -6571,6 +6571,11 @@ virDriver NAME(Driver) = {
- vboxIsSecure,
+--- libvirt-0.7.5.orig/src/vbox/vbox_tmpl.c
++++ libvirt-0.7.5/src/vbox/vbox_tmpl.c
+@@ -7051,6 +7051,11 @@ virDriver NAME(Driver) = {
vboxDomainIsActive,
vboxDomainIsPersistent,
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -846,14 +846,14 @@
};
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.4/src/opennebula/one_driver.c
-@@ -781,6 +781,11 @@ static virDriver oneDriver = {
- oneIsSecure,
+--- libvirt-0.7.5.orig/src/opennebula/one_driver.c
++++ libvirt-0.7.5/src/opennebula/one_driver.c
+@@ -783,6 +783,11 @@ static virDriver oneDriver = {
NULL, /* domainIsActive */
NULL, /* domainIsPersistent */
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -862,14 +862,14 @@
};
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.4/src/phyp/phyp_driver.c
-@@ -1650,6 +1650,11 @@ virDriver phypDriver = {
- phypIsSecure,
+--- libvirt-0.7.5.orig/src/phyp/phyp_driver.c
++++ libvirt-0.7.5/src/phyp/phyp_driver.c
+@@ -1651,6 +1651,11 @@ virDriver phypDriver = {
NULL, /* domainIsActive */
NULL, /* domainIsPersistent */
+ NULL, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -878,14 +878,14 @@
};
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.4/src/remote/remote_driver.c
-@@ -8847,6 +8847,11 @@ static virDriver remote_driver = {
- remoteIsSecure, /* isSecure */
+--- libvirt-0.7.5.orig/src/remote/remote_driver.c
++++ libvirt-0.7.5/src/remote/remote_driver.c
+@@ -8940,6 +8940,11 @@ static virDriver remote_driver = {
remoteDomainIsActive, /* domainIsActive */
remoteDomainIsPersistent, /* domainIsPersistent */
+ remoteCPUCompare, /* cpuCompare */
+ NULL, /* domainSnapshotCreate */
+ NULL, /* domainSnapshotApply */
+ NULL, /* domainSnapshotDelete */
@@ -894,11 +894,11 @@
};
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.4/docs/libvirt-api.xml
-@@ -271,6 +271,11 @@
+--- libvirt-0.7.5.orig/docs/libvirt-api.xml
++++ libvirt-0.7.5/docs/libvirt-api.xml
+@@ -293,6 +293,11 @@
<exports symbol='virDomainSetVcpus' type='function'/>
<exports symbol='virDomainShutdown' type='function'/>
<exports symbol='virDomainSuspend' type='function'/>
@@ -910,7 +910,7 @@
<exports symbol='virDomainUndefine' type='function'/>
<exports symbol='virEventAddHandleFunc' 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.'/>
<arg name='domain' type='virDomainPtr' info='a domain object'/>
</function>
@@ -947,10 +947,10 @@
<function name='virDomainUndefine' file='libvirt' module='libvirt'>
<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'/>
-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.4/src/libvirt_public.syms
+--- libvirt-0.7.5.orig/src/libvirt_public.syms
++++ libvirt-0.7.5/src/libvirt_public.syms
@@ -215,6 +215,11 @@ LIBVIRT_0.4.2 {
LIBVIRT_0.4.5 {
global:
@@ -963,11 +963,11 @@
} LIBVIRT_0.4.2;
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.4/python/generator.py
-@@ -287,6 +287,7 @@ skip_impl = (
+--- libvirt-0.7.5.orig/python/generator.py
++++ libvirt-0.7.5/python/generator.py
+@@ -288,6 +288,7 @@ skip_impl = (
'virDomainSetSchedulerParameters',
'virDomainGetVcpus',
'virDomainPinVcpu',
@@ -975,11 +975,11 @@
'virSecretGetValue',
'virSecretSetValue',
'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.4/python/libvirt-override.c
-@@ -1400,6 +1400,34 @@ libvirt_virStoragePoolGetInfo(PyObject *
+--- libvirt-0.7.5.orig/python/libvirt-override.c
++++ libvirt-0.7.5/python/libvirt-override.c
+@@ -1516,6 +1516,34 @@ libvirt_virStoragePoolGetInfo(PyObject *
return(py_retval);
}
@@ -1014,7 +1014,7 @@
static PyObject *
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 *) "virStoragePoolListVolumes", libvirt_virStoragePoolListVolumes, METH_VARARGS, NULL},
{(char *) "virStoragePoolGetInfo", libvirt_virStoragePoolGetInfo, METH_VARARGS, NULL},
@@ -1022,11 +1022,11 @@
{(char *) "virStorageVolGetInfo", libvirt_virStorageVolGetInfo, METH_VARARGS, NULL},
{(char *) "virStoragePoolGetUUID", libvirt_virStoragePoolGetUUID, 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.4/python/libvirt-override-api.xml
-@@ -140,6 +140,11 @@
+--- libvirt-0.7.5.orig/python/libvirt-override-api.xml
++++ libvirt-0.7.5/python/libvirt-override-api.xml
+@@ -145,6 +145,11 @@
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
<arg name='params' type='virSchedParameterPtr' info='pointer to scheduler parameter objects'/>
</function>
@@ -1038,10 +1038,10 @@
<function name='virConnectListStoragePools' file='python'>
<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'/>
-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.4/src/xen/xen_inotify.c
+--- libvirt-0.7.5.orig/src/xen/xen_inotify.c
++++ libvirt-0.7.5/src/xen/xen_inotify.c
@@ -86,6 +86,11 @@ struct xenUnifiedDriver xenInotifyDriver
NULL, /* domainGetSchedulerType */
NULL, /* domainGetSchedulerParameters */
++++++ suse-network.patch ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:49.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:49.000000000 +0100
@@ -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.4/src/conf/network_conf.c
-@@ -865,6 +865,137 @@ error:
+--- libvirt-0.7.5.orig/src/conf/network_conf.c
++++ libvirt-0.7.5/src/conf/network_conf.c
+@@ -863,6 +863,137 @@ error:
return NULL;
}
@@ -140,7 +140,7 @@
int virNetworkLoadAllConfigs(virConnectPtr conn,
virNetworkObjListPtr nets,
const char *configDir,
-@@ -904,6 +1035,7 @@ int virNetworkLoadAllConfigs(virConnectP
+@@ -902,6 +1033,7 @@ int virNetworkLoadAllConfigs(virConnectP
closedir(dir);
@@ -148,10 +148,10 @@
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.4/src/conf/network_conf.h
+--- libvirt-0.7.5.orig/src/conf/network_conf.h
++++ libvirt-0.7.5/src/conf/network_conf.h
@@ -94,6 +94,7 @@ struct _virNetworkObj {
unsigned int active : 1;
unsigned int autostart : 1;
@@ -160,11 +160,11 @@
virNetworkDefPtr def; /* The current definition */
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.4/src/network/bridge_driver.c
-@@ -994,6 +994,11 @@ static int networkShutdownNetworkDaemon(
+--- libvirt-0.7.5.orig/src/network/bridge_driver.c
++++ libvirt-0.7.5/src/network/bridge_driver.c
+@@ -1010,6 +1010,11 @@ static int networkShutdownNetworkDaemon(
unlink(stateFile);
VIR_FREE(stateFile);
@@ -176,7 +176,7 @@
if (network->dnsmasqPid > 0)
kill(network->dnsmasqPid, SIGTERM);
-@@ -1494,6 +1499,12 @@ static int networkSetAutostart(virNetwor
+@@ -1510,6 +1515,12 @@ static int networkSetAutostart(virNetwor
goto cleanup;
}
++++++ xen-pv-cdrom.patch ++++++
--- /var/tmp/diff_new_pack.v8JJ9Q/_old 2010-01-08 01:36:49.000000000 +0100
+++ /var/tmp/diff_new_pack.v8JJ9Q/_new 2010-01-08 01:36:49.000000000 +0100
@@ -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.4/src/xen/xend_internal.c
-@@ -5365,7 +5365,10 @@ xenDaemonFormatSxprDisk(virConnectPtr co
+--- libvirt-0.7.5.orig/src/xen/xend_internal.c
++++ libvirt-0.7.5/src/xen/xend_internal.c
+@@ -5409,7 +5409,10 @@ xenDaemonFormatSxprDisk(virConnectPtr co
} else if (def->device == VIR_DOMAIN_DISK_DEVICE_CDROM) {
virBufferVSprintf(buf, "(dev '%s:cdrom')", def->dst);
} else {
++++++ xen-shr-pages.patch ++++++
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;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org