commit libvirt for openSUSE:Factory
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 <jfehlig@suse.com> 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 <jfehlig@suse.com> 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 <tunables/global> @@ -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 <tunables/global> +@{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 <config.h> @@ -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
participants (1)
-
root@hilbert.suse.de