Accepting request 783128 from Virtualization

- Update to libvirt 6.1.0
  - Many incremental improvements and bug fixes, see
    https://libvirt.org/news.html
  - Dropped patches:
    6c1dddaf-libxl-shutdown-inhibit.patch,
    849052ec-libxl-support-credit2.patch,
    72ed254b-drop-exec-perms-bashcompletion.patch,
    e092daac-prohib-parallel-tunneled-mig.patch,
    ae9e6c2a-qemu-allow-cond-format-probe.patch

OBS-URL: https://build.opensuse.org/request/show/783128
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=301
This commit is contained in:
Dominique Leuenberger 2020-03-12 21:58:15 +00:00 committed by Git OBS Bridge
commit 1dc735a797
36 changed files with 271 additions and 619 deletions

View File

@ -18,10 +18,10 @@ them.
create mode 100644 src/conf/domain_stats.c
create mode 100644 src/conf/domain_stats.h
Index: libvirt-6.0.0/src/conf/domain_stats.c
Index: libvirt-6.1.0/src/conf/domain_stats.c
===================================================================
--- /dev/null
+++ libvirt-6.0.0/src/conf/domain_stats.c
+++ libvirt-6.1.0/src/conf/domain_stats.c
@@ -0,0 +1,119 @@
+/*
+ * domain_stats.c: domain stats extraction helpers
@ -142,10 +142,10 @@ Index: libvirt-6.0.0/src/conf/domain_stats.c
+}
+
+#undef STATS_ADD_NET_PARAM
Index: libvirt-6.0.0/src/conf/domain_stats.h
Index: libvirt-6.1.0/src/conf/domain_stats.h
===================================================================
--- /dev/null
+++ libvirt-6.0.0/src/conf/domain_stats.h
+++ libvirt-6.1.0/src/conf/domain_stats.h
@@ -0,0 +1,62 @@
+/*
+ * domain_stats.h: domain stats extraction helpers
@ -209,11 +209,11 @@ Index: libvirt-6.0.0/src/conf/domain_stats.h
+ virTypedParamListPtr params);
+
+#endif /* __DOMAIN_STATS_H */
Index: libvirt-6.0.0/src/libvirt_private.syms
Index: libvirt-6.1.0/src/libvirt_private.syms
===================================================================
--- libvirt-6.0.0.orig/src/libvirt_private.syms
+++ libvirt-6.0.0/src/libvirt_private.syms
@@ -714,6 +714,9 @@ virDomainConfNWFilterInstantiate;
--- libvirt-6.1.0.orig/src/libvirt_private.syms
+++ libvirt-6.1.0/src/libvirt_private.syms
@@ -725,6 +725,9 @@ virDomainConfNWFilterInstantiate;
virDomainConfNWFilterTeardown;
virDomainConfVMNWFilterTeardown;
@ -223,7 +223,7 @@ Index: libvirt-6.0.0/src/libvirt_private.syms
# conf/interface_conf.h
virInterfaceDefFormat;
@@ -1691,6 +1694,7 @@ virCgroupGetMemoryUsage;
@@ -1752,6 +1755,7 @@ virCgroupGetMemoryUsage;
virCgroupGetMemSwapHardLimit;
virCgroupGetMemSwapUsage;
virCgroupGetPercpuStats;
@ -231,19 +231,19 @@ Index: libvirt-6.0.0/src/libvirt_private.syms
virCgroupHasController;
virCgroupHasEmptyTasks;
virCgroupKillPainfully;
Index: libvirt-6.0.0/src/qemu/qemu_driver.c
Index: libvirt-6.1.0/src/qemu/qemu_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/qemu/qemu_driver.c
+++ libvirt-6.0.0/src/qemu/qemu_driver.c
@@ -67,6 +67,7 @@
--- libvirt-6.1.0.orig/src/qemu/qemu_driver.c
+++ libvirt-6.1.0/src/qemu/qemu_driver.c
@@ -64,6 +64,7 @@
#include "virarptable.h"
#include "viruuid.h"
#include "domain_conf.h"
+#include "domain_stats.h"
#include "domain_audit.h"
#include "node_device_conf.h"
#include "virpci.h"
@@ -20584,13 +20585,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
#include "domain_cgroup.h"
#include "domain_driver.h"
@@ -20458,13 +20459,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
virTypedParamListPtr params,
unsigned int privflags G_GNUC_UNUSED)
{
@ -258,7 +258,7 @@ Index: libvirt-6.0.0/src/qemu/qemu_driver.c
}
@@ -20893,17 +20888,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
@@ -20767,17 +20762,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
if (!priv->cgroup)
return 0;
@ -277,7 +277,7 @@ Index: libvirt-6.0.0/src/qemu/qemu_driver.c
}
@@ -21071,76 +21056,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
@@ -20945,76 +20930,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
return ret;
}
@ -355,11 +355,11 @@ Index: libvirt-6.0.0/src/qemu/qemu_driver.c
/* refresh information by opening images on the disk */
static int
Index: libvirt-6.0.0/src/util/vircgroup.c
Index: libvirt-6.1.0/src/util/vircgroup.c
===================================================================
--- libvirt-6.0.0.orig/src/util/vircgroup.c
+++ libvirt-6.0.0/src/util/vircgroup.c
@@ -2773,6 +2773,31 @@ virCgroupControllerAvailable(int control
--- libvirt-6.1.0.orig/src/util/vircgroup.c
+++ libvirt-6.1.0/src/util/vircgroup.c
@@ -2779,6 +2779,31 @@ virCgroupControllerAvailable(int control
return ret;
}
@ -391,7 +391,7 @@ Index: libvirt-6.0.0/src/util/vircgroup.c
#else /* !__linux__ */
bool
@@ -2782,6 +2807,14 @@ virCgroupAvailable(void)
@@ -2788,6 +2813,14 @@ virCgroupAvailable(void)
}
@ -406,29 +406,29 @@ Index: libvirt-6.0.0/src/util/vircgroup.c
int
virCgroupNewPartition(const char *path G_GNUC_UNUSED,
bool create G_GNUC_UNUSED,
Index: libvirt-6.0.0/src/util/vircgroup.h
Index: libvirt-6.1.0/src/util/vircgroup.h
===================================================================
--- libvirt-6.0.0.orig/src/util/vircgroup.h
+++ libvirt-6.0.0/src/util/vircgroup.h
@@ -24,6 +24,7 @@
#include "virutil.h"
--- libvirt-6.1.0.orig/src/util/vircgroup.h
+++ libvirt-6.1.0/src/util/vircgroup.h
@@ -23,6 +23,7 @@
#include "virbitmap.h"
#include "virenum.h"
+#include "virtypedparam.h"
struct _virCgroup;
typedef struct _virCgroup virCgroup;
@@ -285,3 +286,6 @@ int virCgroupSetOwner(virCgroupPtr cgrou
@@ -271,3 +272,6 @@ int virCgroupSetOwner(virCgroupPtr cgrou
int virCgroupHasEmptyTasks(virCgroupPtr cgroup, int controller);
bool virCgroupControllerAvailable(int controller);
+
+int virCgroupGetStatsCpu(virCgroupPtr cgroup,
+ virTypedParamListPtr params);
Index: libvirt-6.0.0/src/conf/Makefile.inc.am
Index: libvirt-6.1.0/src/conf/Makefile.inc.am
===================================================================
--- libvirt-6.0.0.orig/src/conf/Makefile.inc.am
+++ libvirt-6.0.0/src/conf/Makefile.inc.am
--- libvirt-6.1.0.orig/src/conf/Makefile.inc.am
+++ libvirt-6.1.0/src/conf/Makefile.inc.am
@@ -28,6 +28,8 @@ DOMAIN_CONF_SOURCES = \
conf/domain_audit.h \
conf/domain_nwfilter.c \

View File

@ -19,11 +19,11 @@ reworking this patch and submitting it to upstream libvirt.
src/libxl/libxl_driver.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 91 insertions(+)
Index: libvirt-6.0.0/src/libxl/libxl_driver.c
Index: libvirt-6.1.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.0.0/src/libxl/libxl_driver.c
@@ -5280,6 +5280,96 @@ libxlDomainMemoryStats(virDomainPtr dom,
--- libvirt-6.1.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.1.0/src/libxl/libxl_driver.c
@@ -5288,6 +5288,96 @@ libxlDomainMemoryStats(virDomainPtr dom,
#undef LIBXL_SET_MEMSTAT
@ -120,7 +120,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_driver.c
static int
libxlDomainGetJobInfo(virDomainPtr dom,
virDomainJobInfoPtr info)
@@ -6698,6 +6788,7 @@ static virHypervisorDriver libxlHypervis
@@ -6706,6 +6796,7 @@ static virHypervisorDriver libxlHypervis
#endif
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */

View File

@ -9,19 +9,19 @@ them using the existing API.
src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 138 insertions(+)
Index: libvirt-6.0.0/src/lxc/lxc_driver.c
Index: libvirt-6.1.0/src/lxc/lxc_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.0.0/src/lxc/lxc_driver.c
@@ -75,6 +75,7 @@
#include "viraccessapichecklxc.h"
#include "virhostdev.h"
--- libvirt-6.1.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.1.0/src/lxc/lxc_driver.c
@@ -74,6 +74,7 @@
#include "netdev_bandwidth_conf.h"
#include "virsocket.h"
#include "virutil.h"
+#include "domain_stats.h"
#define VIR_FROM_THIS VIR_FROM_LXC
@@ -5351,6 +5352,135 @@ lxcDomainHasManagedSaveImage(virDomainPt
@@ -5077,6 +5078,135 @@ lxcDomainHasManagedSaveImage(virDomainPt
return ret;
}
@ -157,7 +157,7 @@ Index: libvirt-6.0.0/src/lxc/lxc_driver.c
/* Function Tables */
static virHypervisorDriver lxcHypervisorDriver = {
@@ -5446,6 +5576,7 @@ static virHypervisorDriver lxcHypervisor
@@ -5174,6 +5304,7 @@ static virHypervisorDriver lxcHypervisor
.nodeGetFreePages = lxcNodeGetFreePages, /* 1.2.6 */
.nodeAllocPages = lxcNodeAllocPages, /* 1.2.9 */
.domainHasManagedSaveImage = lxcDomainHasManagedSaveImage, /* 1.2.13 */

View File

@ -1,39 +0,0 @@
commit 6c1dddaf97b4ef70e27961c9f79b15c79a863ac5
Author: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Date: Sat Jan 18 03:37:42 2020 +0100
libxl: initialize shutdown inhibit callback
The libxl driver already tries to call shutdown inhibit callback in the
right places, but only if it's set. That last part was missing,
resulting in premature shutdown when running libvirtd
--timeout=...
Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
Index: libvirt-6.0.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.0.0/src/libxl/libxl_driver.c
@@ -648,8 +648,8 @@ libxlAddDom0(libxlDriverPrivatePtr drive
static int
libxlStateInitialize(bool privileged,
- virStateInhibitCallback callback G_GNUC_UNUSED,
- void *opaque G_GNUC_UNUSED)
+ virStateInhibitCallback callback,
+ void *opaque)
{
libxlDriverConfigPtr cfg;
char *driverConf = NULL;
@@ -670,6 +670,9 @@ libxlStateInitialize(bool privileged,
return VIR_DRV_STATE_INIT_ERROR;
}
+ libxl_driver->inhibitCallback = callback;
+ libxl_driver->inhibitOpaque = opaque;
+
/* Allocate bitmap for vnc port reservation */
if (!(libxl_driver->reservedGraphicsPorts =
virPortAllocatorRangeNew(_("VNC"),

View File

@ -1,27 +0,0 @@
commit 72ed254b38571a2139ed2a43607e07750fea459f
Author: Jim Fehlig <jfehlig@suse.com>
Date: Thu Jan 30 11:29:41 2020 -0700
build: Drop execute permissions on virsh bash completion command
rpmlint complains about "script-without-shebang" due to the execute
permissions on /usr/share/bash-completion/completions/vsh. Use
INSTALL_DATA instead of INSTALL_SCRIPT to avoid the unnecessary
execute permissions.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Index: libvirt-6.0.0/tools/Makefile.am
===================================================================
--- libvirt-6.0.0.orig/tools/Makefile.am
+++ libvirt-6.0.0/tools/Makefile.am
@@ -357,7 +357,7 @@ libvirt-guests.service: libvirt-guests.s
if WITH_BASH_COMPLETION
install-bash-completion:
$(MKDIR_P) "$(DESTDIR)$(BASH_COMPLETIONS_DIR)"
- $(INSTALL_SCRIPT) $(srcdir)/bash-completion/vsh \
+ $(INSTALL_DATA) $(srcdir)/bash-completion/vsh \
"$(DESTDIR)$(BASH_COMPLETIONS_DIR)/vsh"
( cd $(DESTDIR)$(BASH_COMPLETIONS_DIR) && \
rm -f virsh virt-admin && \

View File

@ -1,68 +0,0 @@
commit 849052ec61e18780713bec171748e859e32dfd6d
Author: Dario Faggioli <dfaggioli@suse.com>
Date: Wed Jan 29 12:05:15 2020 +0100
libxl: support getting and setting parameters for the Credit2
With Credit2 being Xen default scheduler, it's definitely the case to
allow Credit2's scheduling parameters to be get and set via libvirt.
This is easy, as Credit and Credit2 have (at least as of now) the very
same parameters ('weight' and 'cap'). So we can just let credit2 pass
the scheduler-type check and the same code will work for both.
Signed-off-by: Dario Faggioli <dfaggioli@suse.com>
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
Index: libvirt-6.0.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.0.0/src/libxl/libxl_driver.c
@@ -73,7 +73,7 @@ VIR_LOG_INIT("libxl.libxl_driver");
#define HYPERVISOR_CAPABILITIES "/proc/xen/capabilities"
#define HYPERVISOR_XENSTORED "/dev/xen/xenstored"
-/* Number of Xen scheduler parameters */
+/* Number of Xen scheduler parameters. credit and credit2 both support 2 */
#define XEN_SCHED_CREDIT_NPARAM 2
#define LIBXL_CHECK_DOM0_GOTO(name, label) \
@@ -4579,6 +4579,8 @@ libxlDomainGetSchedulerType(virDomainPtr
break;
case LIBXL_SCHEDULER_CREDIT2:
name = "credit2";
+ if (nparams)
+ *nparams = XEN_SCHED_CREDIT_NPARAM;
break;
case LIBXL_SCHEDULER_ARINC653:
name = "arinc653";
@@ -4625,11 +4627,11 @@ libxlDomainGetSchedulerParametersFlags(v
if (virDomainObjCheckActive(vm) < 0)
goto cleanup;
+ /* Only credit and credit2 are supported for now. */
sched_id = libxl_get_scheduler(cfg->ctx);
-
- if (sched_id != LIBXL_SCHEDULER_CREDIT) {
+ if (sched_id != LIBXL_SCHEDULER_CREDIT && sched_id != LIBXL_SCHEDULER_CREDIT2) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("Only 'credit' scheduler is supported"));
+ _("Only 'credit' and 'credit2' schedulers are supported"));
goto cleanup;
}
@@ -4702,11 +4704,11 @@ libxlDomainSetSchedulerParametersFlags(v
if (virDomainObjCheckActive(vm) < 0)
goto endjob;
+ /* Only credit and credit2 are supported for now. */
sched_id = libxl_get_scheduler(cfg->ctx);
-
- if (sched_id != LIBXL_SCHEDULER_CREDIT) {
+ if (sched_id != LIBXL_SCHEDULER_CREDIT && sched_id != LIBXL_SCHEDULER_CREDIT2) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("Only 'credit' scheduler is supported"));
+ _("Only 'credit' and 'credit2' schedulers are supported"));
goto endjob;
}

View File

@ -1,136 +0,0 @@
commit ae9e6c2a2b75d958995c661f7bb64ed4353a6404
Author: Peter Krempa <pkrempa@redhat.com>
Date: Mon Feb 17 10:08:25 2020 +0100
virStorageFileGetMetadataRecurse: Allow format probing under special circumstances
Allow format probing to work around lazy clients which did not specify
their format in the overlay. Format probing will be allowed only, if we
are able to probe the image, the probing result was successful and the
probed image does not have any backing or data file.
This relaxes the restrictions which were imposed in commit 3615e8b39bad
in cases when we know that the image probing will not result in security
issues or data corruption.
We perform the image format detection and in the case that we were able
to probe the format and the format does not specify a backing store (or
doesn't support backing store) we can use this format.
With pre-blockdev configurations this will restore the previous
behaviour for the images mentioned above as qemu would probe the format
anyways. It also improves error reporting compared to the old state as
we now report that the backing chain will be broken in case when there
is a backing file.
In blockdev configurations this ensures that libvirt will not cause data
corruption by ending the chain prematurely without notifying the user,
but still allows the old semantics when the users forgot to specify the
format.
Users thus don't have to re-invent when image format detection is safe
to do.
The price for this is that libvirt will need to keep the image format
detector still current and working or replace it by invocation of
qemu-img.
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Index: libvirt-6.0.0/src/util/virstoragefile.c
===================================================================
--- libvirt-6.0.0.orig/src/util/virstoragefile.c
+++ libvirt-6.0.0/src/util/virstoragefile.c
@@ -4907,6 +4907,7 @@ virStorageFileGetMetadataRecurse(virStor
virHashTablePtr cycle,
unsigned int depth)
{
+ virStorageFileFormat orig_format = src->format;
int ret = -1;
const char *uniqueName;
ssize_t headerLen;
@@ -4919,10 +4920,17 @@ virStorageFileGetMetadataRecurse(virStor
src->path, src->format,
(unsigned int)uid, (unsigned int)gid);
+ if (src->format == VIR_STORAGE_FILE_AUTO_SAFE)
+ src->format = VIR_STORAGE_FILE_AUTO;
+
/* exit if we can't load information about the current image */
rv = virStorageFileSupportsBackingChainTraversal(src);
- if (rv <= 0)
+ if (rv <= 0) {
+ if (orig_format == VIR_STORAGE_FILE_AUTO)
+ return -2;
+
return rv;
+ }
if (virStorageFileInitAs(src, uid, gid) < 0)
return -1;
@@ -4960,6 +4968,18 @@ virStorageFileGetMetadataRecurse(virStor
&backingFormat) < 0)
goto cleanup;
+ /* If we probed the format we MUST ensure that nothing else than the current
+ * image (this includes both backing files and external data store) is
+ * considered for security labelling and/or recursion. */
+ if (orig_format == VIR_STORAGE_FILE_AUTO) {
+ if (src->backingStoreRaw || src->externalDataStoreRaw) {
+ src->format = VIR_STORAGE_FILE_RAW;
+ VIR_FREE(src->backingStoreRaw);
+ VIR_FREE(src->externalDataStoreRaw);
+ return -2;
+ }
+ }
+
if (src->backingStoreRaw) {
if ((rv = virStorageSourceNewFromBacking(src, &backingStore)) < 0)
goto cleanup;
@@ -4972,36 +4992,21 @@ virStorageFileGetMetadataRecurse(virStor
backingStore->format = backingFormat;
- if (backingStore->format == VIR_STORAGE_FILE_AUTO) {
- /* Assuming the backing store to be raw can lead to failures. We do
- * it only when we must not report an error to prevent losing VMs.
- * Otherwise report an error.
- */
- if (report_broken) {
+ if ((rv = virStorageFileGetMetadataRecurse(backingStore, parent,
+ uid, gid,
+ report_broken,
+ cycle, depth + 1)) < 0) {
+ if (!report_broken)
+ return 0;
+
+ if (rv == -2) {
virReportError(VIR_ERR_OPERATION_INVALID,
_("format of backing image '%s' of image '%s' was not specified in the image metadata "
"(See https://libvirt.org/kbase/backing_chains.html for troubleshooting)"),
src->backingStoreRaw, NULLSTR(src->path));
- return -1;
}
- backingStore->format = VIR_STORAGE_FILE_RAW;
- }
-
- if (backingStore->format == VIR_STORAGE_FILE_AUTO_SAFE)
- backingStore->format = VIR_STORAGE_FILE_AUTO;
-
- if ((ret = virStorageFileGetMetadataRecurse(backingStore, parent,
- uid, gid,
- report_broken,
- cycle, depth + 1)) < 0) {
- if (report_broken)
- goto cleanup;
-
- /* if we fail somewhere midway, just accept and return a
- * broken chain */
- ret = 0;
- goto cleanup;
+ return -1;
}
} else {
/* add terminator */

View File

@ -1,75 +0,0 @@
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 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e6bb642389bbace3252c462bbb2e9b1749dd64315b9873a424f36c7f8d357f76
size 8686092

View File

@ -1,11 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEE20ZoG7ka3OoXD6LUFViLJllr6l0FAl4fLBoACgkQFViLJllr
6l2/Hwf9Fe4jQdFda9ml3mpg7MAy5J060yC8d5hRZSqtCEeoM71DGHc6vgeGiBVf
5JdTKGCwTC7xaQu+Hcs0cTuqGwx0sAepH0gBjO4AkfuHqI/zvPzpWoB2NY/AOaMK
aqOQYXk1pz0a9UQ3SA+dPDjzsuDW4+0L2bj08iQZuQu7sX6ItYWL/dEiopEJ87vO
zRWKOH3QfEUo6xj0PcdyhIRWFF92Q6y2h8zAcOAnyYgMBbXBTePx+jwQ/kAzgB/q
UhiVTzNfoeo/Zmpkwq7Oiti0qez0U6IVM6Lseczj2mWUbY7CD7QCQOH2oo8bdCcS
9xv6amO067GldZb1utD5KZf1LX1W/w==
=qArt
-----END PGP SIGNATURE-----

3
libvirt-6.1.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:167c185be45560e73dd3e14ed375778b555c01455192de2dafc4d0f74fabebc0
size 8276964

11
libvirt-6.1.0.tar.xz.asc Normal file
View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEE20ZoG7ka3OoXD6LUFViLJllr6l0FAl5eV20ACgkQFViLJllr
6l2vngf/Vb7A4RA9HzmrysjfCD7yRYnjX9NzgApyQMsKOursQlXxeAHE9cKpc9hM
NyQ4+f9SVJnJ+Wd2Z8bZDY976Bg6obDdXnEuL00QBrBe+gsTEXf5fc4fRnV8/l3b
en1MEZ+VYFH6mmKUheumybOaPPc0DlgCBRXZj50UDHTdEqB4pQWxL2bIEOVIlepn
WEXv0v3CoWdsVUzvsVz2vNNPt3PW+hFHU4nAcTTMF/IJwbLIGMY3JTVV0imPD1PV
qLb3wSi0INrKLRfOJC51j2ILj1GQe33OTmVmxqJSFDBOvb7yf1j2VQ5T3jfIIpay
oWAnznrtezmG9Pq/hXPIABV7piYAYA==
=7yxg
-----END PGP SIGNATURE-----

View File

@ -2,10 +2,10 @@ Add POWER8 v2.0 and v2.1 to cpu map XML
From: <ro@suse.de>
Index: libvirt-6.0.0/src/cpu_map/ppc64_POWER8.xml
Index: libvirt-6.1.0/src/cpu_map/ppc64_POWER8.xml
===================================================================
--- libvirt-6.0.0.orig/src/cpu_map/ppc64_POWER8.xml
+++ libvirt-6.0.0/src/cpu_map/ppc64_POWER8.xml
--- libvirt-6.1.0.orig/src/cpu_map/ppc64_POWER8.xml
+++ libvirt-6.1.0/src/cpu_map/ppc64_POWER8.xml
@@ -4,5 +4,7 @@
<pvr value='0x004b0000' mask='0xffff0000'/>
<pvr value='0x004c0000' mask='0xffff0000'/>

View File

@ -1,8 +1,8 @@
Index: libvirt-6.0.0/configure.ac
Index: libvirt-6.1.0/configure.ac
===================================================================
--- libvirt-6.0.0.orig/configure.ac
+++ libvirt-6.0.0/configure.ac
@@ -285,6 +285,7 @@ LIBVIRT_ARG_LIBSSH
--- libvirt-6.1.0.orig/configure.ac
+++ libvirt-6.1.0/configure.ac
@@ -278,6 +278,7 @@ LIBVIRT_ARG_LIBSSH
LIBVIRT_ARG_LIBXML
LIBVIRT_ARG_MACVTAP
LIBVIRT_ARG_NETCF
@ -10,7 +10,7 @@ Index: libvirt-6.0.0/configure.ac
LIBVIRT_ARG_NLS
LIBVIRT_ARG_NSS
LIBVIRT_ARG_NUMACTL
@@ -329,6 +330,7 @@ LIBVIRT_CHECK_LIBSSH
@@ -321,6 +322,7 @@ LIBVIRT_CHECK_LIBSSH
LIBVIRT_CHECK_LIBXML
LIBVIRT_CHECK_MACVTAP
LIBVIRT_CHECK_NETCF
@ -18,7 +18,7 @@ Index: libvirt-6.0.0/configure.ac
LIBVIRT_CHECK_NLS
LIBVIRT_CHECK_NUMACTL
LIBVIRT_CHECK_NWFILTER
@@ -1013,6 +1015,7 @@ LIBVIRT_RESULT_LIBXL
@@ -1008,6 +1010,7 @@ LIBVIRT_RESULT_LIBXL
LIBVIRT_RESULT_LIBXML
LIBVIRT_RESULT_MACVTAP
LIBVIRT_RESULT_NETCF
@ -26,11 +26,11 @@ Index: libvirt-6.0.0/configure.ac
LIBVIRT_RESULT_NLS
LIBVIRT_RESULT_NSS
LIBVIRT_RESULT_NUMACTL
Index: libvirt-6.0.0/tools/virsh.c
Index: libvirt-6.1.0/tools/virsh.c
===================================================================
--- libvirt-6.0.0.orig/tools/virsh.c
+++ libvirt-6.0.0/tools/virsh.c
@@ -553,6 +553,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
--- libvirt-6.1.0.orig/tools/virsh.c
+++ libvirt-6.1.0/tools/virsh.c
@@ -547,6 +547,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
vshPrint(ctl, " netcf");
@ -39,10 +39,10 @@ Index: libvirt-6.0.0/tools/virsh.c
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
Index: libvirt-6.1.0/src/interface/interface_backend_netcf.c
===================================================================
--- libvirt-6.0.0.orig/src/interface/interface_backend_netcf.c
+++ libvirt-6.0.0/src/interface/interface_backend_netcf.c
--- libvirt-6.1.0.orig/src/interface/interface_backend_netcf.c
+++ libvirt-6.1.0/src/interface/interface_backend_netcf.c
@@ -21,7 +21,12 @@
#include <config.h>
@ -57,7 +57,7 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
#include "virerror.h"
#include "datatypes.h"
@@ -71,6 +76,37 @@ VIR_ONCE_GLOBAL_INIT(virNetcfDriverState
@@ -72,6 +77,37 @@ VIR_ONCE_GLOBAL_INIT(virNetcfDriverState
static virNetcfDriverStatePtr driver;
@ -95,7 +95,7 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
static void
virNetcfDriverStateDispose(void *obj)
@@ -119,6 +155,10 @@ netcfStateInitialize(bool privileged,
@@ -127,6 +163,10 @@ netcfStateInitialize(bool privileged,
virPidFileAcquire(driver->stateDir, "driver", false, getpid())) < 0)
goto error;
@ -106,7 +106,7 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
/* open netcf */
if (ncf_init(&driver->netcf, NULL) != 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
@@ -1113,6 +1153,7 @@ static int netcfInterfaceIsActive(virInt
@@ -1121,6 +1161,7 @@ static int netcfInterfaceIsActive(virInt
return ret;
}
@ -114,7 +114,7 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
static int netcfInterfaceChangeBegin(virConnectPtr conn, unsigned int flags)
{
int ret;
@@ -1187,6 +1228,7 @@ static int netcfInterfaceChangeRollback(
@@ -1195,6 +1236,7 @@ static int netcfInterfaceChangeRollback(
virObjectUnlock(driver);
return ret;
}
@ -122,7 +122,7 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
static virInterfaceDriver interfaceDriver = {
.name = INTERFACE_DRIVER_NAME,
@@ -1203,9 +1245,11 @@ static virInterfaceDriver interfaceDrive
@@ -1211,9 +1253,11 @@ static virInterfaceDriver interfaceDrive
.interfaceCreate = netcfInterfaceCreate, /* 0.7.0 */
.interfaceDestroy = netcfInterfaceDestroy, /* 0.7.0 */
.interfaceIsActive = netcfInterfaceIsActive, /* 0.7.3 */
@ -134,7 +134,7 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
};
@@ -1236,6 +1280,19 @@ static virStateDriver interfaceStateDriv
@@ -1244,6 +1288,19 @@ static virStateDriver interfaceStateDriv
int netcfIfaceRegister(void)
{
@ -154,10 +154,10 @@ Index: libvirt-6.0.0/src/interface/interface_backend_netcf.c
if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0)
return -1;
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
Index: libvirt-6.0.0/src/interface/interface_driver.c
Index: libvirt-6.1.0/src/interface/interface_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/interface/interface_driver.c
+++ libvirt-6.0.0/src/interface/interface_driver.c
--- libvirt-6.1.0.orig/src/interface/interface_driver.c
+++ libvirt-6.1.0/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@ -175,10 +175,10 @@ Index: libvirt-6.0.0/src/interface/interface_driver.c
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
Index: libvirt-6.0.0/m4/virt-netcontrol.m4
Index: libvirt-6.1.0/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
+++ libvirt-6.0.0/m4/virt-netcontrol.m4
+++ libvirt-6.1.0/m4/virt-netcontrol.m4
@@ -0,0 +1,39 @@
+dnl The libnetcontrol library
+dnl
@ -219,10 +219,10 @@ Index: libvirt-6.0.0/m4/virt-netcontrol.m4
+AC_DEFUN([LIBVIRT_RESULT_NETCONTROL],[
+ LIBVIRT_RESULT_LIB([NETCONTROL])
+])
Index: libvirt-6.0.0/src/interface/Makefile.inc.am
Index: libvirt-6.1.0/src/interface/Makefile.inc.am
===================================================================
--- libvirt-6.0.0.orig/src/interface/Makefile.inc.am
+++ libvirt-6.0.0/src/interface/Makefile.inc.am
--- libvirt-6.1.0.orig/src/interface/Makefile.inc.am
+++ libvirt-6.1.0/src/interface/Makefile.inc.am
@@ -6,6 +6,7 @@ INTERFACE_DRIVER_SOURCES = \
$(NULL)

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Thu Mar 5 04:09:43 UTC 2020 - James Fehlig <jfehlig@suse.com>
- Update to libvirt 6.1.0
- Many incremental improvements and bug fixes, see
https://libvirt.org/news.html
- Dropped patches:
6c1dddaf-libxl-shutdown-inhibit.patch,
849052ec-libxl-support-credit2.patch,
72ed254b-drop-exec-perms-bashcompletion.patch,
e092daac-prohib-parallel-tunneled-mig.patch,
ae9e6c2a-qemu-allow-cond-format-probe.patch
-------------------------------------------------------------------
Tue Mar 3 23:22:42 UTC 2020 - James Fehlig <jfehlig@suse.com>

View File

@ -185,7 +185,7 @@
Name: libvirt
URL: http://libvirt.org/
Version: 6.0.0
Version: 6.1.0
Release: 0
Summary: Library providing a virtualization API
License: LGPL-2.1-or-later
@ -257,7 +257,7 @@ BuildRequires: pkgconfig(libudev) >= 145
BuildRequires: sanlock-devel >= 2.4
%endif
BuildRequires: libnl3-devel
BuildRequires: libpcap-devel
BuildRequires: libpcap-devel >= 1.5.0
BuildRequires: libselinux-devel
%if 0%{?suse_version} >= 1330
BuildRequires: libtirpc-devel
@ -338,11 +338,6 @@ Source6: libvirtd-relocation-server.xml
Source99: baselibs.conf
Source100: %{name}-rpmlintrc
# Upstream patches
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
Patch4: ae9e6c2a-qemu-allow-cond-format-probe.patch
# Patches pending upstream review
Patch100: libxl-dom-reset.patch
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
@ -876,11 +871,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch100 -p1
%patch101 -p1
%patch150 -p1
@ -1731,6 +1721,8 @@ fi
%dir %attr(0711, root, root) %{_localstatedir}/log/swtpm/
%dir %attr(0711, root, root) %{_localstatedir}/log/swtpm/%{name}/
%dir %attr(0711, root, root) %{_localstatedir}/log/swtpm/%{name}/qemu/
%{_bindir}/virt-qemu-run
%{_mandir}/man1/virt-qemu-run.1*
%endif
%if %{with_lxc}

View File

@ -8,11 +8,11 @@ Date: Mon Jun 23 15:51:20 2014 -0600
option, but domainReset can be implemented in the libxl driver by
forcibly destroying the domain and starting it again.
Index: libvirt-6.0.0/src/libxl/libxl_driver.c
Index: libvirt-6.1.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.0.0/src/libxl/libxl_driver.c
@@ -1364,6 +1364,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
--- libvirt-6.1.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.1.0/src/libxl/libxl_driver.c
@@ -1372,6 +1372,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
}
static int
@ -74,7 +74,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_driver.c
libxlDomainDestroyFlags(virDomainPtr dom,
unsigned int flags)
{
@@ -6573,6 +6628,7 @@ static virHypervisorDriver libxlHypervis
@@ -6581,6 +6636,7 @@ static virHypervisorDriver libxlHypervis
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
.domainReboot = libxlDomainReboot, /* 0.9.0 */

View File

@ -3,11 +3,11 @@ https://bugzilla.novell.com/show_bug.cgi?id=879425
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
Index: libvirt-6.0.0/src/libxl/libxl_conf.c
Index: libvirt-6.1.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
@@ -867,6 +867,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
--- libvirt-6.1.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.1.0/src/libxl/libxl_conf.c
@@ -866,6 +866,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}
@ -38,7 +38,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_conf.c
static char *
libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
const char *username,
@@ -1108,6 +1132,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
@@ -1107,6 +1131,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;

View File

@ -16,10 +16,10 @@ Signed-off-by: Jim Fehlig <jfehlig@suse.com>
tools/virsh.pod | 8 ++++++++
6 files changed, 125 insertions(+), 6 deletions(-)
Index: libvirt-6.0.0/include/libvirt/libvirt-domain.h
Index: libvirt-6.1.0/include/libvirt/libvirt-domain.h
===================================================================
--- libvirt-6.0.0.orig/include/libvirt/libvirt-domain.h
+++ libvirt-6.0.0/include/libvirt/libvirt-domain.h
--- libvirt-6.1.0.orig/include/libvirt/libvirt-domain.h
+++ libvirt-6.1.0/include/libvirt/libvirt-domain.h
@@ -1065,6 +1065,31 @@ typedef enum {
*/
# define VIR_MIGRATE_PARAM_TLS_DESTINATION "tls.destination"
@ -52,11 +52,11 @@ Index: libvirt-6.0.0/include/libvirt/libvirt-domain.h
/* Domain migration. */
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
unsigned long flags, const char *dname,
Index: libvirt-6.0.0/src/libxl/libxl_driver.c
Index: libvirt-6.1.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.0.0/src/libxl/libxl_driver.c
@@ -6138,6 +6138,9 @@ libxlDomainMigratePerform3Params(virDoma
--- libvirt-6.1.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.1.0/src/libxl/libxl_driver.c
@@ -6146,6 +6146,9 @@ libxlDomainMigratePerform3Params(virDoma
const char *dname = NULL;
const char *uri = NULL;
int ret = -1;
@ -66,7 +66,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_driver.c
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
virReportUnsupportedError();
@@ -6154,6 +6157,18 @@ libxlDomainMigratePerform3Params(virDoma
@@ -6162,6 +6165,18 @@ libxlDomainMigratePerform3Params(virDoma
virTypedParamsGetString(params, nparams,
VIR_MIGRATE_PARAM_DEST_NAME,
&dname) < 0 ||
@ -85,7 +85,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_driver.c
virTypedParamsGetString(params, nparams,
VIR_MIGRATE_PARAM_URI,
&uri) < 0)
@@ -6168,11 +6183,11 @@ libxlDomainMigratePerform3Params(virDoma
@@ -6176,11 +6191,11 @@ libxlDomainMigratePerform3Params(virDoma
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
@ -99,11 +99,11 @@ Index: libvirt-6.0.0/src/libxl/libxl_driver.c
goto cleanup;
}
Index: libvirt-6.0.0/src/libxl/libxl_migration.c
Index: libvirt-6.1.0/src/libxl/libxl_migration.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_migration.c
+++ libvirt-6.0.0/src/libxl/libxl_migration.c
@@ -338,18 +338,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
--- libvirt-6.1.0.orig/src/libxl/libxl_migration.c
+++ libvirt-6.1.0/src/libxl/libxl_migration.c
@@ -339,18 +339,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
static int
libxlDoMigrateSrcSend(libxlDriverPrivatePtr driver,
virDomainObjPtr vm,
@ -145,7 +145,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
if (ret != 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Failed to send migration data to destination host"));
@@ -902,7 +923,7 @@ struct libxlTunnelControl {
@@ -903,7 +924,7 @@ struct libxlTunnelControl {
static int
libxlMigrationSrcStartTunnel(libxlDriverPrivatePtr driver,
virDomainObjPtr vm,
@ -154,7 +154,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
virStreamPtr st,
struct libxlTunnelControl **tnl)
{
@@ -935,7 +956,7 @@ libxlMigrationSrcStartTunnel(libxlDriver
@@ -934,7 +955,7 @@ libxlMigrationSrcStartTunnel(libxlDriver
virObjectUnlock(vm);
/* Send data to pipe */
@ -163,7 +163,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
virObjectLock(vm);
out:
@@ -971,7 +992,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
@@ -970,7 +991,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
const char *dconnuri G_GNUC_UNUSED,
const char *dname,
const char *uri,
@ -172,7 +172,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
{
virDomainPtr ddomain = NULL;
virTypedParameterPtr params = NULL;
@@ -1016,11 +1037,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
@@ -1015,11 +1036,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
/* We don't require the destination to have P2P support
* as it looks to be normal migration from the receiver perspective.
*/
@ -186,7 +186,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
if (!(st = virStreamNew(dconn, 0)))
goto confirm;
ret = dconn->driver->domainMigratePrepareTunnel3Params
@@ -1034,7 +1055,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
@@ -1033,7 +1054,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
if (ret == -1)
goto confirm;
@ -195,7 +195,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
if (uri_out) {
if (virTypedParamsReplaceString(&params, &nparams,
VIR_MIGRATE_PARAM_URI, uri_out) < 0) {
@@ -1049,11 +1070,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
@@ -1048,11 +1069,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
}
VIR_DEBUG("Perform3 uri=%s", NULLSTR(uri_out));
@ -210,7 +210,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
if (ret < 0) {
notify_source = false;
virErrorPreserveLast(&orig_err);
@@ -1088,7 +1109,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
@@ -1087,7 +1108,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
confirm:
if (notify_source) {
VIR_DEBUG("Confirm3 cancelled=%d vm=%p", cancelled, vm);
@ -219,7 +219,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
if (ret < 0)
VIR_WARN("Guest %s probably left in 'paused' state on source",
@@ -1096,7 +1117,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
@@ -1095,7 +1116,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
}
cleanup:
@ -228,7 +228,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
libxlMigrationSrcStopTunnel(tc);
virObjectUnref(st);
}
@@ -1140,7 +1161,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
@@ -1139,7 +1160,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
const char *dconnuri,
const char *uri_str G_GNUC_UNUSED,
const char *dname,
@ -237,7 +237,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
{
int ret = -1;
bool useParams;
@@ -1175,7 +1196,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
@@ -1174,7 +1195,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
}
ret = libxlDoMigrateSrcP2P(driver, vm, sconn, xmlin, dconn, dconnuri,
@ -246,7 +246,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
if (ret < 0) {
/*
@@ -1202,7 +1223,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
@@ -1201,7 +1222,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
const char *dconnuri G_GNUC_UNUSED,
const char *uri_str,
const char *dname G_GNUC_UNUSED,
@ -255,7 +255,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
{
libxlDomainObjPrivatePtr priv = vm->privateData;
char *hostname = NULL;
@@ -1238,7 +1259,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
@@ -1237,7 +1258,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
/* suspend vm and send saved data to dst through socket fd */
virObjectUnlock(vm);
@ -264,10 +264,10 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.c
virObjectLock(vm);
if (ret == 0) {
Index: libvirt-6.0.0/src/libxl/libxl_migration.h
Index: libvirt-6.1.0/src/libxl/libxl_migration.h
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl_migration.h
+++ libvirt-6.0.0/src/libxl/libxl_migration.h
--- libvirt-6.1.0.orig/src/libxl/libxl_migration.h
+++ libvirt-6.1.0/src/libxl/libxl_migration.h
@@ -35,6 +35,10 @@
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
@ -312,11 +312,11 @@ Index: libvirt-6.0.0/src/libxl/libxl_migration.h
virDomainPtr
libxlDomainMigrationDstFinish(virConnectPtr dconn,
Index: libvirt-6.0.0/tools/virsh-domain.c
Index: libvirt-6.1.0/tools/virsh-domain.c
===================================================================
--- libvirt-6.0.0.orig/tools/virsh-domain.c
+++ libvirt-6.0.0/tools/virsh-domain.c
@@ -10589,6 +10589,22 @@ static const vshCmdOptDef opts_migrate[]
--- libvirt-6.1.0.orig/tools/virsh-domain.c
+++ libvirt-6.1.0/tools/virsh-domain.c
@@ -10713,6 +10713,22 @@ static const vshCmdOptDef opts_migrate[]
.type = VSH_OT_STRING,
.help = N_("override the destination host name used for TLS verification")
},
@ -339,15 +339,15 @@ Index: libvirt-6.0.0/tools/virsh-domain.c
{.name = NULL}
};
@@ -10612,6 +10628,7 @@ doMigrate(void *opaque)
@@ -10735,6 +10751,7 @@ doMigrate(void *opaque)
unsigned long long ullOpt = 0;
int rv;
virConnectPtr dconn = data->dconn;
+ unsigned int uint_opt = 0;
#ifndef WIN32
sigset_t sigmask, oldsigmask;
sigemptyset(&sigmask);
sigaddset(&sigmask, SIGINT);
@@ -10731,6 +10748,27 @@ doMigrate(void *opaque)
@@ -10857,6 +10874,27 @@ doMigrate(void *opaque)
goto save_error;
}
@ -375,11 +375,11 @@ Index: libvirt-6.0.0/tools/virsh-domain.c
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
goto out;
if (opt) {
Index: libvirt-6.0.0/docs/manpages/virsh.rst
Index: libvirt-6.1.0/docs/manpages/virsh.rst
===================================================================
--- libvirt-6.0.0.orig/docs/manpages/virsh.rst
+++ libvirt-6.0.0/docs/manpages/virsh.rst
@@ -3088,6 +3088,8 @@ migrate
--- libvirt-6.1.0.orig/docs/manpages/virsh.rst
+++ libvirt-6.1.0/docs/manpages/virsh.rst
@@ -3093,6 +3093,8 @@ migrate
[--postcopy-bandwidth bandwidth]
[--parallel [--parallel-connections connections]]
[--bandwidth bandwidth] [--tls-destination hostname]
@ -388,7 +388,7 @@ Index: libvirt-6.0.0/docs/manpages/virsh.rst
Migrate domain to another host. Add *--live* for live migration; <--p2p>
for peer-2-peer migration; *--direct* for direct migration; or *--tunnelled*
@@ -3193,6 +3195,14 @@ parallel connections. The number of such
@@ -3198,6 +3200,14 @@ parallel connections. The number of such
network link between the source and the target and thus speeding up the
migration.

View File

@ -7,11 +7,11 @@ and npiv.
For more details, see bsc#954872 and FATE#319810
Index: libvirt-6.0.0/src/libxl/libxl_conf.c
Index: libvirt-6.1.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
@@ -867,6 +867,22 @@ libxlDiskSetDiscard(libxl_device_disk *x
--- libvirt-6.1.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.1.0/src/libxl/libxl_conf.c
@@ -866,6 +866,22 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}
@ -34,7 +34,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_conf.c
static void
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
{
@@ -1007,6 +1023,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
@@ -1006,6 +1022,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
int
libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk *x_disk)
{
@ -42,7 +42,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_conf.c
const char *driver = virDomainDiskGetDriver(l_disk);
int format = virDomainDiskGetFormat(l_disk);
int actual_type = virStorageSourceGetActualType(l_disk->src);
@@ -1022,7 +1039,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
@@ -1021,7 +1038,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
return -1;
} else {
@ -51,7 +51,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_conf.c
}
x_disk->vdev = g_strdup(l_disk->dst);
@@ -1133,6 +1150,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
@@ -1132,6 +1149,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
return -1;
libxlDiskSetCacheMode(x_disk, l_disk->cachemode);

View File

@ -13,19 +13,11 @@ device with the same name that is being created.
src/lxc/lxc_process.c | 1 +
3 files changed, 4 insertions(+)
Index: libvirt-6.0.0/src/lxc/lxc_controller.c
Index: libvirt-6.1.0/src/lxc/lxc_controller.c
===================================================================
--- libvirt-6.0.0.orig/src/lxc/lxc_controller.c
+++ libvirt-6.0.0/src/lxc/lxc_controller.c
@@ -69,6 +69,7 @@
#include "rpc/virnetdaemon.h"
#include "virstring.h"
#include "virgettext.h"
+#include "virutil.h"
#define VIR_FROM_THIS VIR_FROM_LXC
@@ -2009,6 +2010,7 @@ static int virLXCControllerDeleteInterfa
--- libvirt-6.1.0.orig/src/lxc/lxc_controller.c
+++ libvirt-6.1.0/src/lxc/lxc_controller.c
@@ -1985,6 +1985,7 @@ static int virLXCControllerDeleteInterfa
if (virNetDevVethDelete(ctrl->veths[i]) < 0)
ret = -1;
}
@ -33,11 +25,11 @@ Index: libvirt-6.0.0/src/lxc/lxc_controller.c
return ret;
}
Index: libvirt-6.0.0/src/lxc/lxc_driver.c
Index: libvirt-6.1.0/src/lxc/lxc_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.0.0/src/lxc/lxc_driver.c
@@ -70,6 +70,7 @@
--- libvirt-6.1.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.1.0/src/lxc/lxc_driver.c
@@ -67,6 +67,7 @@
#include "virtime.h"
#include "virtypedparam.h"
#include "viruri.h"
@ -45,7 +37,7 @@ Index: libvirt-6.0.0/src/lxc/lxc_driver.c
#include "virstring.h"
#include "viraccessapicheck.h"
#include "viraccessapichecklxc.h"
@@ -3903,6 +3904,7 @@ lxcDomainAttachDeviceNetLive(virLXCDrive
@@ -3551,6 +3552,7 @@ lxcDomainAttachDeviceNetLive(virLXCDrive
case VIR_DOMAIN_NET_TYPE_NETWORK:
case VIR_DOMAIN_NET_TYPE_ETHERNET:
ignore_value(virNetDevVethDelete(veth));
@ -53,7 +45,7 @@ Index: libvirt-6.0.0/src/lxc/lxc_driver.c
break;
case VIR_DOMAIN_NET_TYPE_DIRECT:
@@ -4343,6 +4345,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
@@ -3991,6 +3993,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
virDomainAuditNet(vm, detach, NULL, "detach", false);
goto cleanup;
}
@ -61,18 +53,18 @@ Index: libvirt-6.0.0/src/lxc/lxc_driver.c
break;
/* It'd be nice to support this, but with macvlan
Index: libvirt-6.0.0/src/lxc/lxc_process.c
Index: libvirt-6.1.0/src/lxc/lxc_process.c
===================================================================
--- libvirt-6.0.0.orig/src/lxc/lxc_process.c
+++ libvirt-6.0.0/src/lxc/lxc_process.c
@@ -51,6 +51,7 @@
#include "viratomic.h"
--- libvirt-6.1.0.orig/src/lxc/lxc_process.c
+++ libvirt-6.1.0/src/lxc/lxc_process.c
@@ -50,6 +50,7 @@
#include "virstring.h"
#include "virprocess.h"
#include "virsystemd.h"
+#include "virutil.h"
#include "netdev_bandwidth_conf.h"
#include "virutil.h"
#define VIR_FROM_THIS VIR_FROM_LXC
@@ -231,6 +232,7 @@ static void virLXCProcessCleanup(virLXCD
VIR_WARN("Unable to release network device '%s'", NULLSTR(iface->ifname));
}

View File

@ -17,11 +17,11 @@ Signed-off-by: Martin Wilck <mwilck@suse.com>
tests/networkxml2confdata/dhcp6host-routed-network.conf | 1 -
2 files changed, 8 insertions(+), 2 deletions(-)
Index: libvirt-6.0.0/src/network/bridge_driver.c
Index: libvirt-6.1.0/src/network/bridge_driver.c
===================================================================
--- libvirt-6.0.0.orig/src/network/bridge_driver.c
+++ libvirt-6.0.0/src/network/bridge_driver.c
@@ -1497,7 +1497,14 @@ networkDnsmasqConfContents(virNetworkObj
--- libvirt-6.1.0.orig/src/network/bridge_driver.c
+++ libvirt-6.1.0/src/network/bridge_driver.c
@@ -1506,7 +1506,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 @@ Index: libvirt-6.0.0/src/network/bridge_driver.c
}
if (ipdef->tftproot) {
Index: libvirt-6.0.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
Index: libvirt-6.1.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
===================================================================
--- libvirt-6.0.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
+++ libvirt-6.0.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
--- libvirt-6.1.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
+++ libvirt-6.1.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
@@ -10,7 +10,6 @@ bind-dynamic
interface=virbr1
dhcp-range=192.168.122.1,static

View File

@ -2,11 +2,11 @@ Canonicalize hostarch name ppc64le to ppc64
See bnc#894956
Index: libvirt-6.0.0/src/util/virarch.c
Index: libvirt-6.1.0/src/util/virarch.c
===================================================================
--- libvirt-6.0.0.orig/src/util/virarch.c
+++ libvirt-6.0.0/src/util/virarch.c
@@ -172,6 +172,8 @@ virArch virArchFromHost(void)
--- libvirt-6.1.0.orig/src/util/virarch.c
+++ libvirt-6.1.0/src/util/virarch.c
@@ -220,6 +220,8 @@ virArch virArchFromHost(void)
arch = VIR_ARCH_I686;
} else if (STREQ(ut.machine, "amd64")) {
arch = VIR_ARCH_X86_64;

View File

@ -1,7 +1,7 @@
Index: libvirt-6.0.0/src/security/apparmor/libvirt-qemu
Index: libvirt-6.1.0/src/security/apparmor/libvirt-qemu
===================================================================
--- libvirt-6.0.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.0.0/src/security/apparmor/libvirt-qemu
--- libvirt-6.1.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.1.0/src/security/apparmor/libvirt-qemu
@@ -228,3 +228,6 @@
# required for sasl GSSAPI plugin
/etc/gss/mech.d/ r,

View File

@ -8,10 +8,10 @@ Subject: [PATCH] support managed pci devices in xen driver
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 15 deletions(-)
Index: libvirt-6.0.0/src/libxl/xen_common.c
Index: libvirt-6.1.0/src/libxl/xen_common.c
===================================================================
--- libvirt-6.0.0.orig/src/libxl/xen_common.c
+++ libvirt-6.0.0/src/libxl/xen_common.c
--- libvirt-6.1.0.orig/src/libxl/xen_common.c
+++ libvirt-6.1.0/src/libxl/xen_common.c
@@ -381,12 +381,19 @@ xenParsePCI(char *entry)
int busID;
int slotID;

View File

@ -8,11 +8,11 @@ It was also noticed that the per-domain profiles need a libnl rule
to squelch a denial when starting confined domains.
Found while investigating bsc#1058847
Index: libvirt-6.0.0/src/security/apparmor/libvirt-qemu
Index: libvirt-6.1.0/src/security/apparmor/libvirt-qemu
===================================================================
--- libvirt-6.0.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.0.0/src/security/apparmor/libvirt-qemu
@@ -63,6 +63,7 @@
--- libvirt-6.1.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.1.0/src/security/apparmor/libvirt-qemu
@@ -61,6 +61,7 @@
#/dev/fb* rw,
/etc/pulse/client.conf r,
@ -20,16 +20,16 @@ Index: libvirt-6.0.0/src/security/apparmor/libvirt-qemu
@{HOME}/.pulse-cookie rwk,
owner /root/.pulse-cookie rwk,
owner /root/.pulse/ rw,
Index: libvirt-6.0.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
Index: libvirt-6.1.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
===================================================================
--- libvirt-6.0.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
+++ libvirt-6.0.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
@@ -20,7 +20,7 @@ profile virt-aa-helper /usr/{lib,lib64}/
--- libvirt-6.1.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
+++ libvirt-6.1.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
@@ -19,7 +19,7 @@ profile virt-aa-helper @libexecdir@/virt
# Used when internally running another command (namely apparmor_parser)
@{PROC}/@{pid}/fd/ r,
- /etc/libnl-3/classid r,
+ /etc/libnl*/classid r,
- @sysconfdir@/libnl-3/classid r,
+ @sysconfdir@/libnl*/classid r,
# for gl enabled graphics
/dev/dri/{,*} r,

View File

@ -1,9 +1,9 @@
Adjust libvirt-guests service to conform to SUSE standards
Index: libvirt-6.0.0/tools/libvirt-guests.sh.in
Index: libvirt-6.1.0/tools/libvirt-guests.sh.in
===================================================================
--- libvirt-6.0.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-6.0.0/tools/libvirt-guests.sh.in
--- libvirt-6.1.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-6.1.0/tools/libvirt-guests.sh.in
@@ -16,14 +16,13 @@
# License along with this library. If not, see
# <http://www.gnu.org/licenses/>.
@ -163,10 +163,10 @@ Index: libvirt-6.0.0/tools/libvirt-guests.sh.in
esac
-exit $RETVAL
+rc_exit
Index: libvirt-6.0.0/tools/libvirt-guests.sysconf
Index: libvirt-6.1.0/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-6.0.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-6.0.0/tools/libvirt-guests.sysconf
--- libvirt-6.1.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-6.1.0/tools/libvirt-guests.sysconf
@@ -1,19 +1,29 @@
+## Path: System/Virtualization/libvirt-guests
+

View File

@ -3,10 +3,10 @@ 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-6.0.0/src/remote/remote_daemon_config.c
Index: libvirt-6.1.0/src/remote/remote_daemon_config.c
===================================================================
--- libvirt-6.0.0.orig/src/remote/remote_daemon_config.c
+++ libvirt-6.0.0/src/remote/remote_daemon_config.c
--- libvirt-6.1.0.orig/src/remote/remote_daemon_config.c
+++ libvirt-6.1.0/src/remote/remote_daemon_config.c
@@ -99,7 +99,7 @@ daemonConfigNew(bool privileged G_GNUC_U
#ifdef WITH_IP
@ -16,10 +16,10 @@ Index: libvirt-6.0.0/src/remote/remote_daemon_config.c
# else /* ! LIBVIRTD */
data->listen_tls = 0; /* Always honoured, --listen doesn't exist. */
# endif /* ! LIBVIRTD */
Index: libvirt-6.0.0/src/remote/libvirtd.conf.in
Index: libvirt-6.1.0/src/remote/libvirtd.conf.in
===================================================================
--- libvirt-6.0.0.orig/src/remote/libvirtd.conf.in
+++ libvirt-6.0.0/src/remote/libvirtd.conf.in
--- libvirt-6.1.0.orig/src/remote/libvirtd.conf.in
+++ libvirt-6.1.0/src/remote/libvirtd.conf.in
@@ -17,8 +17,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.

View File

@ -1,9 +1,9 @@
Adjust libvirtd sysconfig file to conform to SUSE standards
Index: libvirt-6.0.0/src/remote/libvirtd.sysconf
Index: libvirt-6.1.0/src/remote/libvirtd.sysconf
===================================================================
--- libvirt-6.0.0.orig/src/remote/libvirtd.sysconf
+++ libvirt-6.0.0/src/remote/libvirtd.sysconf
--- libvirt-6.1.0.orig/src/remote/libvirtd.sysconf
+++ libvirt-6.1.0/src/remote/libvirtd.sysconf
@@ -1,5 +1,9 @@
+## Path: System/Virtualization/libvirt
# Customizations for the libvirtd.service systemd unit

View File

@ -6,10 +6,10 @@ autoballooning. This patch changes libvirt to also disable autoballooning
by default. It can only be enabled with the 'autoballoon' setting in
libxl.conf. See jsc#SLE-3059 for more details.
Index: libvirt-6.0.0/src/libxl/libxl.conf
Index: libvirt-6.1.0/src/libxl/libxl.conf
===================================================================
--- libvirt-6.0.0.orig/src/libxl/libxl.conf
+++ libvirt-6.0.0/src/libxl/libxl.conf
--- libvirt-6.1.0.orig/src/libxl/libxl.conf
+++ libvirt-6.1.0/src/libxl/libxl.conf
@@ -4,12 +4,11 @@
# Enable autoballooning of domain0
@ -27,11 +27,11 @@ Index: libvirt-6.0.0/src/libxl/libxl.conf
# In order to prevent accidentally starting two domains that
Index: libvirt-6.0.0/src/libxl/libxl_conf.c
Index: libvirt-6.1.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
@@ -1699,15 +1699,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
--- libvirt-6.1.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.1.0/src/libxl/libxl_conf.c
@@ -1698,15 +1698,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
/*
* Get domain0 autoballoon configuration. Honor user-specified
* setting in libxl.conf first. If not specified, autoballooning
@ -48,7 +48,7 @@ Index: libvirt-6.0.0/src/libxl/libxl_conf.c
int res;
res = virConfGetValueBool(conf, "autoballoon", &cfg->autoballoon);
@@ -1716,15 +1713,8 @@ libxlGetAutoballoonConf(libxlDriverConfi
@@ -1715,15 +1712,8 @@ libxlGetAutoballoonConf(libxlDriverConfi
else if (res == 1)
return 0;

View File

@ -1,9 +1,9 @@
Adjust paths of OVMF firmwares on SUSE distros
Index: libvirt-6.0.0/src/qemu/qemu.conf
Index: libvirt-6.1.0/src/qemu/qemu.conf
===================================================================
--- libvirt-6.0.0.orig/src/qemu/qemu.conf
+++ libvirt-6.0.0/src/qemu/qemu.conf
--- libvirt-6.1.0.orig/src/qemu/qemu.conf
+++ libvirt-6.1.0/src/qemu/qemu.conf
@@ -788,10 +788,9 @@
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
# follows this scheme.
@ -18,11 +18,11 @@ Index: libvirt-6.0.0/src/qemu/qemu.conf
#]
# The backend to use for handling stdout/stderr output from
Index: libvirt-6.0.0/src/qemu/qemu_conf.c
Index: libvirt-6.1.0/src/qemu/qemu_conf.c
===================================================================
--- libvirt-6.0.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.0.0/src/qemu/qemu_conf.c
@@ -97,10 +97,9 @@ qemuDriverUnlock(virQEMUDriverPtr driver
--- libvirt-6.1.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.1.0/src/qemu/qemu_conf.c
@@ -95,10 +95,9 @@ qemuDriverUnlock(virQEMUDriverPtr driver
#ifndef DEFAULT_LOADER_NVRAM
# define DEFAULT_LOADER_NVRAM \
@ -36,11 +36,11 @@ Index: libvirt-6.0.0/src/qemu/qemu_conf.c
#endif
Index: libvirt-6.0.0/src/security/virt-aa-helper.c
Index: libvirt-6.1.0/src/security/virt-aa-helper.c
===================================================================
--- libvirt-6.0.0.orig/src/security/virt-aa-helper.c
+++ libvirt-6.0.0/src/security/virt-aa-helper.c
@@ -489,7 +489,8 @@ valid_path(const char *path, const bool
--- libvirt-6.1.0.orig/src/security/virt-aa-helper.c
+++ libvirt-6.1.0/src/security/virt-aa-helper.c
@@ -490,7 +490,8 @@ valid_path(const char *path, const bool
"/usr/share/ovmf/", /* for OVMF images */
"/usr/share/AAVMF/", /* for AAVMF images */
"/usr/share/qemu-efi/", /* for AAVMF images */

View File

@ -7,10 +7,10 @@ suse-qemu-conf-secdriver.patch, suse-qemu-conf-lockmgr.patch,
etc.), but for now they are all lumped together in this
single patch.
Index: libvirt-6.0.0/src/qemu/qemu.conf
Index: libvirt-6.1.0/src/qemu/qemu.conf
===================================================================
--- libvirt-6.0.0.orig/src/qemu/qemu.conf
+++ libvirt-6.0.0/src/qemu/qemu.conf
--- libvirt-6.1.0.orig/src/qemu/qemu.conf
+++ libvirt-6.1.0/src/qemu/qemu.conf
@@ -420,10 +420,19 @@
# isolation, but it cannot appear in a list of drivers.
#
@ -60,11 +60,11 @@ Index: libvirt-6.0.0/src/qemu/qemu.conf
#
#lock_manager = "lockd"
Index: libvirt-6.0.0/src/qemu/qemu_conf.c
Index: libvirt-6.1.0/src/qemu/qemu_conf.c
===================================================================
--- libvirt-6.0.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.0.0/src/qemu/qemu_conf.c
@@ -229,7 +229,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf
--- libvirt-6.1.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.1.0/src/qemu/qemu_conf.c
@@ -263,7 +263,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf
cfg->prHelperName = g_strdup(QEMU_PR_HELPER);
cfg->slirpHelperName = g_strdup(QEMU_SLIRP_HELPER);

View File

@ -1,9 +1,9 @@
Adjust virtlockd sysconfig file to conform to SUSE standards
Index: libvirt-6.0.0/src/locking/virtlockd.sysconf
Index: libvirt-6.1.0/src/locking/virtlockd.sysconf
===================================================================
--- libvirt-6.0.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-6.0.0/src/locking/virtlockd.sysconf
--- libvirt-6.1.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-6.1.0/src/locking/virtlockd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlockd
+

View File

@ -1,9 +1,9 @@
Adjust virtlogd sysconfig file to conform to SUSE standards
Index: libvirt-6.0.0/src/logging/virtlogd.sysconf
Index: libvirt-6.1.0/src/logging/virtlogd.sysconf
===================================================================
--- libvirt-6.0.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-6.0.0/src/logging/virtlogd.sysconf
--- libvirt-6.1.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-6.1.0/src/logging/virtlogd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlogd
+

View File

@ -5,13 +5,13 @@ 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
Index: libvirt-6.1.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;
}
--- libvirt-6.1.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.1.0/src/libxl/libxl_conf.c
@@ -1738,6 +1738,15 @@ libxlDriverConfigNew(void)
cfg->autoDumpDir = g_strdup(LIBXL_DUMP_DIR);
cfg->channelDir = g_strdup(LIBXL_CHANNEL_DIR);
+ /* Begin hack ---
+ * bsc#1159793: Until there is time to work on proper upstream support for

View File

@ -1,8 +1,8 @@
Index: libvirt-6.0.0/tools/Makefile.am
Index: libvirt-6.1.0/tools/Makefile.am
===================================================================
--- libvirt-6.0.0.orig/tools/Makefile.am
+++ libvirt-6.0.0/tools/Makefile.am
@@ -71,7 +71,7 @@ MAINTAINERCLEANFILES =
--- libvirt-6.1.0.orig/tools/Makefile.am
+++ libvirt-6.1.0/tools/Makefile.am
@@ -70,7 +70,7 @@ MAINTAINERCLEANFILES =
confdir = $(sysconfdir)/libvirt
conf_DATA =
@ -11,10 +11,10 @@ Index: libvirt-6.0.0/tools/Makefile.am
bin_PROGRAMS = virsh virt-admin
libexec_SCRIPTS = libvirt-guests.sh
Index: libvirt-6.0.0/tools/virt-create-rootfs
Index: libvirt-6.1.0/tools/virt-create-rootfs
===================================================================
--- /dev/null
+++ libvirt-6.0.0/tools/virt-create-rootfs
+++ libvirt-6.1.0/tools/virt-create-rootfs
@@ -0,0 +1,231 @@
+#!/bin/sh
+set -e
@ -247,10 +247,10 @@ Index: libvirt-6.0.0/tools/virt-create-rootfs
+ echo "pts/0" >> "$ROOT/etc/securetty"
+ chroot "$ROOT" /usr/bin/passwd
+fi
Index: libvirt-6.0.0/docs/Makefile.am
Index: libvirt-6.1.0/docs/Makefile.am
===================================================================
--- libvirt-6.0.0.orig/docs/Makefile.am
+++ libvirt-6.0.0/docs/Makefile.am
--- libvirt-6.1.0.orig/docs/Makefile.am
+++ libvirt-6.1.0/docs/Makefile.am
@@ -209,6 +209,7 @@ manpages1_rst = \
manpages/virt-xml-validate.rst \
manpages/virt-admin.rst \
@ -259,10 +259,10 @@ Index: libvirt-6.0.0/docs/Makefile.am
$(NULL)
manpages7_rst = \
$(KEYCODES:%=manpages/virkeycode-%.rst) \
Index: libvirt-6.0.0/docs/manpages/virt-create-rootfs.rst
Index: libvirt-6.1.0/docs/manpages/virt-create-rootfs.rst
===================================================================
--- /dev/null
+++ libvirt-6.0.0/docs/manpages/virt-create-rootfs.rst
+++ libvirt-6.1.0/docs/manpages/virt-create-rootfs.rst
@@ -0,0 +1,88 @@
+==================
+virt-create-rootfs