Hello community,
here is the log from the commit of package libvirt for openSUSE:Factory checked in at 2017-08-10 13:44:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libvirt (Old)
and /work/SRC/openSUSE:Factory/.libvirt.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libvirt"
Thu Aug 10 13:44:34 2017 rev:232 rq:514265 version:3.6.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libvirt/libvirt.changes 2017-07-11 08:35:00.133944617 +0200
+++ /work/SRC/openSUSE:Factory/.libvirt.new/libvirt.changes 2017-08-10 13:44:38.816375923 +0200
@@ -1,0 +2,46 @@
+Thu Aug 3 17:56:42 UTC 2017 - jfehlig@suse.com
+
+- Update to libvirt 3.6.0
+ - Many incremental improvements and bug fixes, see
+ http://libvirt.org/news.html
+- Fix unit tests on s390x and ppc64
+ 8982f3ab-util-hash-header.patch,
+ 0b1ecf7b-virHashCodeGen-mockable.patch.
+ f536b0dd-tests-arch-independent-hash.patch
+- Patch cleanup
+ - Renamed libvirtd-defaults.patch to
+ suse-libvirtd-disable-tls.patch
+ - Renamed libvirtd-init-script.patch to
+ suse-libvirtd-sysconfig-settings.patch
+ - Renamed virtlockd-init-script.patch to
+ suse-virtlockd-sysconfig-settings.patch
+ - Renamed virtlogd-init-script.patch to
+ suse-virtlogd-sysconfig-settings.patch
+ - Renamed libvirt-guests-init-script.patch to
+ suse-libvirt-guests-service.patch
+ - Combined suse-libvirtd-service.patch and
+ systemd-service-xen.patch to suse-libvirtd-service-xen.patch
+ since both patches add Xen support to libvirtd service file
+ - Pull OVMF-related changes from suse-qemu-conf.patch into a
+ new suse-ovmf-paths.patch
+
+-------------------------------------------------------------------
+Wed Jul 26 22:53:11 UTC 2017 - jfehlig@suse.com
+
+- Add a supportconfig plugin
+ libvirt-supportconfig
+ FATE#323661
+
+-------------------------------------------------------------------
+Wed Jul 26 15:49:21 UTC 2017 - jfehlig@suse.com
+
+- Remove Requires on bridge-utils
+ FATE#323639
+
+-------------------------------------------------------------------
+Fri Jul 21 07:47:46 UTC 2017 - dmueller@suse.com
+
+- drop dependency on xen for armv6hl (not supported and does not
+ build)
+
+-------------------------------------------------------------------
Old:
----
libvirt-3.5.0.tar.xz
libvirt-3.5.0.tar.xz.asc
libvirt-guests-init-script.patch
libvirtd-defaults.patch
libvirtd-init-script.patch
suse-libvirtd-service.patch
systemd-service-xen.patch
virtlockd-init-script.patch
virtlogd-init-script.patch
New:
----
0b1ecf7b-virHashCodeGen-mockable.patch
8982f3ab-util-hash-header.patch
f536b0dd-tests-arch-independent-hash.patch
libvirt-3.6.0.tar.xz
libvirt-3.6.0.tar.xz.asc
libvirt-supportconfig
suse-libvirt-guests-service.patch
suse-libvirtd-disable-tls.patch
suse-libvirtd-service-xen.patch
suse-libvirtd-sysconfig-settings.patch
suse-ovmf-paths.patch
suse-virtlockd-sysconfig-settings.patch
suse-virtlogd-sysconfig-settings.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libvirt.spec ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:42.699829232 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:42.719826417 +0200
@@ -57,8 +57,8 @@
# Set the OS / architecture specific special cases
-# Xen is available only on x86_64 and arm
-%ifnarch x86_64 %arm aarch64
+# Xen is available only on x86_64, armv7 and aarch64
+%ifnarch x86_64 armv7hl aarch64
%define with_xen 0
%define with_libxl 0
%endif
@@ -165,7 +165,7 @@
Name: libvirt
Url: http://libvirt.org/
-Version: 3.5.0
+Version: 3.6.0
Release: 0
Summary: Library providing a simple virtualization API
License: LGPL-2.1+
@@ -301,9 +301,13 @@
Source1: %{name}-%{version}.tar.xz.asc
Source2: %{name}.keyring
Source3: libvirtd-relocation-server.fw
+Source4: libvirt-supportconfig
Source99: baselibs.conf
Source100: %{name}-rpmlintrc
# Upstream patches
+Patch0: 8982f3ab-util-hash-header.patch
+Patch1: 0b1ecf7b-virHashCodeGen-mockable.patch
+Patch2: f536b0dd-tests-arch-independent-hash.patch
# Patches pending upstream review
Patch100: libxl-dom-reset.patch
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
@@ -316,22 +320,22 @@
Patch155: libxl-set-cach-mode.patch
Patch156: apparmor-fixes.patch
# Our patches
-Patch200: libvirtd-defaults.patch
-Patch201: libvirtd-init-script.patch
-Patch202: libvirt-guests-init-script.patch
-Patch203: virtlockd-init-script.patch
-Patch204: virtlogd-init-script.patch
-Patch205: suse-qemu-conf.patch
-Patch206: support-managed-pci-xen-driver.patch
-Patch207: systemd-service-xen.patch
-Patch208: xen-sxpr-disk-type.patch
-Patch209: libxl-support-block-script.patch
-Patch210: apparmor-no-mount.patch
-Patch211: qemu-apparmor-screenshot.patch
-Patch212: libvirt-suse-netcontrol.patch
-Patch213: lxc-wait-after-eth-del.patch
-Patch214: libxl-qemu-emulator-caps.patch
-Patch215: suse-libvirtd-service.patch
+Patch200: suse-libvirtd-disable-tls.patch
+Patch201: suse-libvirtd-sysconfig-settings.patch
+Patch202: suse-libvirt-guests-service.patch
+Patch203: suse-virtlockd-sysconfig-settings.patch
+Patch204: suse-virtlogd-sysconfig-settings.patch
+Patch205: suse-libvirtd-service-xen.patch
+Patch206: suse-qemu-conf.patch
+Patch207: suse-ovmf-paths.patch
+Patch208: support-managed-pci-xen-driver.patch
+Patch209: xen-sxpr-disk-type.patch
+Patch210: libxl-support-block-script.patch
+Patch211: apparmor-no-mount.patch
+Patch212: qemu-apparmor-screenshot.patch
+Patch213: libvirt-suse-netcontrol.patch
+Patch214: lxc-wait-after-eth-del.patch
+Patch215: libxl-qemu-emulator-caps.patch
# SLES-Only patches
%if %{with_sle_build}
Patch400: virt-create-rootfs.patch
@@ -367,7 +371,6 @@
# for modprobe of pci devices
Requires: modutils
# for /sbin/ip & /sbin/tc
-Requires: bridge-utils
Requires: iproute
Requires: logrotate
Requires: udev >= 145
@@ -870,6 +873,9 @@
%prep
%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
%patch100 -p1
%patch101 -p1
%patch150 -p1
@@ -1192,6 +1198,10 @@
mkdir -p %{buildroot}/%{_fwdefdir}
install -m 644 %{S:3} %{buildroot}/%{_fwdefdir}/libvirtd-relocation-server
+# install supportconfig plugin
+mkdir -p %{buildroot}/usr/lib/supportconfig/plugins
+install -m 755 %{S:4} %{buildroot}/usr/lib/supportconfig/plugins/libvirt
+
%ifarch %{power64} s390x x86_64
mv %{buildroot}/%{_datadir}/systemtap/tapset/libvirt_probes.stp \
%{buildroot}/%{_datadir}/systemtap/tapset/libvirt_probes-64.stp
@@ -1389,6 +1399,9 @@
%{_libdir}/%{name}/virt-aa-helper
%endif
%config %{_fwdefdir}/libvirtd-relocation-server
+%dir /usr/lib/supportconfig
+%dir /usr/lib/supportconfig/plugins
+/usr/lib/supportconfig/plugins/libvirt
%files daemon-config-network
%dir %{_datadir}/libvirt/networks/
++++++ 0b1ecf7b-virHashCodeGen-mockable.patch ++++++
commit 0b1ecf7b5342f8631d1b1cce8a7937bda511be98
Author: Peter Krempa
Date: Wed Aug 2 17:31:14 2017 +0200
util: hash: Make virHashCodeGen mockable
Export the function from the util module so that dynamic linking can
override it.
Index: libvirt-3.6.0/src/libvirt_private.syms
===================================================================
--- libvirt-3.6.0.orig/src/libvirt_private.syms
+++ libvirt-3.6.0/src/libvirt_private.syms
@@ -1776,6 +1776,10 @@ virHashUpdateEntry;
virHashValueFree;
+# util/virhashcode.h
+virHashCodeGen;
+
+
# util/virhook.h
virHookCall;
virHookInitialize;
Index: libvirt-3.6.0/src/util/virhashcode.h
===================================================================
--- libvirt-3.6.0.orig/src/util/virhashcode.h
+++ libvirt-3.6.0/src/util/virhashcode.h
@@ -30,6 +30,7 @@
# include "internal.h"
-uint32_t virHashCodeGen(const void *key, size_t len, uint32_t seed);
+uint32_t virHashCodeGen(const void *key, size_t len, uint32_t seed)
+ ATTRIBUTE_NOINLINE;
#endif /* __VIR_HASH_CODE_H__ */
++++++ 8982f3ab-util-hash-header.patch ++++++
commit 8982f3ab20194e23e34205c4165602a03ada8b56
Author: Peter Krempa
Date: Wed Aug 2 17:28:55 2017 +0200
util: hash: Include stdbool.h in the header file
The functions declared in virhash.h return bool, but stdbool.h was not
included.
Index: libvirt-3.6.0/src/util/virhash.h
===================================================================
--- libvirt-3.6.0.orig/src/util/virhash.h
+++ libvirt-3.6.0/src/util/virhash.h
@@ -14,6 +14,7 @@
# define __VIR_HASH_H__
# include
+# include
/*
* The hash table.
++++++ apparmor-fixes.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.199758855 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.207757729 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-3.5.0/examples/apparmor/libvirt-qemu
+Index: libvirt-3.6.0/examples/apparmor/libvirt-qemu
===================================================================
---- libvirt-3.5.0.orig/examples/apparmor/libvirt-qemu
-+++ libvirt-3.5.0/examples/apparmor/libvirt-qemu
+--- libvirt-3.6.0.orig/examples/apparmor/libvirt-qemu
++++ libvirt-3.6.0/examples/apparmor/libvirt-qemu
@@ -156,6 +156,9 @@
# for restore
/{usr/,}bin/bash rmix,
++++++ apparmor-no-mount.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.255750973 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.263749847 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-3.5.0/examples/apparmor/libvirt-lxc
+Index: libvirt-3.6.0/examples/apparmor/libvirt-lxc
===================================================================
---- libvirt-3.5.0.orig/examples/apparmor/libvirt-lxc
-+++ libvirt-3.5.0/examples/apparmor/libvirt-lxc
+--- libvirt-3.6.0.orig/examples/apparmor/libvirt-lxc
++++ libvirt-3.6.0/examples/apparmor/libvirt-lxc
@@ -2,39 +2,15 @@
#include
++++++ blockcopy-check-dst-identical-device.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.327740838 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.327740838 +0200
@@ -11,15 +11,14 @@
src/qemu/qemu_driver.c | 7 +++++++
1 file changed, 7 insertions(+)
-Index: libvirt-3.5.0/src/qemu/qemu_driver.c
+Index: libvirt-3.6.0/src/qemu/qemu_driver.c
===================================================================
---- libvirt-3.5.0.orig/src/qemu/qemu_driver.c
-+++ libvirt-3.5.0/src/qemu/qemu_driver.c
-@@ -16789,6 +16789,15 @@ qemuDomainBlockCopyCommon(virDomainObjPt
- _("non-file destination not supported yet"));
+--- libvirt-3.6.0.orig/src/qemu/qemu_driver.c
++++ libvirt-3.6.0/src/qemu/qemu_driver.c
+@@ -16836,6 +16836,14 @@ qemuDomainBlockCopyCommon(virDomainObjPt
goto endjob;
}
-+
+
+ if (STREQ_NULLABLE(realpath(disk->src->path, NULL),
+ realpath(mirror->path, NULL))) {
+ virReportError(VIR_ERR_INVALID_ARG,
@@ -28,6 +27,6 @@
+ goto endjob;
+ }
+
- if (stat(mirror->path, &st) < 0) {
- if (errno != ENOENT) {
- virReportSystemError(errno, _("unable to stat for disk %s: %s"),
+ if (qemuDomainStorageFileInit(driver, vm, mirror) < 0)
+ goto endjob;
+
++++++ f536b0dd-tests-arch-independent-hash.patch ++++++
commit f536b0dd7318c736c20ae646209671011d16c12c
Author: Peter Krempa
Date: Wed Aug 2 17:23:51 2017 +0200
tests: deterministichash: Make hash tables arch-independent
It turns out that our implementation of the hashing function is
endian-dependent and thus if used on various architectures the testsuite
may have different results. Work this around by mocking virHashCodeGen
to something which does not use bit operations instead of just setting a
deterministic seed.
Index: libvirt-3.6.0/tests/qemumonitorjsondata/qemumonitorjson-nodename-relative.result
===================================================================
--- libvirt-3.6.0.orig/tests/qemumonitorjsondata/qemumonitorjson-nodename-relative.result
+++ libvirt-3.6.0/tests/qemumonitorjsondata/qemumonitorjson-nodename-relative.result
@@ -1,15 +1,3 @@
-drive-ide0-0-1
-filename : '/var/lib/libvirt/images/relsnap.qcow2'
-format node : '#block1290'
-format drv : 'qcow2'
-storage node: '#block1107'
-storage drv : 'file'
- filename : '/var/lib/libvirt/images/base.qcow2'
- format node : '#block927'
- format drv : 'qcow2'
- storage node: '#block800'
- storage drv : 'file'
-
drive-ide0-0-0
filename : '/var/lib/libvirt/images/img3'
format node : '#block118'
@@ -31,3 +19,15 @@ storage drv : 'file'
format drv : 'qcow2'
storage node: '#block614'
storage drv : 'file'
+
+drive-ide0-0-1
+filename : '/var/lib/libvirt/images/relsnap.qcow2'
+format node : '#block1290'
+format drv : 'qcow2'
+storage node: '#block1107'
+storage drv : 'file'
+ filename : '/var/lib/libvirt/images/base.qcow2'
+ format node : '#block927'
+ format drv : 'qcow2'
+ storage node: '#block800'
+ storage drv : 'file'
Index: libvirt-3.6.0/tests/qemumonitorjsondata/qemumonitorjson-nodename-same-backing.result
===================================================================
--- libvirt-3.6.0.orig/tests/qemumonitorjsondata/qemumonitorjson-nodename-same-backing.result
+++ libvirt-3.6.0/tests/qemumonitorjsondata/qemumonitorjson-nodename-same-backing.result
@@ -1,15 +1,3 @@
-drive-sata0-0-1
-filename : '/var/lib/libvirt/images/b.qcow2'
-format node : '#block548'
-format drv : 'qcow2'
-storage node: '#block487'
-storage drv : 'file'
- filename : '/var/lib/libvirt/images/base.qcow2'
- format node : '#block771'
- format drv : 'qcow2'
- storage node: '#block692'
- storage drv : 'file'
-
drive-sata0-0-0
filename : '/var/lib/libvirt/images/a.qcow2'
format node : '#block132'
@@ -21,3 +9,15 @@ storage drv : 'file'
format drv : 'qcow2'
storage node: '#block224'
storage drv : 'file'
+
+drive-sata0-0-1
+filename : '/var/lib/libvirt/images/b.qcow2'
+format node : '#block548'
+format drv : 'qcow2'
+storage node: '#block487'
+storage drv : 'file'
+ filename : '/var/lib/libvirt/images/base.qcow2'
+ format node : '#block771'
+ format drv : 'qcow2'
+ storage node: '#block692'
+ storage drv : 'file'
Index: libvirt-3.6.0/tests/virdeterministichashmock.c
===================================================================
--- libvirt-3.6.0.orig/tests/virdeterministichashmock.c
+++ libvirt-3.6.0/tests/virdeterministichashmock.c
@@ -20,10 +20,19 @@
#include
-#include "virrandom.h"
+#include "util/virhashcode.h"
-uint64_t virRandomBits(int nbits ATTRIBUTE_UNUSED)
+uint32_t
+virHashCodeGen(const void *key,
+ size_t len,
+ uint32_t seed ATTRIBUTE_UNUSED)
{
- return 4; /* chosen by fair dice roll.
- guaranteed to be random. */
+ const uint8_t *k = key;
+ uint32_t h = 0;
+ size_t i;
+
+ for (i = 0; i < len; i++)
+ h += k[i];
+
+ return h;
}
Index: libvirt-3.6.0/tests/virmacmaptestdata/simple2.json
===================================================================
--- libvirt-3.6.0.orig/tests/virmacmaptestdata/simple2.json
+++ libvirt-3.6.0/tests/virmacmaptestdata/simple2.json
@@ -1,16 +1,16 @@
[
{
- "domain": "f25",
+ "domain": "f24",
"macs": [
- "00:11:22:33:44:55",
- "aa:bb:cc:00:11:22"
+ "aa:bb:cc:dd:ee:ff",
+ "a1:b2:c3:d4:e5:f6"
]
},
{
- "domain": "f24",
+ "domain": "f25",
"macs": [
- "aa:bb:cc:dd:ee:ff",
- "a1:b2:c3:d4:e5:f6"
+ "00:11:22:33:44:55",
+ "aa:bb:cc:00:11:22"
]
}
]
++++++ libvirt-3.5.0.tar.xz -> libvirt-3.6.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/libvirt/libvirt-3.5.0.tar.xz /work/SRC/openSUSE:Factory/.libvirt.new/libvirt-3.6.0.tar.xz differ: char 15, line 1
++++++ libvirt-power8-models.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.523713250 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.527712687 +0200
@@ -2,10 +2,10 @@
From:
-Index: libvirt-3.5.0/src/cpu/cpu_map.xml
+Index: libvirt-3.6.0/src/cpu/cpu_map.xml
===================================================================
---- libvirt-3.5.0.orig/src/cpu/cpu_map.xml
-+++ libvirt-3.5.0/src/cpu/cpu_map.xml
+--- libvirt-3.6.0.orig/src/cpu/cpu_map.xml
++++ libvirt-3.6.0/src/cpu/cpu_map.xml
@@ -1569,6 +1569,8 @@
<pvr value='0x004b0000' mask='0xffff0000'/>
<pvr value='0x004c0000' mask='0xffff0000'/>
++++++ libvirt-supportconfig ++++++
#!/bin/bash
#############################################################
# Name: Supportconfig Plugin for libvirt
# Description: Gathers important troubleshooting information
# about libvirt
# Author: Jim Fehlig
#############################################################
RCFILE="/usr/lib/supportconfig/resources/scplugin.rc"
LIBVIRTD_CONF_FILES="/etc/libvirt/libvirtd.conf /etc/libvirt/virtlockd.conf /etc/libvirt/virtlogd.conf"
VM_CONF_FILES=""
LIBVIRTD_LOG_FILES="$(find -L /var/log/libvirt/ -name libvirtd.log -type f | sort)"
if [ -s $RCFILE ]; then
if ! source $RCFILE; then
echo "ERROR: Initializing resource file: $RCFILE" >&2
exit 1
fi
fi
rpm_installed() {
thisrpm="$1"
if rpm -q "$thisrpm" >/dev/null 2>&1; then
return 0
fi
return 1
}
rpm_verify() {
thisrpm="$1"
local ret=0
echo
echo "#==[ Validating RPM ]=================================#"
if rpm -q "$thisrpm" >/dev/null 2>&1; then
echo "# rpm -V $thisrpm"
if rpm -V "$thisrpm"; then
echo "Status: Passed"
else
echo "Status: WARNING"
fi
else
echo "package $thisrpm is not installed"
ret=1
fi
echo
return $ret
}
if rpm_installed libvirt-daemon-xen; then
LIBVIRTD_CONF_FILES="$LIBVIRTD_CONF_FILES /etc/libvirt/libxl.conf /etc/libvirt/libxl-lockd.conf /etc/libvirt/libxl-sanlock.conf"
test -d /etc/libvirt/libxl && VM_CONF_FILES="$VM_CONF_FILES $(find -L /etc/libvirt/libxl/ -type f | sort)"
test -d /var/log/libvirt/libxl && LIBVIRTD_LOG_FILES="$LIBVIRTD_LOG_FILES $(find -L /var/log/libvirt/libxl/ -type f | grep 'log$' | sort)"
fi
if rpm_installed libvirt-daemon-qemu; then
LIBVIRTD_CONF_FILES="$LIBVIRTD_CONF_FILES /etc/libvirt/qemu.conf /etc/libvirt/qemu-lockd.conf /etc/libvirt/qemu-sanlock.conf"
test -d /etc/libvirt/qemu && VM_CONF_FILES="$VM_CONF_FILES $(find -L /etc/libvirt/qemu/ -type f | sort)"
test -d /var/log/libvirt/qemu && LIBVIRTD_LOG_FILES="$LIBVIRTD_LOG_FILES $(find -L /var/log/libvirt/qemu/ -type f | grep 'log$' | sort)"
fi
if rpm_installed libvirt-daemon-lxc; then
LIBVIRTD_CONF_FILES="$LIBVIRTD_CONF_FILES /etc/libvirt/lxc.conf"
test -d /etc/libvirt/lxc && VM_CONF_FILES="$VM_CONF_FILES $(find -L /etc/libvirt/lxc/ -type f | sort)"
test -d /var/log/libvirt/lxc && LIBVIRTD_LOG_FILES="$LIBVIRTD_LOG_FILES $(find -L /var/log/libvirt/lxc/ -type f | grep 'log$' | sort)"
fi
if rpm_installed libvirt-admin; then
LIBVIRTD_CONF_FILES="$LIBVIRTD_CONF_FILES /etc/libvirt/libvirt-admin.conf"
fi
if ! rpm_verify libvirt-daemon; then
echo "Skipped"
exit 0
fi
if systemctl is-enabled libvirtd.service 2>&1 > /dev/null; then
plugin_command "virsh version"
plugin_command "virsh capabilities"
plugin_command "virsh domcapabilities"
plugin_command "virsh nodeinfo"
plugin_command "virsh nodedev-list"
# print all known domains on default URI
plugin_command "virsh list --all"
echo
# dump configuration info of active domains on default URI
for DOM in $(virsh list --name)
do
plugin_command "virsh dumpxml $DOM"
plugin_command "virsh vcpuinfo $DOM"
plugin_command "virsh dominfo $DOM"
plugin_command "virsh domjobinfo $DOM"
plugin_command "virsh dommemstat $DOM"
plugin_command "virsh snapshot-list $DOM"
echo
done
# dump configuration info of inactive domains od default URI
for DOM in $(virsh list --name --inactive)
do
plugin_command "virsh dumpxml $DOM"
plugin_command "virsh snapshot-list $DOM"
echo
done
# for LXC domains we have to explicitly specify the URI
if rpm_installed libvirt-daemon-lxc; then
for DOM in $(virsh -c lxc:/// list --name --all); do
plugin_command "virsh -c lxc:/// dumpxml $DOM"
plugin_command "virsh -c lxc:/// dominfo $DOM"
echo
done
fi
fi
# dump libvirtd-related conf files
pconf_files "$LIBVIRTD_CONF_FILES"
# dump VM-related conf files
pconf_files "$VM_CONF_FILES"
# dump hook conf files
test -d /etc/libvirt/hooks && FILES="$(find -L /etc/libvirt/hooks/ -type f | sort)"
pconf_files "$FILES"
# dump all log files
plog_files 0 "$LIBVIRTD_LOG_FILES"
echo "Done"
++++++ libvirt-suse-netcontrol.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.731683974 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.739682847 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-3.5.0/configure.ac
+Index: libvirt-3.6.0/configure.ac
===================================================================
---- libvirt-3.5.0.orig/configure.ac
-+++ libvirt-3.5.0/configure.ac
+--- libvirt-3.6.0.orig/configure.ac
++++ libvirt-3.6.0/configure.ac
@@ -256,6 +256,7 @@ LIBVIRT_ARG_LIBSSH
LIBVIRT_ARG_LIBXML
LIBVIRT_ARG_MACVTAP
@@ -26,11 +26,11 @@
LIBVIRT_RESULT_NSS
LIBVIRT_RESULT_NUMACTL
LIBVIRT_RESULT_OPENWSMAN
-Index: libvirt-3.5.0/src/Makefile.am
+Index: libvirt-3.6.0/src/Makefile.am
===================================================================
---- libvirt-3.5.0.orig/src/Makefile.am
-+++ libvirt-3.5.0/src/Makefile.am
-@@ -1035,6 +1035,10 @@ if WITH_NETCF
+--- libvirt-3.6.0.orig/src/Makefile.am
++++ libvirt-3.6.0/src/Makefile.am
+@@ -1036,6 +1036,10 @@ if WITH_NETCF
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_netcf.c
endif WITH_NETCF
@@ -41,7 +41,7 @@
if WITH_UDEV
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_udev.c
-@@ -1703,6 +1707,10 @@ if WITH_NETCF
+@@ -1648,6 +1652,10 @@ if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
endif WITH_NETCF
@@ -52,10 +52,10 @@
if WITH_UDEV
libvirt_driver_interface_la_CFLAGS += $(UDEV_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(UDEV_LIBS)
-Index: libvirt-3.5.0/tools/virsh.c
+Index: libvirt-3.6.0/tools/virsh.c
===================================================================
---- libvirt-3.5.0.orig/tools/virsh.c
-+++ libvirt-3.5.0/tools/virsh.c
+--- libvirt-3.6.0.orig/tools/virsh.c
++++ libvirt-3.6.0/tools/virsh.c
@@ -570,6 +570,8 @@ virshShowVersion(vshControl *ctl ATTRIBU
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
@@ -65,10 +65,10 @@
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
-Index: libvirt-3.5.0/src/interface/interface_backend_netcf.c
+Index: libvirt-3.6.0/src/interface/interface_backend_netcf.c
===================================================================
---- libvirt-3.5.0.orig/src/interface/interface_backend_netcf.c
-+++ libvirt-3.5.0/src/interface/interface_backend_netcf.c
+--- libvirt-3.6.0.orig/src/interface/interface_backend_netcf.c
++++ libvirt-3.6.0/src/interface/interface_backend_netcf.c
@@ -23,7 +23,12 @@
#include
@@ -152,10 +152,10 @@
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
return -1;
if (virRegisterStateDriver(&interfaceStateDriver) < 0)
-Index: libvirt-3.5.0/src/interface/interface_driver.c
+Index: libvirt-3.6.0/src/interface/interface_driver.c
===================================================================
---- libvirt-3.5.0.orig/src/interface/interface_driver.c
-+++ libvirt-3.5.0/src/interface/interface_driver.c
+--- libvirt-3.6.0.orig/src/interface/interface_driver.c
++++ libvirt-3.6.0/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@@ -173,10 +173,10 @@
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
-Index: libvirt-3.5.0/m4/virt-netcontrol.m4
+Index: libvirt-3.6.0/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
-+++ libvirt-3.5.0/m4/virt-netcontrol.m4
++++ libvirt-3.6.0/m4/virt-netcontrol.m4
@@ -0,0 +1,39 @@
+dnl The libnetcontrol library
+dnl
++++++ libxl-dom-reset.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.859665956 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.859665956 +0200
@@ -8,10 +8,10 @@
option, but domainReset can be implemented in the libxl driver by
forcibly destroying the domain and starting it again.
-Index: libvirt-3.5.0/src/libxl/libxl_driver.c
+Index: libvirt-3.6.0/src/libxl/libxl_driver.c
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_driver.c
-+++ libvirt-3.5.0/src/libxl/libxl_driver.c
+--- libvirt-3.6.0.orig/src/libxl/libxl_driver.c
++++ libvirt-3.6.0/src/libxl/libxl_driver.c
@@ -1381,6 +1381,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
}
++++++ libxl-qemu-emulator-caps.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.867664831 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.887662016 +0200
@@ -8,10 +8,10 @@
See FATE#320638 for details.
-Index: libvirt-3.5.0/src/libxl/libxl_capabilities.c
+Index: libvirt-3.6.0/src/libxl/libxl_capabilities.c
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_capabilities.c
-+++ libvirt-3.5.0/src/libxl/libxl_capabilities.c
+--- libvirt-3.6.0.orig/src/libxl/libxl_capabilities.c
++++ libvirt-3.6.0/src/libxl/libxl_capabilities.c
@@ -38,6 +38,7 @@
#include "libxl_capabilities.h"
#include "cpu/cpu_x86.h"
++++++ libxl-set-cach-mode.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.903659763 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.919657511 +0200
@@ -3,11 +3,11 @@
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
-Index: libvirt-3.5.0/src/libxl/libxl_conf.c
+Index: libvirt-3.6.0/src/libxl/libxl_conf.c
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_conf.c
-+++ libvirt-3.5.0/src/libxl/libxl_conf.c
-@@ -645,6 +645,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
+--- libvirt-3.6.0.orig/src/libxl/libxl_conf.c
++++ libvirt-3.6.0/src/libxl/libxl_conf.c
+@@ -646,6 +646,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}
@@ -38,7 +38,7 @@
static char *
libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
const char *username,
-@@ -892,6 +916,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
+@@ -893,6 +917,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
return -1;
++++++ libxl-set-migration-constraints.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.943654134 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.947653570 +0200
@@ -16,10 +16,10 @@
tools/virsh.pod | 8 ++++++++
6 files changed, 125 insertions(+), 6 deletions(-)
-Index: libvirt-3.5.0/include/libvirt/libvirt-domain.h
+Index: libvirt-3.6.0/include/libvirt/libvirt-domain.h
===================================================================
---- libvirt-3.5.0.orig/include/libvirt/libvirt-domain.h
-+++ libvirt-3.5.0/include/libvirt/libvirt-domain.h
+--- libvirt-3.6.0.orig/include/libvirt/libvirt-domain.h
++++ libvirt-3.6.0/include/libvirt/libvirt-domain.h
@@ -1008,6 +1008,31 @@ typedef enum {
*/
# define VIR_MIGRATE_PARAM_AUTO_CONVERGE_INCREMENT "auto_converge.increment"
@@ -52,10 +52,10 @@
/* Domain migration. */
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
unsigned long flags, const char *dname,
-Index: libvirt-3.5.0/src/libxl/libxl_driver.c
+Index: libvirt-3.6.0/src/libxl/libxl_driver.c
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_driver.c
-+++ libvirt-3.5.0/src/libxl/libxl_driver.c
+--- libvirt-3.6.0.orig/src/libxl/libxl_driver.c
++++ libvirt-3.6.0/src/libxl/libxl_driver.c
@@ -6105,6 +6105,9 @@ libxlDomainMigratePerform3Params(virDoma
const char *dname = NULL;
const char *uri = NULL;
@@ -99,10 +99,10 @@
goto cleanup;
}
-Index: libvirt-3.5.0/src/libxl/libxl_migration.c
+Index: libvirt-3.6.0/src/libxl/libxl_migration.c
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_migration.c
-+++ libvirt-3.5.0/src/libxl/libxl_migration.c
+--- libvirt-3.6.0.orig/src/libxl/libxl_migration.c
++++ libvirt-3.6.0/src/libxl/libxl_migration.c
@@ -359,18 +359,39 @@ libxlMigrateReceive(virNetSocketPtr sock
static int
libxlDoMigrateSend(libxlDriverPrivatePtr driver,
@@ -263,10 +263,10 @@
virObjectLock(vm);
cleanup:
-Index: libvirt-3.5.0/src/libxl/libxl_migration.h
+Index: libvirt-3.6.0/src/libxl/libxl_migration.h
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_migration.h
-+++ libvirt-3.5.0/src/libxl/libxl_migration.h
+--- libvirt-3.6.0.orig/src/libxl/libxl_migration.h
++++ libvirt-3.6.0/src/libxl/libxl_migration.h
@@ -39,6 +39,10 @@
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
@@ -311,10 +311,10 @@
virDomainPtr
libxlDomainMigrationFinish(virConnectPtr dconn,
-Index: libvirt-3.5.0/tools/virsh-domain.c
+Index: libvirt-3.6.0/tools/virsh-domain.c
===================================================================
---- libvirt-3.5.0.orig/tools/virsh-domain.c
-+++ libvirt-3.5.0/tools/virsh-domain.c
+--- libvirt-3.6.0.orig/tools/virsh-domain.c
++++ libvirt-3.6.0/tools/virsh-domain.c
@@ -10246,6 +10246,22 @@ static const vshCmdOptDef opts_migrate[]
.type = VSH_OT_BOOL,
.help = N_("use TLS for migration")
@@ -374,10 +374,10 @@
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
goto out;
if (opt) {
-Index: libvirt-3.5.0/tools/virsh.pod
+Index: libvirt-3.6.0/tools/virsh.pod
===================================================================
---- libvirt-3.5.0.orig/tools/virsh.pod
-+++ libvirt-3.5.0/tools/virsh.pod
+--- libvirt-3.6.0.orig/tools/virsh.pod
++++ libvirt-3.6.0/tools/virsh.pod
@@ -1771,6 +1771,14 @@ Providing I<--tls> causes the migration
the migration of the domain. Usage requires proper TLS setup for both source
and target.
++++++ libxl-support-block-script.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.971650192 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:43.971650192 +0200
@@ -7,11 +7,11 @@
For more details, see bsc#954872 and FATE#319810
-Index: libvirt-3.5.0/src/libxl/libxl_conf.c
+Index: libvirt-3.6.0/src/libxl/libxl_conf.c
===================================================================
---- libvirt-3.5.0.orig/src/libxl/libxl_conf.c
-+++ libvirt-3.5.0/src/libxl/libxl_conf.c
-@@ -645,6 +645,25 @@ libxlDiskSetDiscard(libxl_device_disk *x
+--- libvirt-3.6.0.orig/src/libxl/libxl_conf.c
++++ libvirt-3.6.0/src/libxl/libxl_conf.c
+@@ -646,6 +646,25 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}
@@ -37,7 +37,7 @@
static void
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
{
-@@ -789,6 +808,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
+@@ -790,6 +809,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
int
libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk *x_disk)
{
@@ -45,7 +45,7 @@
const char *driver = virDomainDiskGetDriver(l_disk);
int format = virDomainDiskGetFormat(l_disk);
int actual_type = virStorageSourceGetActualType(l_disk->src);
-@@ -804,7 +824,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
+@@ -805,7 +825,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
return -1;
} else {
@@ -54,7 +54,7 @@
return -1;
}
-@@ -917,6 +937,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
+@@ -918,6 +938,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
return -1;
libxlDiskSetCacheMode(x_disk, l_disk->cachemode);
++++++ lxc-wait-after-eth-del.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:43.995646814 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.031641747 +0200
@@ -13,10 +13,10 @@
src/lxc/lxc_process.c | 1 +
3 files changed, 4 insertions(+)
-Index: libvirt-3.5.0/src/lxc/lxc_controller.c
+Index: libvirt-3.6.0/src/lxc/lxc_controller.c
===================================================================
---- libvirt-3.5.0.orig/src/lxc/lxc_controller.c
-+++ libvirt-3.5.0/src/lxc/lxc_controller.c
+--- libvirt-3.6.0.orig/src/lxc/lxc_controller.c
++++ libvirt-3.6.0/src/lxc/lxc_controller.c
@@ -73,6 +73,7 @@
#include "rpc/virnetdaemon.h"
#include "virstring.h"
@@ -33,10 +33,10 @@
return ret;
}
-Index: libvirt-3.5.0/src/lxc/lxc_driver.c
+Index: libvirt-3.6.0/src/lxc/lxc_driver.c
===================================================================
---- libvirt-3.5.0.orig/src/lxc/lxc_driver.c
-+++ libvirt-3.5.0/src/lxc/lxc_driver.c
+--- libvirt-3.6.0.orig/src/lxc/lxc_driver.c
++++ libvirt-3.6.0/src/lxc/lxc_driver.c
@@ -76,6 +76,7 @@
#include "virtime.h"
#include "virtypedparam.h"
@@ -45,7 +45,7 @@
#include "virstring.h"
#include "viraccessapicheck.h"
#include "viraccessapichecklxc.h"
-@@ -4025,6 +4026,7 @@ lxcDomainAttachDeviceNetLive(virConnectP
+@@ -4023,6 +4024,7 @@ lxcDomainAttachDeviceNetLive(virConnectP
case VIR_DOMAIN_NET_TYPE_NETWORK:
case VIR_DOMAIN_NET_TYPE_ETHERNET:
ignore_value(virNetDevVethDelete(veth));
@@ -53,7 +53,7 @@
break;
case VIR_DOMAIN_NET_TYPE_DIRECT:
-@@ -4459,6 +4461,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
+@@ -4457,6 +4459,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
virDomainAuditNet(vm, detach, NULL, "detach", false);
goto cleanup;
}
@@ -61,10 +61,10 @@
break;
/* It'd be nice to support this, but with macvlan
-Index: libvirt-3.5.0/src/lxc/lxc_process.c
+Index: libvirt-3.6.0/src/lxc/lxc_process.c
===================================================================
---- libvirt-3.5.0.orig/src/lxc/lxc_process.c
-+++ libvirt-3.5.0/src/lxc/lxc_process.c
+--- libvirt-3.6.0.orig/src/lxc/lxc_process.c
++++ libvirt-3.6.0/src/lxc/lxc_process.c
@@ -52,6 +52,7 @@
#include "viratomic.h"
#include "virprocess.h"
++++++ network-don-t-use-dhcp-authoritative-on-static-netwo.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.059637806 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.063637243 +0200
@@ -17,11 +17,11 @@
tests/networkxml2confdata/dhcp6host-routed-network.conf | 1 -
2 files changed, 8 insertions(+), 2 deletions(-)
-Index: libvirt-3.5.0/src/network/bridge_driver.c
+Index: libvirt-3.6.0/src/network/bridge_driver.c
===================================================================
---- libvirt-3.5.0.orig/src/network/bridge_driver.c
-+++ libvirt-3.5.0/src/network/bridge_driver.c
-@@ -1409,7 +1409,14 @@ networkDnsmasqConfContents(virNetworkObj
+--- libvirt-3.6.0.orig/src/network/bridge_driver.c
++++ libvirt-3.6.0/src/network/bridge_driver.c
+@@ -1454,7 +1454,14 @@ networkDnsmasqConfContents(virNetworkObj
if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) {
if (ipdef->nranges || ipdef->nhosts) {
virBufferAddLit(&configbuf, "dhcp-no-override\n");
@@ -37,10 +37,10 @@
}
if (ipdef->tftproot) {
-Index: libvirt-3.5.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
+Index: libvirt-3.6.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
===================================================================
---- libvirt-3.5.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
-+++ libvirt-3.5.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
+--- libvirt-3.6.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
++++ libvirt-3.6.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
@@ -10,7 +10,6 @@ bind-dynamic
interface=virbr1
dhcp-range=192.168.122.1,static
++++++ ppc64le-canonical-name.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.079634991 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.087633864 +0200
@@ -2,10 +2,10 @@
See bnc#894956
-Index: libvirt-3.5.0/src/util/virarch.c
+Index: libvirt-3.6.0/src/util/virarch.c
===================================================================
---- libvirt-3.5.0.orig/src/util/virarch.c
-+++ libvirt-3.5.0/src/util/virarch.c
+--- libvirt-3.6.0.orig/src/util/virarch.c
++++ libvirt-3.6.0/src/util/virarch.c
@@ -169,6 +169,8 @@ virArch virArchFromHost(void)
arch = VIR_ARCH_I686;
} else if (STREQ(ut.machine, "amd64")) {
++++++ qemu-apparmor-screenshot.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.135627109 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.135627109 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-3.5.0/examples/apparmor/libvirt-qemu
+Index: libvirt-3.6.0/examples/apparmor/libvirt-qemu
===================================================================
---- libvirt-3.5.0.orig/examples/apparmor/libvirt-qemu
-+++ libvirt-3.5.0/examples/apparmor/libvirt-qemu
+--- libvirt-3.6.0.orig/examples/apparmor/libvirt-qemu
++++ libvirt-3.6.0/examples/apparmor/libvirt-qemu
@@ -172,3 +172,6 @@
@{PROC}/device-tree/ r,
@{PROC}/device-tree/** r,
++++++ support-managed-pci-xen-driver.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.179620915 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.179620915 +0200
@@ -8,10 +8,10 @@
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 15 deletions(-)
-Index: libvirt-3.5.0/src/xenconfig/xen_common.c
+Index: libvirt-3.6.0/src/xenconfig/xen_common.c
===================================================================
---- libvirt-3.5.0.orig/src/xenconfig/xen_common.c
-+++ libvirt-3.5.0/src/xenconfig/xen_common.c
+--- libvirt-3.6.0.orig/src/xenconfig/xen_common.c
++++ libvirt-3.6.0/src/xenconfig/xen_common.c
@@ -394,6 +394,8 @@ xenParsePCI(virConfPtr conf, virDomainDe
{
virConfValuePtr list = virConfGetValue(conf, "pci");
@@ -58,7 +58,7 @@
+ goto skippci;
+ }
+
- if (!(hostdev = virDomainHostdevDefAlloc(NULL)))
+ if (!(hostdev = virDomainHostdevDefNew(NULL)))
return -1;
- hostdev->managed = false;
@@ -66,10 +66,10 @@
hostdev->source.subsys.type = VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
hostdev->source.subsys.u.pci.addr.domain = domainID;
hostdev->source.subsys.u.pci.addr.bus = busID;
-Index: libvirt-3.5.0/src/xenconfig/xen_sxpr.c
+Index: libvirt-3.6.0/src/xenconfig/xen_sxpr.c
===================================================================
---- libvirt-3.5.0.orig/src/xenconfig/xen_sxpr.c
-+++ libvirt-3.5.0/src/xenconfig/xen_sxpr.c
+--- libvirt-3.6.0.orig/src/xenconfig/xen_sxpr.c
++++ libvirt-3.6.0/src/xenconfig/xen_sxpr.c
@@ -1062,6 +1062,7 @@ xenParseSxprPCI(virDomainDefPtr def,
int busID;
int slotID;
@@ -84,7 +84,7 @@
+ managed = sexpr_int(node, "dev/opts/managed");
+
- if (!(dev = virDomainHostdevDefAlloc(NULL)))
+ if (!(dev = virDomainHostdevDefNew(NULL)))
goto error;
dev->mode = VIR_DOMAIN_HOSTDEV_MODE_SUBSYS;
++++++ suse-libvirt-guests-service.patch ++++++
Adjust libvirt-guests service to conform to SUSE standards
Index: libvirt-3.6.0/tools/libvirt-guests.init.in
===================================================================
--- libvirt-3.6.0.orig/tools/libvirt-guests.init.in
+++ libvirt-3.6.0/tools/libvirt-guests.init.in
@@ -4,27 +4,27 @@
# http://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-gene...
#
### BEGIN INIT INFO
-# Provides: libvirt-guests
-# Default-Start: 3 4 5
-# Default-Stop: 0 1 2 6
-# Required-Start: libvirtd
-# Required-Stop: libvirtd
+# Provides: libvirt-guests
+# Required-Start: $network $remote_fs libvirtd
+# Required-Stop: $network $remote_fs libvirtd
+# Default-Start: 3 5
+# Default-Stop: 0 1 2 4 6
# Should-Start:
# Should-Stop:
# Short-Description: suspend/resume libvirt guests on shutdown/boot
-# Description: This is a script for suspending active libvirt guests
-# on shutdown and resuming them on next boot
-# See http://libvirt.org
+# Description: This is a script for suspending active libvirt guests
+# on shutdown and resuming them on next boot
+# See http://libvirt.org
### END INIT INFO
# the following is chkconfig init header
#
-# libvirt-guests: suspend/resume libvirt guests on shutdown/boot
+# libvirt-guests: suspend/resume libvirt guests on shutdown/boot
#
-# chkconfig: 345 99 01
-# description: This is a script for suspending active libvirt guests \
-# on shutdown and resuming them on next boot \
-# See http://libvirt.org
+# chkconfig: 345 99 01
+# description: This is a script for suspending active libvirt guests \
+# on shutdown and resuming them on next boot \
+# See http://libvirt.org
#
exec @libexecdir@/libvirt-guests.sh "$@"
Index: libvirt-3.6.0/tools/libvirt-guests.sh.in
===================================================================
--- libvirt-3.6.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-3.6.0/tools/libvirt-guests.sh.in
@@ -16,14 +16,13 @@
# License along with this library. If not, see
# http://www.gnu.org/licenses/.
+. /etc/rc.status
+rc_reset
+
sysconfdir="@sysconfdir@"
localstatedir="@localstatedir@"
libvirtd="@sbindir@"/libvirtd
-# Source function library.
-test ! -r "$sysconfdir"/rc.d/init.d/functions ||
- . "$sysconfdir"/rc.d/init.d/functions
-
# Source gettext library.
# Make sure this file is recognized as having translations: _("dummy")
. "@bindir@"/gettext.sh
@@ -45,9 +44,11 @@ test -f "$sysconfdir"/sysconfig/libvirt-
. "$sysconfdir"/sysconfig/libvirt-guests
LISTFILE="$localstatedir"/lib/libvirt/libvirt-guests
-VAR_SUBSYS_LIBVIRT_GUESTS="$localstatedir"/lock/subsys/libvirt-guests
-
-RETVAL=0
+if [ -d "$localstatedir"/lock/subsys ]; then
+ VAR_SUBSYS_LIBVIRT_GUESTS="$localstatedir"/lock/subsys/libvirt-guests
+else
+ VAR_SUBSYS_LIBVIRT_GUESTS="$localstatedir"/lock/libvirt-guests
+fi
# retval COMMAND ARGUMENTS...
# run command with arguments and convert non-zero return value to 1 and set
@@ -55,7 +56,7 @@ RETVAL=0
retval() {
"$@"
if [ $? -ne 0 ]; then
- RETVAL=1
+ rc_failed 1
return 1
else
return 0
@@ -84,6 +85,26 @@ run_virsh_c() {
( export LC_ALL=C; run_virsh "$@" )
}
+await_daemon_up()
+{
+ uri=$1
+ i=1
+ rets=10
+ run_virsh $uri list > /dev/null 2>&1
+ while test $? -ne 0 && test $i -lt $rets; do
+ sleep 1
+ echo -n .
+ i=$(($i + 1))
+ run_virsh $uri list > /dev/null 2>&1
+ done
+ if [ $i -eq $rets ]; then
+ eval_gettext "libvirt-guests unable to connect to URI: $uri"
+ echo
+ return 1
+ fi
+ return 0
+}
+
# test_connect URI
# check if URI is reachable
test_connect()
@@ -117,7 +138,7 @@ list_guests() {
list=$(run_virsh_c "$uri" list --uuid $persistent)
if [ $? -ne 0 ]; then
- RETVAL=1
+ rc_failed 1
return 1
fi
@@ -143,7 +164,7 @@ guest_is_on() {
guest_running=false
id=$(run_virsh "$uri" domid "$uuid")
if [ $? -ne 0 ]; then
- RETVAL=1
+ rc_failed 1
return 1
fi
@@ -193,6 +214,13 @@ start() {
test_connect "$uri" || continue
+ await_daemon_up $uri
+ if [ $? -ne 0 ]; then
+ eval_gettext "Ignoring guests on $uri URI, can't connect"
+ echo
+ continue
+ fi
+
eval_gettext "Resuming guests on \$uri URI..."; echo
for guest in $list; do
name=$(guest_name "$uri" "$guest")
@@ -409,7 +437,7 @@ shutdown_guests_parallel()
timeout=$(($timeout - 1))
if [ $timeout -le 0 ]; then
eval_gettext "Timeout expired while shutting down domains"; echo
- RETVAL=1
+ rc_failed 1
return
fi
else
@@ -437,7 +465,7 @@ stop() {
if [ $SHUTDOWN_TIMEOUT -lt 0 ]; then
gettext "SHUTDOWN_TIMEOUT must be equal or greater than 0"
echo
- RETVAL=6
+ rc_failed 6
return
fi
fi
@@ -485,14 +513,14 @@ stop() {
if [ $? -ne 0 ]; then
eval_gettext "Failed to list persistent guests on \$uri"
echo
- RETVAL=1
+ rc_failed 1
set +f
return
fi
else
gettext "Failed to list transient guests"
echo
- RETVAL=1
+ rc_failed 1
set +f
return
fi
@@ -551,14 +579,13 @@ gueststatus() {
rh_status() {
if [ -f "$LISTFILE" ]; then
gettext "stopped, with saved guests"; echo
- RETVAL=3
+ rc_failed 3
else
if [ -f "$VAR_SUBSYS_LIBVIRT_GUESTS" ]; then
gettext "started"; echo
- RETVAL=0
else
gettext "stopped, with no saved guests"; echo
- RETVAL=3
+ rc_failed 3
fi
fi
}
@@ -603,4 +630,4 @@ case "$1" in
usage
;;
esac
-exit $RETVAL
+rc_exit
Index: libvirt-3.6.0/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-3.6.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-3.6.0/tools/libvirt-guests.sysconf
@@ -1,19 +1,29 @@
+## Path: System/Virtualization/libvirt-guests
+
+## Type: string
+## Default: default
# URIs to check for running guests
# example: URIS='default xen:/// vbox+tcp://host/system lxc:///'
-#URIS=default
+URIS=default
+## Type: string
+## Default: start
# action taken on host boot
# - start all guests which were running on shutdown are started on boot
# regardless on their autostart settings
# - ignore libvirt-guests init script won't start any guest on boot, however,
# guests marked as autostart will still be automatically started by
# libvirtd
-#ON_BOOT=start
+ON_BOOT=start
+## Type: integer
+## Default: 0
# Number of seconds to wait between each guest start. Set to 0 to allow
# parallel startup.
-#START_DELAY=0
+START_DELAY=0
+## Type: string
+## Default: suspend
# action taken on host shutdown
# - suspend all running guests are suspended using virsh managedsave
# - shutdown all running guests are asked to shutdown. Please be careful with
@@ -22,12 +32,16 @@
# which just needs a long time to shutdown. When setting
# ON_SHUTDOWN=shutdown, you must also set SHUTDOWN_TIMEOUT to a
# value suitable for your guests.
-#ON_SHUTDOWN=suspend
+ON_SHUTDOWN=suspend
+## Type: integer
+## Default: 0
# If set to non-zero, shutdown will suspend guests concurrently. Number of
# guests on shutdown at any time will not exceed number set in this variable.
-#PARALLEL_SHUTDOWN=0
+PARALLEL_SHUTDOWN=0
+## Type: integer
+## Default: 300
# Number of seconds we're willing to wait for a guest to shut down. If parallel
# shutdown is enabled, this timeout applies as a timeout for shutting down all
# guests on a single URI defined in the variable URIS. If this is 0, then there
@@ -35,14 +49,18 @@
# request). The default value is 300 seconds (5 minutes).
#SHUTDOWN_TIMEOUT=300
+## Type: integer
+## Default: 0
# 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.
-#BYPASS_CACHE=0
+BYPASS_CACHE=0
+## Type: integer
+## Default: 0
# If non-zero, try to sync guest time on domain resume. Be aware, that
# this requires guest agent with support for time synchronization
# running in the guest. For instance, qemu-ga doesn't support guest time
# synchronization on Windows guests, but Linux ones. By default, this
# functionality is turned off.
-#SYNC_TIME=1
+SYNC_TIME=0
++++++ suse-libvirtd-disable-tls.patch ++++++
Disable TLS by default
On SUSE distros, the default is for libvirtd to listen only on the
Unix Domain Socket. The libvirt client still provides remote access
via a SSH tunnel.
Index: libvirt-3.6.0/daemon/libvirtd.conf
===================================================================
--- libvirt-3.6.0.orig/daemon/libvirtd.conf
+++ libvirt-3.6.0/daemon/libvirtd.conf
@@ -18,8 +18,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.
#
-# This is enabled by default, uncomment this to disable it
-#listen_tls = 0
+# This is disabled by default, uncomment this to enable it
+#listen_tls = 1
# Listen for unencrypted TCP connections on the public TCP/IP port.
# NB, must pass the --listen flag to the libvirtd process for this to
Index: libvirt-3.6.0/daemon/libvirtd-config.c
===================================================================
--- libvirt-3.6.0.orig/daemon/libvirtd-config.c
+++ libvirt-3.6.0/daemon/libvirtd-config.c
@@ -110,7 +110,7 @@ daemonConfigNew(bool privileged ATTRIBUT
if (VIR_ALLOC(data) < 0)
return NULL;
- data->listen_tls = 1;
+ data->listen_tls = 0;
data->listen_tcp = 0;
if (VIR_STRDUP(data->tls_port, LIBVIRTD_TLS_PORT) < 0 ||
Index: libvirt-3.6.0/daemon/test_libvirtd.aug.in
===================================================================
--- libvirt-3.6.0.orig/daemon/test_libvirtd.aug.in
+++ libvirt-3.6.0/daemon/test_libvirtd.aug.in
@@ -2,7 +2,7 @@ module Test_libvirtd =
::CONFIG::
test Libvirtd.lns get conf =
- { "listen_tls" = "0" }
+ { "listen_tls" = "1" }
{ "listen_tcp" = "1" }
{ "tls_port" = "16514" }
{ "tcp_port" = "16509" }
++++++ suse-libvirtd-service-xen.patch ++++++
Add support for Xen in libvirtd service file
libvirtd should be started after the xencommons service.
libvirtd should also conflict with the xendomains service.
On SUSE distros, we promote libvirt and all the libvirt-based
tools. If a user installs libvirt on their SUSE Xen host, then
libvirt should be king and override xendomains. See bsc#1015348
Index: libvirt-3.6.0/daemon/libvirtd.service.in
===================================================================
--- libvirt-3.6.0.orig/daemon/libvirtd.service.in
+++ libvirt-3.6.0/daemon/libvirtd.service.in
@@ -14,6 +14,8 @@ After=iscsid.service
After=apparmor.service
After=local-fs.target
After=remote-fs.target
+After=xencommons.service
+Conflicts=xendomains.service
Documentation=man:libvirtd(8)
Documentation=http://libvirt.org
++++++ suse-libvirtd-sysconfig-settings.patch ++++++
Adjust libvirtd sysconfig file to conform to SUSE standards
Index: libvirt-3.6.0/daemon/libvirtd.sysconf
===================================================================
--- libvirt-3.6.0.orig/daemon/libvirtd.sysconf
+++ libvirt-3.6.0/daemon/libvirtd.sysconf
@@ -1,16 +1,25 @@
+## Path: System/Virtualization/libvirt
+
+## Type: string
+## Default: /etc/libvirt/libvirtd.conf
# Override the default config file
# NOTE: This setting is no longer honoured if using
# systemd. Set '--config /etc/libvirt/libvirtd.conf'
# in LIBVIRTD_ARGS instead.
-#LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf
+LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf
-# Listen for TCP/IP connections
-# NB. must setup TLS/SSL keys prior to using this
-#LIBVIRTD_ARGS="--listen"
+## Type: string
+## Default: --listen
+# Arguments to pass to libvirtd
+LIBVIRTD_ARGS="--listen"
+## Type: string
+## Default: none
# Override Kerberos service keytab for SASL/GSSAPI
#KRB5_KTNAME=/etc/libvirt/krb5.tab
+## Type: string
+## Default: none
# Override the QEMU/SDL default audio driver probing when
# starting virtual machines using SDL graphics
#
@@ -20,14 +29,16 @@
#
#SDL_AUDIODRIVER=pulse
-# Override the maximum number of opened files.
-# This only works with traditional init scripts.
-# In the systemd world, the limit can only be changed by overriding
-# LimitNOFILE for libvirtd.service. To do that, just create a *.conf
-# file in /etc/systemd/system/libvirtd.service.d/ (for example
-# /etc/systemd/system/libvirtd.service.d/openfiles.conf) and write
-# the following two lines in it:
-# [Service]
-# LimitNOFILE=2048
-#
-#LIBVIRTD_NOFILES_LIMIT=2048
+## Type: integer
+## Default: 2048
+## Override the maximum number of opened files.
+## This only works with traditional init scripts.
+## In the systemd world, the limit can only be changed by overriding
+## LimitNOFILE for libvirtd.service. To do that, just create a *.conf
+## file in /etc/systemd/system/libvirtd.service.d/ (for example
+## /etc/systemd/system/libvirtd.service.d/openfiles.conf) and write
+## the following two lines in it:
+## [Service]
+## LimitNOFILE=2048
+##
+LIBVIRTD_NOFILES_LIMIT=2048
++++++ suse-ovmf-paths.patch ++++++
Adjust paths of OVMF firmwares on SUSE distros
Index: libvirt-3.6.0/src/qemu/qemu.conf
===================================================================
--- libvirt-3.6.0.orig/src/qemu/qemu.conf
+++ libvirt-3.6.0/src/qemu/qemu.conf
@@ -695,10 +695,8 @@ security_default_confined = 0
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
# follows this scheme.
#nvram = [
-# "/usr/share/OVMF/OVMF_CODE.fd:/usr/share/OVMF/OVMF_VARS.fd",
-# "/usr/share/OVMF/OVMF_CODE.secboot.fd:/usr/share/OVMF/OVMF_VARS.fd",
-# "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd",
-# "/usr/share/AAVMF/AAVMF32_CODE.fd:/usr/share/AAVMF/AAVMF32_VARS.fd"
+# "/usr/share/qemu/ovmf-x86_64-ms-code.bin:/usr/share/qemu/ovmf-x86_64-ms-vars.bin",
+# "/usr/share/qemu/aavmf-aarch64-code.bin:/usr/share/qemu/aavmf-aarch64-vars.bin"
#]
# The backend to use for handling stdout/stderr output from
Index: libvirt-3.6.0/src/qemu/qemu_conf.c
===================================================================
--- libvirt-3.6.0.orig/src/qemu/qemu_conf.c
+++ libvirt-3.6.0/src/qemu/qemu_conf.c
@@ -127,10 +127,8 @@ void qemuDomainCmdlineDefFree(qemuDomain
#ifndef DEFAULT_LOADER_NVRAM
# define DEFAULT_LOADER_NVRAM \
- "/usr/share/OVMF/OVMF_CODE.fd:/usr/share/OVMF/OVMF_VARS.fd:" \
- "/usr/share/OVMF/OVMF_CODE.secboot.fd:/usr/share/OVMF/OVMF_VARS.fd:" \
- "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd:" \
- "/usr/share/AAVMF/AAVMF32_CODE.fd:/usr/share/AAVMF/AAVMF32_VARS.fd"
+ "/usr/share/qemu/ovmf-x86_64-ms-code.bin:/usr/share/qemu/ovmf-x86_64-ms-vars.bin:" \
+ "/usr/share/qemu/aavmf-aarch64-code.bin:/usr/share/qemu/aavmf-aarch64-vars.bin"
#endif
++++++ suse-qemu-conf.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.335598958 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.335598958 +0200
@@ -7,10 +7,10 @@
etc.), but for now they are all lumped together in this
single patch.
-Index: libvirt-3.5.0/src/qemu/qemu.conf
+Index: libvirt-3.6.0/src/qemu/qemu.conf
===================================================================
---- libvirt-3.5.0.orig/src/qemu/qemu.conf
-+++ libvirt-3.5.0/src/qemu/qemu.conf
+--- libvirt-3.6.0.orig/src/qemu/qemu.conf
++++ libvirt-3.6.0/src/qemu/qemu.conf
@@ -332,11 +332,20 @@
# isolation, but it cannot appear in a list of drivers.
#
@@ -62,15 +62,3 @@
#
#lock_manager = "lockd"
-@@ -675,9 +695,8 @@
- # for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
- # follows this scheme.
- #nvram = [
--# "/usr/share/OVMF/OVMF_CODE.fd:/usr/share/OVMF/OVMF_VARS.fd",
--# "/usr/share/OVMF/OVMF_CODE.secboot.fd:/usr/share/OVMF/OVMF_VARS.fd",
--# "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd"
-+# "/usr/share/qemu/ovmf-x86_64-ms-code.bin:/usr/share/qemu/ovmf-x86_64-ms-vars.bin",
-+# "/usr/share/qemu/aavmf-aarch64-code.bin:/usr/share/qemu/aavmf-aarch64-vars.bin"
- #]
-
- # The backend to use for handling stdout/stderr output from
++++++ suse-virtlockd-sysconfig-settings.patch ++++++
Adjust virtlockd sysconfig file to conform to SUSE standards
Index: libvirt-3.6.0/src/locking/virtlockd.sysconf
===================================================================
--- libvirt-3.6.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-3.6.0/src/locking/virtlockd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlockd
+
+## Type: string
+## Default: ""
#
# Pass extra arguments to virtlockd
#VIRTLOCKD_ARGS=
++++++ suse-virtlogd-sysconfig-settings.patch ++++++
Adjust virtlogd sysconfig file to conform to SUSE standards
Index: libvirt-3.6.0/src/logging/virtlogd.sysconf
===================================================================
--- libvirt-3.6.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-3.6.0/src/logging/virtlogd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlogd
+
+## Type: string
+## Default: ""
#
# Pass extra arguments to virtlogd
#VIRTLOGD_ARGS=
++++++ xen-pv-cdrom.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.419587134 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.423586571 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-3.5.0/src/xenconfig/xen_sxpr.c
+Index: libvirt-3.6.0/src/xenconfig/xen_sxpr.c
===================================================================
---- libvirt-3.5.0.orig/src/xenconfig/xen_sxpr.c
-+++ libvirt-3.5.0/src/xenconfig/xen_sxpr.c
+--- libvirt-3.6.0.orig/src/xenconfig/xen_sxpr.c
++++ libvirt-3.6.0/src/xenconfig/xen_sxpr.c
@@ -392,7 +392,7 @@ xenParseSxprVifRate(const char *rate, un
static int
xenParseSxprDisks(virDomainDefPtr def,
++++++ xen-sxpr-disk-type.patch ++++++
--- /var/tmp/diff_new_pack.TjkSWw/_old 2017-08-10 13:44:44.451582630 +0200
+++ /var/tmp/diff_new_pack.TjkSWw/_new 2017-08-10 13:44:44.451582630 +0200
@@ -6,10 +6,10 @@
https://bugzilla.suse.com/show_bug.cgi?id=938228
-Index: libvirt-3.5.0/src/xenconfig/xen_sxpr.c
+Index: libvirt-3.6.0/src/xenconfig/xen_sxpr.c
===================================================================
---- libvirt-3.5.0.orig/src/xenconfig/xen_sxpr.c
-+++ libvirt-3.5.0/src/xenconfig/xen_sxpr.c
+--- libvirt-3.6.0.orig/src/xenconfig/xen_sxpr.c
++++ libvirt-3.6.0/src/xenconfig/xen_sxpr.c
@@ -506,10 +506,11 @@ xenParseSxprDisks(virDomainDefPtr def,
omnipotent, we can revisit this, perhaps stat()'ing
the src file in question */