Accepting request 770411 from Virtualization

OBS-URL: https://build.opensuse.org/request/show/770411
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=299
This commit is contained in:
2020-02-06 12:19:39 +00:00
committed by Git OBS Bridge
4 changed files with 128 additions and 2 deletions

View File

@@ -0,0 +1,75 @@
commit e092daacee330b8f758bceaf1e9a0ccfec2e00c8
Author: Jim Fehlig <jfehlig@suse.com>
Date: Fri Jan 17 10:36:32 2020 -0700
lib: Prohibit parallel connections with tunneled migration
As discussed on the developer list, parallel migration connections
are not compatible with tunneled migration
https://www.redhat.com/archives/libvir-list/2020-January/msg00463.html
Prohibit the concurrent use of parallel and tunneled migration options.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Index: libvirt-6.0.0/src/libvirt-domain.c
===================================================================
--- libvirt-6.0.0.orig/src/libvirt-domain.c
+++ libvirt-6.0.0/src/libvirt-domain.c
@@ -3548,6 +3548,10 @@ virDomainMigrate(virDomainPtr domain,
VIR_MIGRATE_NON_SHARED_INC,
error);
+ VIR_EXCLUSIVE_FLAGS_GOTO(VIR_MIGRATE_TUNNELLED,
+ VIR_MIGRATE_PARALLEL,
+ error);
+
if (flags & VIR_MIGRATE_OFFLINE) {
if (!VIR_DRV_SUPPORTS_FEATURE(domain->conn->driver, domain->conn,
VIR_DRV_FEATURE_MIGRATION_OFFLINE)) {
@@ -3703,6 +3707,10 @@ virDomainMigrate2(virDomainPtr domain,
VIR_MIGRATE_NON_SHARED_INC,
error);
+ VIR_EXCLUSIVE_FLAGS_GOTO(VIR_MIGRATE_TUNNELLED,
+ VIR_MIGRATE_PARALLEL,
+ error);
+
if (flags & VIR_MIGRATE_OFFLINE) {
if (!VIR_DRV_SUPPORTS_FEATURE(domain->conn->driver, domain->conn,
VIR_DRV_FEATURE_MIGRATION_OFFLINE)) {
@@ -4089,6 +4097,10 @@ virDomainMigrateToURI(virDomainPtr domai
virCheckReadOnlyGoto(domain->conn->flags, error);
virCheckNonNullArgGoto(duri, error);
+ VIR_EXCLUSIVE_FLAGS_GOTO(VIR_MIGRATE_TUNNELLED,
+ VIR_MIGRATE_PARALLEL,
+ error);
+
if (virDomainMigrateUnmanagedCheckCompat(domain, flags) < 0)
goto error;
@@ -4161,6 +4173,10 @@ virDomainMigrateToURI2(virDomainPtr doma
virCheckDomainReturn(domain, -1);
virCheckReadOnlyGoto(domain->conn->flags, error);
+ VIR_EXCLUSIVE_FLAGS_GOTO(VIR_MIGRATE_TUNNELLED,
+ VIR_MIGRATE_PARALLEL,
+ error);
+
if (virDomainMigrateUnmanagedCheckCompat(domain, flags) < 0)
goto error;
@@ -4234,6 +4250,10 @@ virDomainMigrateToURI3(virDomainPtr doma
virCheckDomainReturn(domain, -1);
virCheckReadOnlyGoto(domain->conn->flags, error);
+ VIR_EXCLUSIVE_FLAGS_GOTO(VIR_MIGRATE_TUNNELLED,
+ VIR_MIGRATE_PARALLEL,
+ error);
+
if (virDomainMigrateUnmanagedCheckCompat(domain, flags) < 0)
goto error;

View File

@@ -1,3 +1,23 @@
-------------------------------------------------------------------
Wed Feb 5 22:51:48 UTC 2020 - James Fehlig <jfehlig@suse.com>
- xen: Fix the list of supported ovmf firmwares
suse-xen-ovmf-loaders.patch
bsc#1159793
-------------------------------------------------------------------
Mon Feb 3 18:32:49 UTC 2020 - James Fehlig <jfehlig@suse.com>
- lib: Prohibit parallel connections with tunneled migration
e092daac-prohib-parallel-tunneled-mig.patch
jsc#SLE-6998
-------------------------------------------------------------------
Mon Feb 3 15:27:17 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- BuildRequire pkgconfig((lib)?udev) instead of (lib)?udev: allow
OBS to shortcut through -mini flavors.
-------------------------------------------------------------------
Thu Jan 30 22:05:24 UTC 2020 - James Fehlig <jfehlig@suse.com>

View File

@@ -251,8 +251,8 @@ BuildRequires: rpcgen
# For pool-build probing for existing pools
BuildRequires: libblkid-devel >= 2.17
BuildRequires: libpciaccess0-devel >= 0.10.9
BuildRequires: libudev-devel >= 145
BuildRequires: libyajl-devel
BuildRequires: pkgconfig(libudev) >= 145
%if %{with_sanlock}
BuildRequires: sanlock-devel >= 2.4
%endif
@@ -341,6 +341,7 @@ Source100: %{name}-rpmlintrc
Patch0: 6c1dddaf-libxl-shutdown-inhibit.patch
Patch1: 849052ec-libxl-support-credit2.patch
Patch2: 72ed254b-drop-exec-perms-bashcompletion.patch
Patch3: e092daac-prohib-parallel-tunneled-mig.patch
# Patches pending upstream review
Patch100: libxl-dom-reset.patch
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
@@ -367,6 +368,7 @@ Patch210: qemu-apparmor-screenshot.patch
Patch211: libvirt-suse-netcontrol.patch
Patch212: lxc-wait-after-eth-del.patch
Patch213: suse-libxl-disable-autoballoon.patch
Patch214: suse-xen-ovmf-loaders.patch
# SLES-Only patches
%if ! 0%{?is_opensuse}
Patch400: virt-create-rootfs.patch
@@ -404,7 +406,7 @@ Requires: modutils
# for /sbin/ip & /sbin/tc
Requires: iproute
Requires: logrotate
Requires: udev >= 145
Requires: pkgconfig(udev) >= 145
Recommends: polkit >= 0.112
%ifarch %ix86 x86_64 ia64
# For virConnectGetSysinfo
@@ -876,6 +878,7 @@ libvirt plugin for NSS for translating domain names into IP addresses.
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch100 -p1
%patch101 -p1
%patch150 -p1
@@ -899,6 +902,7 @@ libvirt plugin for NSS for translating domain names into IP addresses.
%patch211 -p1
%patch212 -p1
%patch213 -p1
%patch214 -p1
%if ! 0%{?is_opensuse}
%patch400 -p1
%endif

View File

@@ -0,0 +1,27 @@
libxl: Temporarily hardcode paths to ovmf firmwares
This is a quick, hacky fix for bsc#1159793 until there is time to work on
upstream support for firmware autoselection in the xen driver. Sadly, the
upstream efforts to improve firmware handling in the qemu driver broke
the firmware handling in the xen driver.
Index: libvirt-6.0.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.0.0/src/libxl/libxl_conf.c
@@ -1776,6 +1776,15 @@ libxlDriverConfigNew(void)
goto error;
}
+ /* Begin hack ---
+ * bsc#1159793: Until there is time to work on proper upstream support for
+ * firmware autoselection in the xen driver we'll go with this minimal fix.
+ */
+#define DEFAULT_LOADER_NVRAM "/usr/share/qemu/ovmf-x86_64-ms-4m.bin:/usr/share/qemu/ovmf-x86_64-ms-4m-vars.bin:/usr/share/qemu/ovmf-x86_64-ms.bin:/usr/share/qemu/ovmf-x86_64-ms-vars.bin"
+ /*
+ * --- End hack
+ */
+
#ifdef DEFAULT_LOADER_NVRAM
if (virFirmwareParseList(DEFAULT_LOADER_NVRAM,
&cfg->firmwares,