Hello community,
here is the log from the commit of package libvirt for openSUSE:Factory checked in at 2011-11-29 17:15:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libvirt (Old)
and /work/SRC/openSUSE:Factory/.libvirt.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libvirt", Maintainer is "JFEHLIG@suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libvirt/libvirt.changes 2011-10-19 13:39:05.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libvirt.new/libvirt.changes 2011-11-29 17:15:54.000000000 +0100
@@ -1,0 +2,39 @@
+Mon Nov 28 14:57:04 MST 2011 - jfehlig@suse.com
+
+- Handle empty strings in s-expression returned by xend
+ a495365d-sexpr-empty-str.patch
+ bnc#731344
+- Allow libvirtd to access libvirt_{io,part}helper when confined
+ by apparmor
+ Update install-apparmor-profiles.patch
+ bnc#730435
+
+-------------------------------------------------------------------
+Mon Nov 21 12:34:55 MST 2011 - jfehlig@suse.com
+
+- Accommodate Xen domctl version 8
+ xen-domctl-ver8.patch
+
+-------------------------------------------------------------------
+Sun Nov 20 06:25:30 UTC 2011 - coolo@suse.com
+
+- add libtool as buildrequire to avoid implicit dependency
+
+-------------------------------------------------------------------
+Tue Nov 15 15:05:36 MST 2011 - jfehlig@suse.com
+
+- Fix build when using older PolicyKit
+ d47ab3fe-polkit0.patch
+
+-------------------------------------------------------------------
+Wed Nov 9 18:52:18 MST 2011 - jfehlig@suse.com
+
+- Update to libvirt 0.9.7
+ - esx: support vSphere 5.x
+ - vbox: support for VirtualBox 4.1
+ - Introduce the virDomainOpenGraphics API
+ - Add AHCI support to qemu driver
+ - snapshot: many improvements and 2 new APIs
+ - api: Add public api for 'reset'
+
+-------------------------------------------------------------------
Old:
----
c1bc3d89-qemu-add-ahci.patch
f84aedad-revert.patch
libvirt-0.9.6.tar.bz2
xend-disk-order.patch
New:
----
a495365d-sexpr-empty-str.patch
d47ab3fe-polkit0.patch
libvirt-0.9.7.tar.bz2
xen-domctl-ver8.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libvirt.spec ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -44,7 +44,7 @@
%define with_libxl 0%{!?_without_libxl:%{server_drivers}}
%define with_vmware 0%{!?_without_vmware:%{server_drivers}}
-# Then the hypervisor drivers that talk a native remote protocol
+# Then the hypervisor drivers that talk via a native remote protocol
%define with_phyp 0%{!?_without_phyp:0}
%define with_esx 0%{!?_without_esx:1}
%define with_xenapi 0%{!?_without_xenapi:1}
@@ -102,7 +102,8 @@
%define with_numactl 0
%endif
-# SLES doesn't contain OpenVZ, VBox, UML, ESX, VMWare, or Citrix XenAPI
+# SLES doesn't contain OpenVZ, VBox, UML, ESX, VMWare, Citrix XenAPI,
+# or hyper-v
%if 0%{?sles_version}
%define with_openvz 0
%define with_vbox 0
@@ -110,6 +111,7 @@
%define with_esx 0
%define with_vmware 0
%define with_xenapi 0
+%define with_hyperv 0
%endif
# Enable phyp driver for IBM Power systems
@@ -198,7 +200,7 @@
BuildRequires: libgcrypt-devel
BuildRequires: bridge-utils
BuildRequires: fdupes
-BuildRequires: pkg-config
+BuildRequires: libtool pkg-config
BuildRequires: python-xml
# Only for directory ownership:
BuildRequires: gtk-doc
@@ -300,13 +302,17 @@
%if %{with_audit}
BuildRequires: audit-devel
%endif
+%if %{with_dtrace}
+# we need /usr/sbin/dtrace
+BuildRequires: systemtap-sdt-devel
+%endif
Name: libvirt
Url: http://libvirt.org/
License: LGPLv2.1+
Group: Development/Libraries/C and C++
AutoReqProv: yes
-Version: 0.9.6
+Version: 0.9.7
Release: 1
Summary: A C toolkit to interact with the virtualization capabilities of Linux
Conflicts: kvm < 0.14.1
@@ -374,15 +380,13 @@
Source2: libvirtd-relocation-server.fw
Source99: baselibs.conf
# Upstream patches
-# This patch reverts commit f84aedad, which is not needed since
-# the openSUSE kvm package is patched with qemu 'no-shutdown' fix
-Patch0: f84aedad-revert.patch
-Patch1: c1bc3d89-qemu-add-ahci.patch
+Patch0: d47ab3fe-polkit0.patch
+Patch1: a495365d-sexpr-empty-str.patch
# Need to go upstream
Patch100: xen-name-for-devid.patch
Patch101: clone.patch
Patch102: xen-pv-cdrom.patch
-Patch103: xend-disk-order.patch
+Patch103: xen-domctl-ver8.patch
# Our patches
Patch200: libvirtd-defaults.patch
Patch201: use-init-script-redhat.patch
@@ -608,6 +612,9 @@
%if ! %{with_audit}
%define _without_audit --without-audit
%endif
+%if ! %{with_dtrace}
+%define _without_dtrace --without-dtrace
+%endif
%if ! %{with_network}
%define _without_network --without-network
%endif
@@ -654,6 +661,7 @@
%{?_without_macvtap} \
%{?_without_polkit} \
%{?_without_audit} \
+ %{?_without_dtrace} \
%{?_without_network} \
%{?_without_sasl} \
%{?_without_python} \
@@ -807,6 +815,10 @@
%{_sbindir}/rclibvirtd
%config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd
+%if %{with_dtrace}
+%{_datadir}/systemtap/tapset/libvirt_probes.stp
+%{_datadir}/systemtap/tapset/libvirt_functions.stp
+%endif
%dir %{_localstatedir}/lib/libvirt/
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/images/
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/boot/
@@ -869,6 +881,7 @@
%doc %{_mandir}/man1/virsh.1*
%doc %{_mandir}/man1/virt-xml-validate.1*
%doc %{_mandir}/man1/virt-pki-validate.1*
+%config(noreplace) %{_sysconfdir}/libvirt/libvirt.conf
%{_bindir}/virsh
%{_bindir}/virt-xml-validate
%{_bindir}/virt-pki-validate
++++++ a495365d-sexpr-empty-str.patch ++++++
commit a495365d09138bf0f07504cfe9b6ea2de858e18e
Author: Jim Fehlig
Date: Fri Nov 18 14:54:38 2011 -0700
Don't copy sexpr node value that is an empty string
Xen4.1 initializes some unspecified sexpr config items to an empty
string, unlike previous Xen versions that would leave the item unset.
E.g. the kernel item for an HVM guest (non-direct kernel boot):
Xen4.0 and earlier
...
(image
(hvm
(kernel )
...
Xen4.1
...
(image
(hvm
(kernel '')
...
The empty string for kernel causes some grief in subsequent parsing
where existence of specified kernel is checked, e.g.
if (!def->os.kernel)
...
This patch solves the problem in sexpr_node_copy() by not copying
a node containing an empty string.
Index: libvirt-0.9.7/src/util/sexpr.c
===================================================================
--- libvirt-0.9.7.orig/src/util/sexpr.c
+++ libvirt-0.9.7/src/util/sexpr.c
@@ -519,7 +519,7 @@ int sexpr_node_copy(const struct sexpr *
{
const char *val = sexpr_node(sexpr, node);
- if (val) {
+ if (val && *val) {
*dst = strdup(val);
if (!(*dst))
return -1;
++++++ clone.patch ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -2,8 +2,8 @@
===================================================================
--- src/lxc/lxc_container.c.orig
+++ src/lxc/lxc_container.c
-@@ -1183,6 +1183,9 @@ int lxcContainerStart(virDomainDefPtr de
- handshakefd};
+@@ -1345,6 +1345,9 @@ int lxcContainerStart(virDomainDefPtr de
+ ttyPaths, nttyPaths, handshakefd};
/* allocate a stack for the container */
+#ifdef __ia64__
@@ -12,7 +12,7 @@
if (VIR_ALLOC_N(stack, stacksize) < 0) {
virReportOOMError();
return -1;
-@@ -1201,7 +1204,11 @@ int lxcContainerStart(virDomainDefPtr de
+@@ -1363,7 +1366,11 @@ int lxcContainerStart(virDomainDefPtr de
cflags |= CLONE_NEWNET;
}
@@ -24,15 +24,15 @@
VIR_FREE(stack);
VIR_DEBUG("clone() completed, new container PID is %d", pid);
-@@ -1228,6 +1235,7 @@ int lxcContainerAvailable(int features)
+@@ -1389,6 +1396,7 @@ int lxcContainerAvailable(int features)
+ int cpid;
char *childStack;
char *stack;
- int childStatus;
+ int stacksize = getpagesize() * 4;
if (features & LXC_CONTAINER_FEATURE_USER)
flags |= CLONE_NEWUSER;
-@@ -1235,14 +1243,21 @@ int lxcContainerAvailable(int features)
+@@ -1396,14 +1404,21 @@ int lxcContainerAvailable(int features)
if (features & LXC_CONTAINER_FEATURE_NET)
flags |= CLONE_NEWNET;
@@ -55,4 +55,4 @@
+#endif
VIR_FREE(stack);
if (cpid < 0) {
- char ebuf[1024];
+ char ebuf[1024] ATTRIBUTE_UNUSED;
++++++ d47ab3fe-polkit0.patch ++++++
commit d47ab3fe6115de6c54f999ba598fe58418840653
Author: Jim Fehlig
Date: Wed Nov 16 11:35:08 2011 -0700
Fix build with polkit0
I missed adding virNetServerGetDBusConn() to libvirtd_private.syms
in commit b8adfcc6, which didn't cause a problem in 0.9.6 but
results in this build error in 0.9.7
libvirtd-remote.o: In function `remoteDispatchAuthPolkit':
remote.c:(.text+0x188dd): undefined reference to `virNetServerGetDBusConn'
Index: libvirt-0.9.7/src/libvirt_private.syms
===================================================================
--- libvirt-0.9.7.orig/src/libvirt_private.syms
+++ libvirt-0.9.7/src/libvirt_private.syms
@@ -1217,6 +1217,7 @@ virNetServerAddSignalHandler;
virNetServerAutoShutdown;
virNetServerClose;
virNetServerFree;
+virNetServerGetDBusConn;
virNetServerIsPrivileged;
virNetServerNew;
virNetServerQuit;
++++++ install-apparmor-profiles.patch ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -1,7 +1,7 @@
-Index: libvirt-0.9.4/examples/apparmor/Makefile.am
+Index: libvirt-0.9.7/examples/apparmor/Makefile.am
===================================================================
---- libvirt-0.9.4.orig/examples/apparmor/Makefile.am
-+++ libvirt-0.9.4/examples/apparmor/Makefile.am
+--- libvirt-0.9.7.orig/examples/apparmor/Makefile.am
++++ libvirt-0.9.7/examples/apparmor/Makefile.am
@@ -1,8 +1,39 @@
## Copyright (C) 2005-2011 Red Hat, Inc.
## See COPYING.LIB for the License of this software
@@ -47,10 +47,10 @@
+ rm -f $(DESTDIR)$(sysconfdir)/apparmor.d/libvirt/TEMPLATE
+
+endif
-Index: libvirt-0.9.4/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
+Index: libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
===================================================================
--- /dev/null
-+++ libvirt-0.9.4/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
++++ libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
@@ -0,0 +1,40 @@
+# Last Modified: Fri Aug 19 11:21:48 2011
+#include
@@ -92,9 +92,9 @@
+ /var/lib/kvm/images/ r,
+ /var/lib/kvm/images/** r,
+}
-Index: libvirt-0.9.4/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+Index: libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper
===================================================================
---- libvirt-0.9.4.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+--- libvirt-0.9.7.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+++ /dev/null
@@ -1,38 +0,0 @@
-# Last Modified: Mon Apr 5 15:10:27 2010
@@ -135,9 +135,9 @@
- /var/lib/libvirt/images/ r,
- /var/lib/libvirt/images/** r,
-}
-Index: libvirt-0.9.4/examples/apparmor/usr.sbin.libvirtd
+Index: libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd
===================================================================
---- libvirt-0.9.4.orig/examples/apparmor/usr.sbin.libvirtd
+--- libvirt-0.9.7.orig/examples/apparmor/usr.sbin.libvirtd
+++ /dev/null
@@ -1,52 +0,0 @@
-# Last Modified: Mon Apr 5 15:03:58 2010
@@ -192,11 +192,11 @@
- change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*,
-
-}
-Index: libvirt-0.9.4/examples/apparmor/usr.sbin.libvirtd.in
+Index: libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd.in
===================================================================
--- /dev/null
-+++ libvirt-0.9.4/examples/apparmor/usr.sbin.libvirtd.in
-@@ -0,0 +1,52 @@
++++ libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd.in
+@@ -0,0 +1,54 @@
+# Last Modified: Fri Aug 19 11:20:36 2011
+#include
+@{LIBVIRT}="libvirt"
@@ -244,15 +244,17 @@
+ audit deny /sys/kernel/security/apparmor/.* rwxl,
+ /sys/kernel/security/apparmor/profiles r,
+ @libdir@/libvirt/* Pxr,
++ @libdir@/libvirt/libvirt_parthelper Ux,
++ @libdir@/libvirt/libvirt_iohelper Ux,
+
+ # allow changing to our UUID-based named profiles
+ change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*,
+
+}
-Index: libvirt-0.9.4/examples/apparmor/libvirt-qemu
+Index: libvirt-0.9.7/examples/apparmor/libvirt-qemu
===================================================================
---- libvirt-0.9.4.orig/examples/apparmor/libvirt-qemu
-+++ libvirt-0.9.4/examples/apparmor/libvirt-qemu
+--- libvirt-0.9.7.orig/examples/apparmor/libvirt-qemu
++++ libvirt-0.9.7/examples/apparmor/libvirt-qemu
@@ -52,6 +52,7 @@
# access to firmware's etc
/usr/share/kvm/** r,
++++++ libvirt-0.9.6.tar.bz2 -> libvirt-0.9.7.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/libvirt/libvirt-0.9.6.tar.bz2 /work/SRC/openSUSE:Factory/.libvirt.new/libvirt-0.9.7.tar.bz2 differ: char 11, line 1
++++++ libvirt-suse-netcontrol.patch ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -1,7 +1,7 @@
-Index: libvirt-0.9.6/configure.ac
+Index: libvirt-0.9.7/configure.ac
===================================================================
---- libvirt-0.9.6.orig/configure.ac
-+++ libvirt-0.9.6/configure.ac
+--- libvirt-0.9.7.orig/configure.ac
++++ libvirt-0.9.7/configure.ac
@@ -63,6 +63,7 @@ AVAHI_REQUIRED="0.6.0"
POLKIT_REQUIRED="0.6"
PARTED_REQUIRED="1.8.0"
@@ -10,7 +10,7 @@
UDEV_REQUIRED=145
PCIACCESS_REQUIRED=0.10.0
XMLRPC_REQUIRED=1.14.0
-@@ -1593,6 +1594,38 @@ AM_CONDITIONAL([WITH_NETCF], [test "$wit
+@@ -1591,6 +1592,38 @@ AM_CONDITIONAL([WITH_NETCF], [test "$wit
AC_SUBST([NETCF_CFLAGS])
AC_SUBST([NETCF_LIBS])
@@ -49,7 +49,7 @@
AC_ARG_WITH([secrets],
AC_HELP_STRING([--with-secrets], [with local secrets management driver @<:@default=yes@:>@]),[],[with_secrets=yes])
-@@ -2517,6 +2550,7 @@ AC_MSG_NOTICE([ Remote: $with_remote])
+@@ -2515,6 +2548,7 @@ AC_MSG_NOTICE([ Remote: $with_remote])
AC_MSG_NOTICE([ Network: $with_network])
AC_MSG_NOTICE([Libvirtd: $with_libvirtd])
AC_MSG_NOTICE([ netcf: $with_netcf])
@@ -57,7 +57,7 @@
AC_MSG_NOTICE([ macvtap: $with_macvtap])
AC_MSG_NOTICE([virtport: $with_virtualport])
AC_MSG_NOTICE([])
-@@ -2648,6 +2682,11 @@ AC_MSG_NOTICE([ netcf: $NETCF_CFLAGS $
+@@ -2646,6 +2680,11 @@ AC_MSG_NOTICE([ netcf: $NETCF_CFLAGS $
else
AC_MSG_NOTICE([ netcf: no])
fi
@@ -69,11 +69,11 @@
if test "$with_qemu" = "yes" && test "$LIBPCAP_FOUND" != "no"; then
AC_MSG_NOTICE([ pcap: $LIBPCAP_CFLAGS $LIBPCAP_LIBS])
else
-Index: libvirt-0.9.6/daemon/Makefile.am
+Index: libvirt-0.9.7/daemon/Makefile.am
===================================================================
---- libvirt-0.9.6.orig/daemon/Makefile.am
-+++ libvirt-0.9.6/daemon/Makefile.am
-@@ -141,6 +141,10 @@ endif
+--- libvirt-0.9.7.orig/daemon/Makefile.am
++++ libvirt-0.9.7/daemon/Makefile.am
+@@ -143,6 +143,10 @@ endif
if WITH_NETCF
libvirtd_LDADD += ../src/libvirt_driver_interface.la
@@ -84,10 +84,10 @@
endif
if WITH_NODE_DEVICES
-Index: libvirt-0.9.6/daemon/libvirtd.c
+Index: libvirt-0.9.7/daemon/libvirtd.c
===================================================================
---- libvirt-0.9.6.orig/daemon/libvirtd.c
-+++ libvirt-0.9.6/daemon/libvirtd.c
+--- libvirt-0.9.7.orig/daemon/libvirtd.c
++++ libvirt-0.9.7/daemon/libvirtd.c
@@ -75,6 +75,10 @@
# endif
# ifdef WITH_NETCF
@@ -99,7 +99,7 @@
# endif
# ifdef WITH_STORAGE_DIR
# include "storage/storage_driver.h"
-@@ -393,6 +397,10 @@ static void daemonInitialize(void)
+@@ -389,6 +393,10 @@ static void daemonInitialize(void)
# endif
# ifdef WITH_NETCF
interfaceRegister();
@@ -110,11 +110,11 @@
# endif
# ifdef WITH_STORAGE_DIR
storageRegister();
-Index: libvirt-0.9.6/src/Makefile.am
+Index: libvirt-0.9.7/src/Makefile.am
===================================================================
---- libvirt-0.9.6.orig/src/Makefile.am
-+++ libvirt-0.9.6/src/Makefile.am
-@@ -923,6 +923,24 @@ libvirt_driver_interface_la_LIBADD += ..
+--- libvirt-0.9.7.orig/src/Makefile.am
++++ libvirt-0.9.7/src/Makefile.am
+@@ -941,6 +941,24 @@ libvirt_driver_interface_la_LIBADD += ..
libvirt_driver_interface_la_LDFLAGS += -module -avoid-version
endif
libvirt_driver_interface_la_SOURCES = $(INTERFACE_DRIVER_SOURCES)
@@ -139,10 +139,10 @@
endif
if WITH_SECRETS
-Index: libvirt-0.9.6/src/interface/netcf_driver.c
+Index: libvirt-0.9.7/src/interface/netcf_driver.c
===================================================================
---- libvirt-0.9.6.orig/src/interface/netcf_driver.c
-+++ libvirt-0.9.6/src/interface/netcf_driver.c
+--- libvirt-0.9.7.orig/src/interface/netcf_driver.c
++++ libvirt-0.9.7/src/interface/netcf_driver.c
@@ -23,7 +23,13 @@
#include
@@ -208,11 +208,11 @@
/* open netcf */
if (ncf_init(&driverState->netcf, NULL) != 0)
{
-Index: libvirt-0.9.6/tools/virsh.c
+Index: libvirt-0.9.7/tools/virsh.c
===================================================================
---- libvirt-0.9.6.orig/tools/virsh.c
-+++ libvirt-0.9.6/tools/virsh.c
-@@ -16011,6 +16011,10 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
+--- libvirt-0.9.7.orig/tools/virsh.c
++++ libvirt-0.9.7/tools/virsh.c
+@@ -16506,6 +16506,10 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
#endif
#ifdef WITH_NETCF
vshPrint(ctl, " Netcf");
++++++ use-init-script-redhat.patch ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -1,8 +1,8 @@
-Index: libvirt-0.9.4/tools/Makefile.am
+Index: libvirt-0.9.7/tools/Makefile.am
===================================================================
---- libvirt-0.9.4.orig/tools/Makefile.am
-+++ libvirt-0.9.4/tools/Makefile.am
-@@ -152,16 +152,17 @@ uninstall-local: uninstall-init
+--- libvirt-0.9.7.orig/tools/Makefile.am
++++ libvirt-0.9.7/tools/Makefile.am
+@@ -155,16 +155,17 @@ uninstall-local: uninstall-init
if LIBVIRT_INIT_SCRIPT_RED_HAT
install-init: libvirt-guests.init
@@ -26,10 +26,10 @@
BUILT_SOURCES += libvirt-guests.init
-Index: libvirt-0.9.4/tools/libvirt-guests.sysconf
+Index: libvirt-0.9.7/tools/libvirt-guests.sysconf
===================================================================
---- libvirt-0.9.4.orig/tools/libvirt-guests.sysconf
-+++ libvirt-0.9.4/tools/libvirt-guests.sysconf
+--- libvirt-0.9.7.orig/tools/libvirt-guests.sysconf
++++ libvirt-0.9.7/tools/libvirt-guests.sysconf
@@ -1,18 +1,28 @@
+## Path: System/Virtualization/libvirt
+
@@ -80,10 +80,10 @@
# If non-zero, try to bypass the file system cache when saving and
# restoring guests, even though this may give slower operation for
# some file systems.
-Index: libvirt-0.9.4/tools/libvirt-guests.init.sh
+Index: libvirt-0.9.7/tools/libvirt-guests.init.sh
===================================================================
---- libvirt-0.9.4.orig/tools/libvirt-guests.init.sh
-+++ libvirt-0.9.4/tools/libvirt-guests.init.sh
+--- libvirt-0.9.7.orig/tools/libvirt-guests.init.sh
++++ libvirt-0.9.7/tools/libvirt-guests.init.sh
@@ -4,10 +4,10 @@
#
### BEGIN INIT INFO
@@ -226,26 +226,30 @@
esac
-exit $RETVAL
+rc_exit
-Index: libvirt-0.9.4/daemon/Makefile.am
+Index: libvirt-0.9.7/daemon/Makefile.am
===================================================================
---- libvirt-0.9.4.orig/daemon/Makefile.am
-+++ libvirt-0.9.4/daemon/Makefile.am
-@@ -252,16 +252,12 @@ install-logrotate: $(LOGROTATE_CONFS)
+--- libvirt-0.9.7.orig/daemon/Makefile.am
++++ libvirt-0.9.7/daemon/Makefile.am
+@@ -236,20 +236,12 @@ install-logrotate: $(LOGROTATE_CONFS)
if LIBVIRT_INIT_SCRIPT_RED_HAT
install-init: libvirtd.init
-- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d
+- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d \
+- $(DESTDIR)$(sysconfdir)/sysconfig \
+- $(DESTDIR)$(sysconfdir)/sysctl.d
- $(INSTALL_SCRIPT) libvirtd.init \
- $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd
-- mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig
+ mkdir -p $(DESTDIR)$(localstatedir)/adm/fillup-templates
$(INSTALL_DATA) $(srcdir)/libvirtd.sysconf \
- $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
+- $(INSTALL_DATA) $(srcdir)/libvirtd.sysctl \
+- $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd
+ $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirtd
uninstall-init:
- rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd \
-- $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
+- $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd \
+- $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd
+ rm -f $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirtd
BUILT_SOURCES += libvirtd.init
++++++ xen-domctl-ver8.patch ++++++
Index: libvirt-0.9.7/src/xen/xen_hypervisor.c
===================================================================
--- libvirt-0.9.7.orig/src/xen/xen_hypervisor.c
+++ libvirt-0.9.7/src/xen/xen_hypervisor.c
@@ -242,12 +242,30 @@ struct xen_v2d7_getdomaininfo {
};
typedef struct xen_v2d7_getdomaininfo xen_v2d7_getdomaininfo;
+struct xen_v2d8_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 paged_pages ALIGN_64; /* number of paged 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;
+ uint32_t cpupool;
+};
+typedef struct xen_v2d8_getdomaininfo xen_v2d8_getdomaininfo;
+
union xen_getdomaininfo {
struct xen_v0_getdomaininfo v0;
struct xen_v2_getdomaininfo v2;
struct xen_v2d5_getdomaininfo v2d5;
struct xen_v2d6_getdomaininfo v2d6;
struct xen_v2d7_getdomaininfo v2d7;
+ struct xen_v2d8_getdomaininfo v2d8;
};
typedef union xen_getdomaininfo xen_getdomaininfo;
@@ -257,6 +275,7 @@ union xen_getdomaininfolist {
struct xen_v2d5_getdomaininfo *v2d5;
struct xen_v2d6_getdomaininfo *v2d6;
struct xen_v2d7_getdomaininfo *v2d7;
+ struct xen_v2d8_getdomaininfo *v2d8;
};
typedef union xen_getdomaininfolist xen_getdomaininfolist;
@@ -294,179 +313,211 @@ typedef struct xen_v2s5_availheap xen_v
#define XEN_GETDOMAININFOLIST_ALLOC(domlist, size) \
(hv_versions.hypervisor < 2 ? \
(VIR_ALLOC_N(domlist.v0, (size)) == 0) : \
+ (hv_versions.dom_interface >= 8 ? \
+ (VIR_ALLOC_N(domlist.v2d8, (size)) == 0) : \
(hv_versions.dom_interface >= 7 ? \
(VIR_ALLOC_N(domlist.v2d7, (size)) == 0) : \
(hv_versions.dom_interface == 6 ? \
(VIR_ALLOC_N(domlist.v2d6, (size)) == 0) : \
(hv_versions.dom_interface == 5 ? \
(VIR_ALLOC_N(domlist.v2d5, (size)) == 0) : \
- (VIR_ALLOC_N(domlist.v2, (size)) == 0)))))
+ (VIR_ALLOC_N(domlist.v2, (size)) == 0))))))
#define XEN_GETDOMAININFOLIST_FREE(domlist) \
(hv_versions.hypervisor < 2 ? \
VIR_FREE(domlist.v0) : \
+ (hv_versions.dom_interface >= 8 ? \
+ VIR_FREE(domlist.v2d8) : \
(hv_versions.dom_interface >= 7 ? \
VIR_FREE(domlist.v2d7) : \
(hv_versions.dom_interface == 6 ? \
VIR_FREE(domlist.v2d6) : \
(hv_versions.dom_interface == 5 ? \
VIR_FREE(domlist.v2d5) : \
- VIR_FREE(domlist.v2)))))
+ VIR_FREE(domlist.v2))))))
#define XEN_GETDOMAININFOLIST_CLEAR(domlist, size) \
(hv_versions.hypervisor < 2 ? \
memset(domlist.v0, 0, sizeof(*domlist.v0) * size) : \
+ (hv_versions.dom_interface >= 8 ? \
+ memset(domlist.v2d8, 0, sizeof(*domlist.v2d8) * size) : \
(hv_versions.dom_interface >= 7 ? \
memset(domlist.v2d7, 0, sizeof(*domlist.v2d7) * size) : \
(hv_versions.dom_interface == 6 ? \
memset(domlist.v2d6, 0, sizeof(*domlist.v2d6) * size) : \
(hv_versions.dom_interface == 5 ? \
memset(domlist.v2d5, 0, sizeof(*domlist.v2d5) * size) : \
- memset(domlist.v2, 0, sizeof(*domlist.v2) * size)))))
+ memset(domlist.v2, 0, sizeof(*domlist.v2) * size))))))
#define XEN_GETDOMAININFOLIST_DOMAIN(domlist, n) \
(hv_versions.hypervisor < 2 ? \
domlist.v0[n].domain : \
+ (hv_versions.dom_interface >= 8 ? \
+ domlist.v2d8[n].domain : \
(hv_versions.dom_interface >= 7 ? \
domlist.v2d7[n].domain : \
(hv_versions.dom_interface == 6 ? \
domlist.v2d6[n].domain : \
(hv_versions.dom_interface == 5 ? \
domlist.v2d5[n].domain : \
- domlist.v2[n].domain))))
+ domlist.v2[n].domain)))))
#define XEN_GETDOMAININFOLIST_UUID(domlist, n) \
(hv_versions.hypervisor < 2 ? \
domlist.v0[n].handle : \
+ (hv_versions.dom_interface >= 8 ? \
+ domlist.v2d8[n].handle : \
(hv_versions.dom_interface >= 7 ? \
domlist.v2d7[n].handle : \
(hv_versions.dom_interface == 6 ? \
domlist.v2d6[n].handle : \
(hv_versions.dom_interface == 5 ? \
domlist.v2d5[n].handle : \
- domlist.v2[n].handle))))
+ domlist.v2[n].handle)))))
#define XEN_GETDOMAININFOLIST_DATA(domlist) \
(hv_versions.hypervisor < 2 ? \
(void*)(domlist->v0) : \
+ (hv_versions.dom_interface >= 8 ? \
+ (void*)(domlist->v2d8) : \
(hv_versions.dom_interface >= 7 ? \
(void*)(domlist->v2d7) : \
(hv_versions.dom_interface == 6 ? \
(void*)(domlist->v2d6) : \
(hv_versions.dom_interface == 5 ? \
(void*)(domlist->v2d5) : \
- (void*)(domlist->v2)))))
+ (void*)(domlist->v2))))))
#define XEN_GETDOMAININFO_SIZE \
(hv_versions.hypervisor < 2 ? \
sizeof(xen_v0_getdomaininfo) : \
+ (hv_versions.dom_interface >= 8 ? \
+ sizeof(xen_v2d8_getdomaininfo) : \
(hv_versions.dom_interface >= 7 ? \
sizeof(xen_v2d7_getdomaininfo) : \
(hv_versions.dom_interface == 6 ? \
sizeof(xen_v2d6_getdomaininfo) : \
(hv_versions.dom_interface == 5 ? \
sizeof(xen_v2d5_getdomaininfo) : \
- sizeof(xen_v2_getdomaininfo)))))
+ sizeof(xen_v2_getdomaininfo))))))
#define XEN_GETDOMAININFO_CLEAR(dominfo) \
(hv_versions.hypervisor < 2 ? \
memset(&(dominfo.v0), 0, sizeof(xen_v0_getdomaininfo)) : \
+ (hv_versions.dom_interface >= 8 ? \
+ memset(&(dominfo.v2d8), 0, sizeof(xen_v2d8_getdomaininfo)) : \
(hv_versions.dom_interface >= 7 ? \
memset(&(dominfo.v2d7), 0, sizeof(xen_v2d7_getdomaininfo)) : \
(hv_versions.dom_interface == 6 ? \
memset(&(dominfo.v2d6), 0, sizeof(xen_v2d6_getdomaininfo)) : \
(hv_versions.dom_interface == 5 ? \
memset(&(dominfo.v2d5), 0, sizeof(xen_v2d5_getdomaininfo)) : \
- memset(&(dominfo.v2), 0, sizeof(xen_v2_getdomaininfo))))))
+ memset(&(dominfo.v2), 0, sizeof(xen_v2_getdomaininfo)))))))
#define XEN_GETDOMAININFO_DOMAIN(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.domain : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.domain : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.domain : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.domain : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.domain : \
- dominfo.v2.domain))))
+ dominfo.v2.domain)))))
#define XEN_GETDOMAININFO_CPUTIME(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.cpu_time : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.cpu_time : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.cpu_time : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.cpu_time : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.cpu_time : \
- dominfo.v2.cpu_time))))
+ dominfo.v2.cpu_time)))))
#define XEN_GETDOMAININFO_CPUCOUNT(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.nr_online_vcpus : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.nr_online_vcpus : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.nr_online_vcpus : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.nr_online_vcpus : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.nr_online_vcpus : \
- dominfo.v2.nr_online_vcpus))))
+ dominfo.v2.nr_online_vcpus)))))
#define XEN_GETDOMAININFO_MAXCPUID(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.max_vcpu_id : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.max_vcpu_id : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.max_vcpu_id : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.max_vcpu_id : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.max_vcpu_id : \
- dominfo.v2.max_vcpu_id))))
+ dominfo.v2.max_vcpu_id)))))
#define XEN_GETDOMAININFO_FLAGS(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.flags : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.flags : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.flags : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.flags : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.flags : \
- dominfo.v2.flags))))
+ dominfo.v2.flags)))))
#define XEN_GETDOMAININFO_TOT_PAGES(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.tot_pages : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.tot_pages : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.tot_pages : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.tot_pages : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.tot_pages : \
- dominfo.v2.tot_pages))))
+ dominfo.v2.tot_pages)))))
#define XEN_GETDOMAININFO_MAX_PAGES(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.max_pages : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.max_pages : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.max_pages : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.max_pages : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.max_pages : \
- dominfo.v2.max_pages))))
+ dominfo.v2.max_pages)))))
#define XEN_GETDOMAININFO_UUID(dominfo) \
(hv_versions.hypervisor < 2 ? \
dominfo.v0.handle : \
+ (hv_versions.dom_interface >= 8 ? \
+ dominfo.v2d8.handle : \
(hv_versions.dom_interface >= 7 ? \
dominfo.v2d7.handle : \
(hv_versions.dom_interface == 6 ? \
dominfo.v2d6.handle : \
(hv_versions.dom_interface == 5 ? \
dominfo.v2d5.handle : \
- dominfo.v2.handle))))
+ dominfo.v2.handle)))))
static int
@@ -2141,12 +2192,20 @@ xenHypervisorInit(struct xenHypervisorVe
/* Xen 4.1
* sysctl version 8 -> xen-unstable c/s 21118:28e5409e3fb3
* domctl version 7 -> xen-unstable c/s 21212:de94884a669c
+ * domctl version 8 -> xen-unstable c/s 23874:651aed73b39c
*/
hv_versions.sys_interface = 8; /* XEN_SYSCTL_INTERFACE_VERSION */
if (virXen_getdomaininfo(fd, 0, &info) == 1) {
hv_versions.dom_interface = 7; /* XEN_DOMCTL_INTERFACE_VERSION */
- VIR_DEBUG("Using hypervisor call v2, sys ver8 dom ver7\n");
- goto done;
+ if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
+ VIR_DEBUG("Using hypervisor call v2, sys ver8 dom ver7");
+ goto done;
+ }
+ hv_versions.dom_interface = 8; /* XEN_DOMCTL_INTERFACE_VERSION */
+ if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
+ VIR_DEBUG("Using hypervisor call v2, sys ver8 dom ver8");
+ goto done;
+ }
}
hv_versions.hypervisor = 1;
++++++ xen-name-for-devid.patch ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -13,10 +13,10 @@
This approach allows removing a disk when domain is inactive. We
obviously can't search xenstore when the domain is inactive.
-Index: libvirt-0.9.6/src/xen/xend_internal.c
+Index: libvirt-0.9.7/src/xen/xend_internal.c
===================================================================
---- libvirt-0.9.6.orig/src/xen/xend_internal.c
-+++ libvirt-0.9.6/src/xen/xend_internal.c
+--- libvirt-0.9.7.orig/src/xen/xend_internal.c
++++ libvirt-0.9.7/src/xen/xend_internal.c
@@ -60,6 +60,7 @@
static int
@@ -52,7 +52,7 @@
goto cleanup;
if (dev->type == VIR_DOMAIN_DEVICE_HOSTDEV) {
-@@ -3915,6 +3916,7 @@ struct xenUnifiedDriver xenDaemonDriver
+@@ -3913,6 +3914,7 @@ struct xenUnifiedDriver xenDaemonDriver
*/
static int
virDomainXMLDevID(virDomainPtr domain,
@@ -60,7 +60,7 @@
virDomainDeviceDefPtr dev,
char *class,
char *ref,
-@@ -3923,8 +3925,12 @@ virDomainXMLDevID(virDomainPtr domain,
+@@ -3921,8 +3923,12 @@ virDomainXMLDevID(virDomainPtr domain,
xenUnifiedPrivatePtr priv = domain->conn->privateData;
char *xref;
char *tmp;
@@ -73,7 +73,7 @@
if (dev->data.disk->driverName &&
STREQ(dev->data.disk->driverName, "tap"))
strcpy(class, "tap");
-@@ -3934,19 +3940,21 @@ virDomainXMLDevID(virDomainPtr domain,
+@@ -3932,19 +3938,21 @@ virDomainXMLDevID(virDomainPtr domain,
else
strcpy(class, "vbd");
++++++ xen-pv-cdrom.patch ++++++
--- /var/tmp/diff_new_pack.IMTg0R/_old 2011-11-29 17:15:56.000000000 +0100
+++ /var/tmp/diff_new_pack.IMTg0R/_new 2011-11-29 17:15:56.000000000 +0100
@@ -1,8 +1,8 @@
-Index: libvirt-0.9.1/src/xenxs/xen_sxpr.c
+Index: libvirt-0.9.7/src/xenxs/xen_sxpr.c
===================================================================
---- libvirt-0.9.1.orig/src/xenxs/xen_sxpr.c
-+++ libvirt-0.9.1/src/xenxs/xen_sxpr.c
-@@ -324,7 +324,7 @@ error:
+--- libvirt-0.9.7.orig/src/xenxs/xen_sxpr.c
++++ libvirt-0.9.7/src/xenxs/xen_sxpr.c
+@@ -329,7 +329,7 @@ error:
static int
xenParseSxprDisks(virDomainDefPtr def,
const struct sexpr *root,
@@ -11,7 +11,7 @@
int xendConfigVersion)
{
const struct sexpr *cur, *node;
-@@ -371,7 +371,6 @@ xenParseSxprDisks(virDomainDefPtr def,
+@@ -380,7 +380,6 @@ xenParseSxprDisks(virDomainDefPtr def,
/* There is a case without the uname to the CD-ROM device */
offset = strchr(dst, ':');
if (!offset ||
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org