forked from pool/libvirt
Accepting request 839020 from home:jfehlig:branches:Virtualization
- Update to libvirt 6.8.0 - jsc#SLE-12684, jsc#SLE-15861 - bsc#1174955 (CVE-2020-15708) - bsc#1177155 (CVE-2020-25637) - Many incremental improvements and bug fixes, see https://libvirt.org/news.html - Dropped patches: 2ad009ea-qemu-check-modules-dir.patch, 8abd1ffe-qemu-tolerate-non-existent-files.patch, 4a72b76b-qemu-namespace-memleak-fix.patch OBS-URL: https://build.opensuse.org/request/show/839020 OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=845
This commit is contained in:
parent
6a7adc1de1
commit
2cdc10fadb
@ -18,10 +18,10 @@ them.
|
|||||||
create mode 100644 src/conf/domain_stats.c
|
create mode 100644 src/conf/domain_stats.c
|
||||||
create mode 100644 src/conf/domain_stats.h
|
create mode 100644 src/conf/domain_stats.h
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/conf/domain_stats.c
|
Index: libvirt-6.8.0/src/conf/domain_stats.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ libvirt-6.7.0/src/conf/domain_stats.c
|
+++ libvirt-6.8.0/src/conf/domain_stats.c
|
||||||
@@ -0,0 +1,119 @@
|
@@ -0,0 +1,119 @@
|
||||||
+/*
|
+/*
|
||||||
+ * domain_stats.c: domain stats extraction helpers
|
+ * domain_stats.c: domain stats extraction helpers
|
||||||
@ -142,10 +142,10 @@ Index: libvirt-6.7.0/src/conf/domain_stats.c
|
|||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
+#undef STATS_ADD_NET_PARAM
|
+#undef STATS_ADD_NET_PARAM
|
||||||
Index: libvirt-6.7.0/src/conf/domain_stats.h
|
Index: libvirt-6.8.0/src/conf/domain_stats.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ libvirt-6.7.0/src/conf/domain_stats.h
|
+++ libvirt-6.8.0/src/conf/domain_stats.h
|
||||||
@@ -0,0 +1,62 @@
|
@@ -0,0 +1,62 @@
|
||||||
+/*
|
+/*
|
||||||
+ * domain_stats.h: domain stats extraction helpers
|
+ * domain_stats.h: domain stats extraction helpers
|
||||||
@ -209,11 +209,11 @@ Index: libvirt-6.7.0/src/conf/domain_stats.h
|
|||||||
+ virTypedParamListPtr params);
|
+ virTypedParamListPtr params);
|
||||||
+
|
+
|
||||||
+#endif /* __DOMAIN_STATS_H */
|
+#endif /* __DOMAIN_STATS_H */
|
||||||
Index: libvirt-6.7.0/src/libvirt_private.syms
|
Index: libvirt-6.8.0/src/libvirt_private.syms
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libvirt_private.syms
|
--- libvirt-6.8.0.orig/src/libvirt_private.syms
|
||||||
+++ libvirt-6.7.0/src/libvirt_private.syms
|
+++ libvirt-6.8.0/src/libvirt_private.syms
|
||||||
@@ -737,6 +737,9 @@ virDomainConfNWFilterInstantiate;
|
@@ -741,6 +741,9 @@ virDomainConfNWFilterInstantiate;
|
||||||
virDomainConfNWFilterTeardown;
|
virDomainConfNWFilterTeardown;
|
||||||
virDomainConfVMNWFilterTeardown;
|
virDomainConfVMNWFilterTeardown;
|
||||||
|
|
||||||
@ -223,7 +223,7 @@ Index: libvirt-6.7.0/src/libvirt_private.syms
|
|||||||
|
|
||||||
# conf/interface_conf.h
|
# conf/interface_conf.h
|
||||||
virInterfaceDefFormat;
|
virInterfaceDefFormat;
|
||||||
@@ -1783,6 +1786,7 @@ virCgroupGetMemoryUsage;
|
@@ -1790,6 +1793,7 @@ virCgroupGetMemoryUsage;
|
||||||
virCgroupGetMemSwapHardLimit;
|
virCgroupGetMemSwapHardLimit;
|
||||||
virCgroupGetMemSwapUsage;
|
virCgroupGetMemSwapUsage;
|
||||||
virCgroupGetPercpuStats;
|
virCgroupGetPercpuStats;
|
||||||
@ -231,10 +231,10 @@ Index: libvirt-6.7.0/src/libvirt_private.syms
|
|||||||
virCgroupHasController;
|
virCgroupHasController;
|
||||||
virCgroupHasEmptyTasks;
|
virCgroupHasEmptyTasks;
|
||||||
virCgroupKillPainfully;
|
virCgroupKillPainfully;
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu_driver.c
|
Index: libvirt-6.8.0/src/qemu/qemu_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu_driver.c
|
--- libvirt-6.8.0.orig/src/qemu/qemu_driver.c
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu_driver.c
|
+++ libvirt-6.8.0/src/qemu/qemu_driver.c
|
||||||
@@ -67,6 +67,7 @@
|
@@ -67,6 +67,7 @@
|
||||||
#include "virarptable.h"
|
#include "virarptable.h"
|
||||||
#include "viruuid.h"
|
#include "viruuid.h"
|
||||||
@ -243,7 +243,7 @@ Index: libvirt-6.7.0/src/qemu/qemu_driver.c
|
|||||||
#include "domain_audit.h"
|
#include "domain_audit.h"
|
||||||
#include "domain_cgroup.h"
|
#include "domain_cgroup.h"
|
||||||
#include "domain_driver.h"
|
#include "domain_driver.h"
|
||||||
@@ -17528,13 +17529,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
|
@@ -17611,13 +17612,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
|
||||||
virTypedParamListPtr params,
|
virTypedParamListPtr params,
|
||||||
unsigned int privflags G_GNUC_UNUSED)
|
unsigned int privflags G_GNUC_UNUSED)
|
||||||
{
|
{
|
||||||
@ -258,7 +258,7 @@ Index: libvirt-6.7.0/src/qemu/qemu_driver.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -17829,25 +17824,11 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
|
@@ -17912,25 +17907,11 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
|
||||||
virTypedParamListPtr params)
|
virTypedParamListPtr params)
|
||||||
{
|
{
|
||||||
qemuDomainObjPrivatePtr priv = dom->privateData;
|
qemuDomainObjPrivatePtr priv = dom->privateData;
|
||||||
@ -285,7 +285,7 @@ Index: libvirt-6.7.0/src/qemu/qemu_driver.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -18015,76 +17996,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
|
@@ -18098,76 +18079,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -363,10 +363,10 @@ Index: libvirt-6.7.0/src/qemu/qemu_driver.c
|
|||||||
|
|
||||||
/* refresh information by opening images on the disk */
|
/* refresh information by opening images on the disk */
|
||||||
static int
|
static int
|
||||||
Index: libvirt-6.7.0/src/util/vircgroup.c
|
Index: libvirt-6.8.0/src/util/vircgroup.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/util/vircgroup.c
|
--- libvirt-6.8.0.orig/src/util/vircgroup.c
|
||||||
+++ libvirt-6.7.0/src/util/vircgroup.c
|
+++ libvirt-6.8.0/src/util/vircgroup.c
|
||||||
@@ -2776,6 +2776,31 @@ virCgroupControllerAvailable(int control
|
@@ -2776,6 +2776,31 @@ virCgroupControllerAvailable(int control
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -414,10 +414,10 @@ Index: libvirt-6.7.0/src/util/vircgroup.c
|
|||||||
int
|
int
|
||||||
virCgroupNewPartition(const char *path G_GNUC_UNUSED,
|
virCgroupNewPartition(const char *path G_GNUC_UNUSED,
|
||||||
bool create G_GNUC_UNUSED,
|
bool create G_GNUC_UNUSED,
|
||||||
Index: libvirt-6.7.0/src/util/vircgroup.h
|
Index: libvirt-6.8.0/src/util/vircgroup.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/util/vircgroup.h
|
--- libvirt-6.8.0.orig/src/util/vircgroup.h
|
||||||
+++ libvirt-6.7.0/src/util/vircgroup.h
|
+++ libvirt-6.8.0/src/util/vircgroup.h
|
||||||
@@ -23,6 +23,7 @@
|
@@ -23,6 +23,7 @@
|
||||||
|
|
||||||
#include "virbitmap.h"
|
#include "virbitmap.h"
|
||||||
@ -433,10 +433,10 @@ Index: libvirt-6.7.0/src/util/vircgroup.h
|
|||||||
+
|
+
|
||||||
+int virCgroupGetStatsCpu(virCgroupPtr cgroup,
|
+int virCgroupGetStatsCpu(virCgroupPtr cgroup,
|
||||||
+ virTypedParamListPtr params);
|
+ virTypedParamListPtr params);
|
||||||
Index: libvirt-6.7.0/src/conf/meson.build
|
Index: libvirt-6.8.0/src/conf/meson.build
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/conf/meson.build
|
--- libvirt-6.8.0.orig/src/conf/meson.build
|
||||||
+++ libvirt-6.7.0/src/conf/meson.build
|
+++ libvirt-6.8.0/src/conf/meson.build
|
||||||
@@ -14,6 +14,7 @@ domain_conf_sources = [
|
@@ -14,6 +14,7 @@ domain_conf_sources = [
|
||||||
'domain_capabilities.c',
|
'domain_capabilities.c',
|
||||||
'domain_conf.c',
|
'domain_conf.c',
|
||||||
|
@ -19,11 +19,11 @@ reworking this patch and submitting it to upstream libvirt.
|
|||||||
src/libxl/libxl_driver.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++
|
src/libxl/libxl_driver.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
1 file changed, 91 insertions(+)
|
1 file changed, 91 insertions(+)
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
Index: libvirt-6.8.0/src/libxl/libxl_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_driver.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_driver.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_driver.c
|
+++ libvirt-6.8.0/src/libxl/libxl_driver.c
|
||||||
@@ -5328,6 +5328,96 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
@@ -5334,6 +5334,96 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
||||||
|
|
||||||
#undef LIBXL_SET_MEMSTAT
|
#undef LIBXL_SET_MEMSTAT
|
||||||
|
|
||||||
@ -120,7 +120,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
|||||||
static int
|
static int
|
||||||
libxlDomainGetJobInfo(virDomainPtr dom,
|
libxlDomainGetJobInfo(virDomainPtr dom,
|
||||||
virDomainJobInfoPtr info)
|
virDomainJobInfoPtr info)
|
||||||
@@ -6797,6 +6887,7 @@ static virHypervisorDriver libxlHypervis
|
@@ -6803,6 +6893,7 @@ static virHypervisorDriver libxlHypervis
|
||||||
#endif
|
#endif
|
||||||
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
|
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
|
||||||
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */
|
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */
|
||||||
|
@ -9,10 +9,10 @@ them using the existing API.
|
|||||||
src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
1 file changed, 138 insertions(+)
|
1 file changed, 138 insertions(+)
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/lxc/lxc_driver.c
|
Index: libvirt-6.8.0/src/lxc/lxc_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/lxc/lxc_driver.c
|
--- libvirt-6.8.0.orig/src/lxc/lxc_driver.c
|
||||||
+++ libvirt-6.7.0/src/lxc/lxc_driver.c
|
+++ libvirt-6.8.0/src/lxc/lxc_driver.c
|
||||||
@@ -73,6 +73,8 @@
|
@@ -73,6 +73,8 @@
|
||||||
#include "netdev_bandwidth_conf.h"
|
#include "netdev_bandwidth_conf.h"
|
||||||
#include "virsocket.h"
|
#include "virsocket.h"
|
||||||
|
@ -1,124 +0,0 @@
|
|||||||
commit 2ad009eadde27491ff4248f481560953776b2a87
|
|
||||||
Author: Jim Fehlig <jfehlig@suse.com>
|
|
||||||
Date: Thu Aug 20 15:52:17 2020 -0600
|
|
||||||
|
|
||||||
qemu: Check for changes in qemu modules directory
|
|
||||||
|
|
||||||
Add a configuration option for specifying location of the qemu modules
|
|
||||||
directory, defaulting to /usr/lib64/qemu. Then use this location to
|
|
||||||
check for changes in the directory, indicating that a qemu module has
|
|
||||||
changed and capabilities need to be reprobed.
|
|
||||||
|
|
||||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
|
||||||
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
|
|
||||||
|
|
||||||
Index: libvirt-6.7.0/meson.build
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-6.7.0.orig/meson.build
|
|
||||||
+++ libvirt-6.7.0/meson.build
|
|
||||||
@@ -1758,6 +1758,12 @@ if not get_option('driver_qemu').disable
|
|
||||||
if use_qemu
|
|
||||||
conf.set('WITH_QEMU', 1)
|
|
||||||
|
|
||||||
+ qemu_moddir = get_option('qemu_moddir')
|
|
||||||
+ if qemu_moddir == ''
|
|
||||||
+ qemu_moddir = '/usr' / libdir / 'qemu'
|
|
||||||
+ endif
|
|
||||||
+ conf.set_quoted('QEMU_MODDIR', qemu_moddir)
|
|
||||||
+
|
|
||||||
if host_machine.system() in ['freebsd', 'darwin']
|
|
||||||
default_qemu_user = 'root'
|
|
||||||
default_qemu_group = 'wheel'
|
|
||||||
Index: libvirt-6.7.0/meson_options.txt
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-6.7.0.orig/meson_options.txt
|
|
||||||
+++ libvirt-6.7.0/meson_options.txt
|
|
||||||
@@ -60,6 +60,7 @@ option('driver_openvz', type: 'feature',
|
|
||||||
option('driver_qemu', type: 'feature', value: 'auto', description: 'QEMU/KVM driver')
|
|
||||||
option('qemu_user', type: 'string', value: '', description: 'username to run QEMU system instance as')
|
|
||||||
option('qemu_group', type: 'string', value: '', description: 'groupname to run QEMU system instance as')
|
|
||||||
+option('qemu_moddir', type: 'string', value: '', description: 'set the directory where QEMU modules are located')
|
|
||||||
option('driver_remote', type: 'feature', value: 'enabled', description: 'remote driver')
|
|
||||||
option('remote_default_mode', type: 'combo', choices: ['legacy', 'direct'], value: 'legacy', description: 'remote driver default mode')
|
|
||||||
option('driver_secrets', type: 'feature', value: 'auto', description: 'local secrets management driver')
|
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu_capabilities.c
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu_capabilities.c
|
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu_capabilities.c
|
|
||||||
@@ -677,6 +677,7 @@ struct _virQEMUCaps {
|
|
||||||
char *binary;
|
|
||||||
time_t ctime;
|
|
||||||
time_t libvirtCtime;
|
|
||||||
+ time_t modDirMtime;
|
|
||||||
bool invalidation;
|
|
||||||
|
|
||||||
virBitmapPtr flags;
|
|
||||||
@@ -4194,6 +4195,7 @@ virQEMUCapsParseSEVInfo(virQEMUCapsPtr q
|
|
||||||
* <qemuCaps>
|
|
||||||
* <emulator>/some/path</emulator>
|
|
||||||
* <qemuctime>234235253</qemuctime>
|
|
||||||
+ * <qemumoddirmtime>234235253</qemumoddirmtime>
|
|
||||||
* <selfctime>234235253</selfctime>
|
|
||||||
* <selfvers>1002016</selfvers>
|
|
||||||
* <flag name='foo'/>
|
|
||||||
@@ -4283,6 +4285,9 @@ virQEMUCapsLoadCache(virArch hostArch,
|
|
||||||
}
|
|
||||||
qemuCaps->ctime = (time_t)l;
|
|
||||||
|
|
||||||
+ if (virXPathLongLong("string(./qemumoddirmtime)", ctxt, &l) == 0)
|
|
||||||
+ qemuCaps->modDirMtime = (time_t)l;
|
|
||||||
+
|
|
||||||
if ((n = virXPathNodeSet("./flag", ctxt, &nodes)) < 0) {
|
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
|
||||||
_("failed to parse qemu capabilities flags"));
|
|
||||||
@@ -4615,6 +4620,10 @@ virQEMUCapsFormatCache(virQEMUCapsPtr qe
|
|
||||||
qemuCaps->binary);
|
|
||||||
virBufferAsprintf(&buf, "<qemuctime>%llu</qemuctime>\n",
|
|
||||||
(long long)qemuCaps->ctime);
|
|
||||||
+ if (qemuCaps->modDirMtime > 0) {
|
|
||||||
+ virBufferAsprintf(&buf, "<qemumoddirmtime>%llu</qemumoddirmtime>\n",
|
|
||||||
+ (long long)qemuCaps->modDirMtime);
|
|
||||||
+ }
|
|
||||||
virBufferAsprintf(&buf, "<selfctime>%llu</selfctime>\n",
|
|
||||||
(long long)qemuCaps->libvirtCtime);
|
|
||||||
virBufferAsprintf(&buf, "<selfvers>%lu</selfvers>\n",
|
|
||||||
@@ -4881,6 +4890,23 @@ virQEMUCapsIsValid(void *data,
|
|
||||||
if (!qemuCaps->binary)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
+ if (virFileExists(QEMU_MODDIR)) {
|
|
||||||
+ if (stat(QEMU_MODDIR, &sb) < 0) {
|
|
||||||
+ VIR_DEBUG("Failed to stat QEMU module directory '%s': %s",
|
|
||||||
+ QEMU_MODDIR,
|
|
||||||
+ g_strerror(errno));
|
|
||||||
+ return false;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (sb.st_mtime != qemuCaps->modDirMtime) {
|
|
||||||
+ VIR_DEBUG("Outdated capabilities for '%s': QEMU modules "
|
|
||||||
+ "directory '%s' changed (%lld vs %lld)",
|
|
||||||
+ qemuCaps->binary, QEMU_MODDIR,
|
|
||||||
+ (long long)sb.st_mtime, (long long)qemuCaps->modDirMtime);
|
|
||||||
+ return false;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (qemuCaps->libvirtCtime != virGetSelfLastChanged() ||
|
|
||||||
qemuCaps->libvirtVersion != LIBVIR_VERSION_NUMBER) {
|
|
||||||
VIR_DEBUG("Outdated capabilities for '%s': libvirt changed "
|
|
||||||
@@ -5463,6 +5489,15 @@ virQEMUCapsNewForBinaryInternal(virArch
|
|
||||||
goto error;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (virFileExists(QEMU_MODDIR)) {
|
|
||||||
+ if (stat(QEMU_MODDIR, &sb) < 0) {
|
|
||||||
+ virReportSystemError(errno, _("Cannot check QEMU module directory %s"),
|
|
||||||
+ QEMU_MODDIR);
|
|
||||||
+ goto error;
|
|
||||||
+ }
|
|
||||||
+ qemuCaps->modDirMtime = sb.st_mtime;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (virQEMUCapsInitQMP(qemuCaps, libDir, runUid, runGid) < 0)
|
|
||||||
goto error;
|
|
||||||
|
|
@ -1,118 +0,0 @@
|
|||||||
commit 4a72b76b8a99ab6c33f468e767cb33cf1fcec843
|
|
||||||
Author: Michal Prívozník <mprivozn@redhat.com>
|
|
||||||
Date: Mon Sep 7 13:35:50 2020 +0200
|
|
||||||
|
|
||||||
qemu_namespace: Don't leak mknod items that are being skipped over
|
|
||||||
|
|
||||||
When building and populating domain NS a couple of functions are
|
|
||||||
called that append paths to a string list. This string list is
|
|
||||||
then inspected, one item at the time by
|
|
||||||
qemuNamespacePrepareOneItem() which gathers all the info for
|
|
||||||
given path (stat buffer, possible link target, ACLs, SELinux
|
|
||||||
label) using qemuNamespaceMknodItemInit(). If the path needs to
|
|
||||||
be created in the domain's private /dev then it's added onto this
|
|
||||||
qemuNamespaceMknodData list which is freed later in the process.
|
|
||||||
But, if the path does not need to be created in the domain's
|
|
||||||
private /dev, then the memory allocated by
|
|
||||||
qemuNamespaceMknodItemInit() is not freed anywhere leading to a
|
|
||||||
leak.
|
|
||||||
|
|
||||||
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
|
||||||
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu_namespace.c
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu_namespace.c
|
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu_namespace.c
|
|
||||||
@@ -871,7 +871,7 @@ qemuDomainNamespaceAvailable(qemuDomainN
|
|
||||||
typedef struct _qemuNamespaceMknodItem qemuNamespaceMknodItem;
|
|
||||||
typedef qemuNamespaceMknodItem *qemuNamespaceMknodItemPtr;
|
|
||||||
struct _qemuNamespaceMknodItem {
|
|
||||||
- const char *file;
|
|
||||||
+ char *file;
|
|
||||||
char *target;
|
|
||||||
bool bindmounted;
|
|
||||||
GStatBuf sb;
|
|
||||||
@@ -892,6 +892,7 @@ struct _qemuNamespaceMknodData {
|
|
||||||
static void
|
|
||||||
qemuNamespaceMknodItemClear(qemuNamespaceMknodItemPtr item)
|
|
||||||
{
|
|
||||||
+ VIR_FREE(item->file);
|
|
||||||
VIR_FREE(item->target);
|
|
||||||
virFileFreeACLs(&item->acl);
|
|
||||||
#ifdef WITH_SELINUX
|
|
||||||
@@ -900,6 +901,8 @@ qemuNamespaceMknodItemClear(qemuNamespac
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
+G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(qemuNamespaceMknodItem, qemuNamespaceMknodItemClear);
|
|
||||||
+
|
|
||||||
static void
|
|
||||||
qemuNamespaceMknodDataClear(qemuNamespaceMknodDataPtr data)
|
|
||||||
{
|
|
||||||
@@ -1091,7 +1094,7 @@ qemuNamespaceMknodItemInit(qemuNamespace
|
|
||||||
bool isLink;
|
|
||||||
bool needsBindMount;
|
|
||||||
|
|
||||||
- item->file = file;
|
|
||||||
+ item->file = g_strdup(file);
|
|
||||||
|
|
||||||
if (g_lstat(file, &item->sb) < 0) {
|
|
||||||
if (errno == ENOENT)
|
|
||||||
@@ -1166,11 +1169,13 @@ qemuNamespacePrepareOneItem(qemuNamespac
|
|
||||||
size_t ndevMountsPath)
|
|
||||||
{
|
|
||||||
long ttl = sysconf(_SC_SYMLOOP_MAX);
|
|
||||||
- const char *next = file;
|
|
||||||
+ g_autofree char *next = g_strdup(file);
|
|
||||||
size_t i;
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
- qemuNamespaceMknodItem item = { 0 };
|
|
||||||
+ g_auto(qemuNamespaceMknodItem) item = { 0 };
|
|
||||||
+ bool isLink;
|
|
||||||
+ bool addToData = false;
|
|
||||||
int rc;
|
|
||||||
|
|
||||||
rc = qemuNamespaceMknodItemInit(&item, cfg, vm, next);
|
|
||||||
@@ -1182,6 +1187,8 @@ qemuNamespacePrepareOneItem(qemuNamespac
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ isLink = S_ISLNK(item.sb.st_mode);
|
|
||||||
+
|
|
||||||
if (STRPREFIX(next, QEMU_DEVPREFIX)) {
|
|
||||||
for (i = 0; i < ndevMountsPath; i++) {
|
|
||||||
if (STREQ(devMountsPath[i], "/dev"))
|
|
||||||
@@ -1190,12 +1197,18 @@ qemuNamespacePrepareOneItem(qemuNamespac
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (i == ndevMountsPath &&
|
|
||||||
- VIR_APPEND_ELEMENT_COPY(data->items, data->nitems, item) < 0)
|
|
||||||
- return -1;
|
|
||||||
+ if (i == ndevMountsPath)
|
|
||||||
+ addToData = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (!S_ISLNK(item.sb.st_mode))
|
|
||||||
+ g_free(next);
|
|
||||||
+ next = g_strdup(item.target);
|
|
||||||
+
|
|
||||||
+ if (addToData &&
|
|
||||||
+ VIR_APPEND_ELEMENT(data->items, data->nitems, item) < 0)
|
|
||||||
+ return -1;
|
|
||||||
+
|
|
||||||
+ if (!isLink)
|
|
||||||
break;
|
|
||||||
|
|
||||||
if (ttl-- == 0) {
|
|
||||||
@@ -1204,8 +1217,6 @@ qemuNamespacePrepareOneItem(qemuNamespac
|
|
||||||
next);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
-
|
|
||||||
- next = item.target;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
@ -1,70 +0,0 @@
|
|||||||
commit 8abd1ffed18394a6212c469cb2c7b6cc28a122d2
|
|
||||||
Author: Michal Prívozník <mprivozn@redhat.com>
|
|
||||||
Date: Thu Sep 3 18:07:43 2020 +0200
|
|
||||||
|
|
||||||
qemu_namespace: Be tolerant to non-existent files when populating /dev
|
|
||||||
|
|
||||||
In 6.7.0 release I've changed how domain namespace is built and
|
|
||||||
populated. Previously it used to be done from a pre-exec hook
|
|
||||||
(ran in the forked off child, just before dropping all privileges
|
|
||||||
and exec()-ing QEMU), which not only meant we had to have two
|
|
||||||
different code paths for creating a node in domain's namespace
|
|
||||||
(one for this pre-exec hook, the other for hotplug ran from the
|
|
||||||
daemon), it also proved problematic because it was leaking FDs
|
|
||||||
into QEMU process.
|
|
||||||
|
|
||||||
To mitigate this problem, we've not only ditched libdevmapper
|
|
||||||
from the NS population process, I've also dropped the pre-exec
|
|
||||||
code and let the NS be populated from the daemon (using the
|
|
||||||
hotplug code). But, I was not careful when doing so, because the
|
|
||||||
pre-exec code was tolerant to files that doesn't exist, while
|
|
||||||
this new code isn't. For instance, the very first thing that is
|
|
||||||
done when the new NS is created is it's populated with
|
|
||||||
@defaultDeviceACL which contain files like /dev/null, /dev/zero,
|
|
||||||
/dev/random and /dev/kvm (and others). While the rest will
|
|
||||||
probably exist every time, /dev/kvm might not and thus the new
|
|
||||||
code I wrote has to be tolerant to that.
|
|
||||||
|
|
||||||
Of course, users can override the @defaultDeviceACL (by setting
|
|
||||||
cgroup_device_acl in qemu.conf) and remove /dev/kvm (which is
|
|
||||||
acceptable workaround), but we definitely want libvirt to work
|
|
||||||
out of the box even on hosts without KVM.
|
|
||||||
|
|
||||||
Fixes: 9048dc4e627ddf33996084167bece7b5fb83b0bc
|
|
||||||
Reported-by: Daniel P. Berrangé <berrange@redhat.com>
|
|
||||||
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
|
||||||
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
|
|
||||||
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu_namespace.c
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu_namespace.c
|
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu_namespace.c
|
|
||||||
@@ -1094,6 +1094,9 @@ qemuNamespaceMknodItemInit(qemuNamespace
|
|
||||||
item->file = file;
|
|
||||||
|
|
||||||
if (g_lstat(file, &item->sb) < 0) {
|
|
||||||
+ if (errno == ENOENT)
|
|
||||||
+ return -2;
|
|
||||||
+
|
|
||||||
virReportSystemError(errno,
|
|
||||||
_("Unable to access %s"), file);
|
|
||||||
return -1;
|
|
||||||
@@ -1168,9 +1171,16 @@ qemuNamespacePrepareOneItem(qemuNamespac
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
qemuNamespaceMknodItem item = { 0 };
|
|
||||||
+ int rc;
|
|
||||||
|
|
||||||
- if (qemuNamespaceMknodItemInit(&item, cfg, vm, next) < 0)
|
|
||||||
+ rc = qemuNamespaceMknodItemInit(&item, cfg, vm, next);
|
|
||||||
+ if (rc == -2) {
|
|
||||||
+ /* @file doesn't exist. We can break here. */
|
|
||||||
+ break;
|
|
||||||
+ } else if (rc < 0) {
|
|
||||||
+ /* Some other (critical) error. */
|
|
||||||
return -1;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if (STRPREFIX(next, QEMU_DEVPREFIX)) {
|
|
||||||
for (i = 0; i < ndevMountsPath; i++) {
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:655b9476c797cdd3bb12e2520acc37335e5299b2d56a5bb9ab3f55db40161342
|
|
||||||
size 8362140
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCAAdFiEERTtlMQWVVihVRxGZymi+gBAITJwFAl9N8/gACgkQymi+gBAI
|
|
||||||
TJxc/g//byuzhYbB4+YF1nDWD7UN6pGz/N+23Rj1LX2qGlJkFrzW1quMiGTgviFV
|
|
||||||
V0y1D211WNkbJvZ2b4BtPY/rS0DDqlLAxT8Z8B5+2rmJeOfmbRkHUSobxBRrjDMP
|
|
||||||
jCRo2Vc1uh0YIQxde5/Su+fXkrRU5+kFzAwmtS8Q2EobiXRWBVcUwHtM3Ix2R+3y
|
|
||||||
gUMOqag3NhDc1rVyAcszOnxhYjVeoHmaOaBfLOYLLQsZoESofXgugx9ybWGFSPsW
|
|
||||||
CtKIkBZLG/w9cDDJperN4runDu9O1FNgaCFd/2lX51f75b9DxHQcOL7HW15E6H9l
|
|
||||||
ssu7djcrxS1DQefgTe1tpDfBl5nILKvlUSrVStBVOe41SM/in4AcS5PkQk2HDEiS
|
|
||||||
omVa5cs6DsezNSEkXGgKXMyGNq+I/MdF+F67lrL/a9qS2hr8euBs5EuZAi3ussZc
|
|
||||||
4pzMtW+nRsrnz4pPXb82NVWGbGrYyxBkbhYd148iaOCcp4/RRKtDpvICVaJAHKbN
|
|
||||||
TAHxy82SUGcdlI8RGu3nAT260ZEQ008pu+GF3cwJMqQoK9S/C4i+GiR+WmvE6MAd
|
|
||||||
KQtdKXyRkXqP8n+fTZSfEfZm2cWVCSvOW5fC3wzWiEIvy7fIG5pH1TOTFai9+ARv
|
|
||||||
Owmo7nFNH2cjy1EdVIBk1mR3ccc26TED/P3SE2KlH9z3saEQuRE=
|
|
||||||
=nU1U
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
libvirt-6.8.0.tar.xz
Normal file
3
libvirt-6.8.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:0c2d7f6ed8bc4956bf7f0c8ca2897c6c82ddb91e3118ab7a588b25eedd16ef69
|
||||||
|
size 8412092
|
16
libvirt-6.8.0.tar.xz.asc
Normal file
16
libvirt-6.8.0.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCAAdFiEERTtlMQWVVihVRxGZymi+gBAITJwFAl91iyMACgkQymi+gBAI
|
||||||
|
TJyZ7RAAguxlYBvKkG6Q3PBrJc67pyQdB1hi+42CLcR0V2GdiPtoC1UL77wwDO6b
|
||||||
|
xkXn4D9QJQ70uVDJ/HivuA8uSVdj9qJsbFe5SsHTTeHz6HE+k+tbhWM1O0ALilfl
|
||||||
|
EaDQl5GF+00IwGyxLBABvg5dcqhLcPfdCAu+tuFDy8b7x8PkgN1XlMyucddYcCeY
|
||||||
|
YXX7JCJ/ckrCaC+OfGzurZOTLrz2k3u55ezSEsQ6VjxAegEz5kGb7sXKSgbRxd/L
|
||||||
|
xozHJcJwccRXirjNVtnSdn9zJwqzjys+yeyxVuNs2MM9Vd8urUW8TnE4L2DN9ojM
|
||||||
|
pMt/xmItZGoMMeamc9IfH/9AfMYy3Z/lYxHO7cu+xw7EOtAqHQOl2yWuE8ukKXVu
|
||||||
|
PYU6zfupfAYn7EgsNFVgeYQPpK6p0lG72+G+KiaJ3iHzTJXz7478rQTdSCrcdIYP
|
||||||
|
60JoLePSXt5+VsHVCR1zGS2e4NG8HfZ8JJ7fIfF4AsaHwbF3lfp+tT4db1zfeP+B
|
||||||
|
URQOebXHjLgh5ytZY5i2MSa4E31dHSpWx0RLYOfziPss8IqtE+OUKjHFLlzdwMq5
|
||||||
|
eMVnrgnb5B1jN0dfpGHQcrkAb3uVQ0A0+A8TGIvVrksKO+Oie385lkbUGwak4s0k
|
||||||
|
2rv+77qK8cVLw6TZE6RXPhjHT3/8zMKuXRsIyhX6ofItG5x2BK4=
|
||||||
|
=eHB4
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -2,10 +2,10 @@ Add POWER8 v2.0 and v2.1 to cpu map XML
|
|||||||
|
|
||||||
From: <ro@suse.de>
|
From: <ro@suse.de>
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/cpu_map/ppc64_POWER8.xml
|
Index: libvirt-6.8.0/src/cpu_map/ppc64_POWER8.xml
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/cpu_map/ppc64_POWER8.xml
|
--- libvirt-6.8.0.orig/src/cpu_map/ppc64_POWER8.xml
|
||||||
+++ libvirt-6.7.0/src/cpu_map/ppc64_POWER8.xml
|
+++ libvirt-6.8.0/src/cpu_map/ppc64_POWER8.xml
|
||||||
@@ -4,5 +4,7 @@
|
@@ -4,5 +4,7 @@
|
||||||
<pvr value='0x004b0000' mask='0xffff0000'/>
|
<pvr value='0x004b0000' mask='0xffff0000'/>
|
||||||
<pvr value='0x004c0000' mask='0xffff0000'/>
|
<pvr value='0x004c0000' mask='0xffff0000'/>
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-6.7.0/tools/virsh.c
|
Index: libvirt-6.8.0/tools/virsh.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tools/virsh.c
|
--- libvirt-6.8.0.orig/tools/virsh.c
|
||||||
+++ libvirt-6.7.0/tools/virsh.c
|
+++ libvirt-6.8.0/tools/virsh.c
|
||||||
@@ -547,6 +547,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
|
@@ -542,6 +542,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
|
||||||
vshPrint(ctl, " Interface");
|
vshPrint(ctl, " Interface");
|
||||||
# if defined(WITH_NETCF)
|
# if defined(WITH_NETCF)
|
||||||
vshPrint(ctl, " netcf");
|
vshPrint(ctl, " netcf");
|
||||||
@ -11,10 +11,10 @@ Index: libvirt-6.7.0/tools/virsh.c
|
|||||||
# elif defined(WITH_UDEV)
|
# elif defined(WITH_UDEV)
|
||||||
vshPrint(ctl, " udev");
|
vshPrint(ctl, " udev");
|
||||||
# endif
|
# endif
|
||||||
Index: libvirt-6.7.0/src/interface/interface_backend_netcf.c
|
Index: libvirt-6.8.0/src/interface/interface_backend_netcf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/interface/interface_backend_netcf.c
|
--- libvirt-6.8.0.orig/src/interface/interface_backend_netcf.c
|
||||||
+++ libvirt-6.7.0/src/interface/interface_backend_netcf.c
|
+++ libvirt-6.8.0/src/interface/interface_backend_netcf.c
|
||||||
@@ -21,7 +21,12 @@
|
@@ -21,7 +21,12 @@
|
||||||
|
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -126,10 +126,10 @@ Index: libvirt-6.7.0/src/interface/interface_backend_netcf.c
|
|||||||
if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0)
|
if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
|
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
|
||||||
Index: libvirt-6.7.0/src/interface/interface_driver.c
|
Index: libvirt-6.8.0/src/interface/interface_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/interface/interface_driver.c
|
--- libvirt-6.8.0.orig/src/interface/interface_driver.c
|
||||||
+++ libvirt-6.7.0/src/interface/interface_driver.c
|
+++ libvirt-6.8.0/src/interface/interface_driver.c
|
||||||
@@ -30,8 +30,15 @@ interfaceRegister(void)
|
@@ -30,8 +30,15 @@ interfaceRegister(void)
|
||||||
if (netcfIfaceRegister() == 0)
|
if (netcfIfaceRegister() == 0)
|
||||||
return 0;
|
return 0;
|
||||||
@ -147,11 +147,11 @@ Index: libvirt-6.7.0/src/interface/interface_driver.c
|
|||||||
if (udevIfaceRegister() == 0)
|
if (udevIfaceRegister() == 0)
|
||||||
return 0;
|
return 0;
|
||||||
#endif /* WITH_UDEV */
|
#endif /* WITH_UDEV */
|
||||||
Index: libvirt-6.7.0/meson.build
|
Index: libvirt-6.8.0/meson.build
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/meson.build
|
--- libvirt-6.8.0.orig/meson.build
|
||||||
+++ libvirt-6.7.0/meson.build
|
+++ libvirt-6.8.0/meson.build
|
||||||
@@ -1201,6 +1201,12 @@ if netcf_dep.found()
|
@@ -1184,6 +1184,12 @@ if netcf_dep.found()
|
||||||
conf.set('WITH_NETCF', 1)
|
conf.set('WITH_NETCF', 1)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -164,7 +164,7 @@ Index: libvirt-6.7.0/meson.build
|
|||||||
have_gnu_gettext_tools = false
|
have_gnu_gettext_tools = false
|
||||||
if not get_option('nls').disabled()
|
if not get_option('nls').disabled()
|
||||||
have_gettext = cc.has_function('gettext')
|
have_gettext = cc.has_function('gettext')
|
||||||
@@ -1632,10 +1638,10 @@ elif get_option('driver_hyperv').enabled
|
@@ -1612,10 +1618,10 @@ elif get_option('driver_hyperv').enabled
|
||||||
error('openwsman is required for the Hyper-V driver')
|
error('openwsman is required for the Hyper-V driver')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -177,7 +177,7 @@ Index: libvirt-6.7.0/meson.build
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if not get_option('driver_libxl').disabled() and conf.has('WITH_LIBVIRTD')
|
if not get_option('driver_libxl').disabled() and conf.has('WITH_LIBVIRTD')
|
||||||
@@ -2442,6 +2448,7 @@ libs_summary = {
|
@@ -2420,6 +2426,7 @@ libs_summary = {
|
||||||
'libxml': libxml_dep.found(),
|
'libxml': libxml_dep.found(),
|
||||||
'macvtap': conf.has('WITH_MACVTAP'),
|
'macvtap': conf.has('WITH_MACVTAP'),
|
||||||
'netcf': netcf_dep.found(),
|
'netcf': netcf_dep.found(),
|
||||||
@ -185,10 +185,10 @@ Index: libvirt-6.7.0/meson.build
|
|||||||
'NLS': have_gnu_gettext_tools,
|
'NLS': have_gnu_gettext_tools,
|
||||||
'nss': conf.has('WITH_NSS'),
|
'nss': conf.has('WITH_NSS'),
|
||||||
'numactl': numactl_dep.found(),
|
'numactl': numactl_dep.found(),
|
||||||
Index: libvirt-6.7.0/src/interface/meson.build
|
Index: libvirt-6.8.0/src/interface/meson.build
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/interface/meson.build
|
--- libvirt-6.8.0.orig/src/interface/meson.build
|
||||||
+++ libvirt-6.7.0/src/interface/meson.build
|
+++ libvirt-6.8.0/src/interface/meson.build
|
||||||
@@ -2,7 +2,7 @@ interface_driver_sources = [
|
@@ -2,7 +2,7 @@ interface_driver_sources = [
|
||||||
'interface_driver.c',
|
'interface_driver.c',
|
||||||
]
|
]
|
||||||
@ -206,11 +206,11 @@ Index: libvirt-6.7.0/src/interface/meson.build
|
|||||||
udev_dep,
|
udev_dep,
|
||||||
],
|
],
|
||||||
'link_args': [
|
'link_args': [
|
||||||
Index: libvirt-6.7.0/meson_options.txt
|
Index: libvirt-6.8.0/meson_options.txt
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/meson_options.txt
|
--- libvirt-6.8.0.orig/meson_options.txt
|
||||||
+++ libvirt-6.7.0/meson_options.txt
|
+++ libvirt-6.8.0/meson_options.txt
|
||||||
@@ -30,6 +30,7 @@ option('libssh', type: 'feature', value:
|
@@ -28,6 +28,7 @@ option('libssh', type: 'feature', value:
|
||||||
option('libssh2', type: 'feature', value: 'auto', description: 'libssh2 support')
|
option('libssh2', type: 'feature', value: 'auto', description: 'libssh2 support')
|
||||||
option('macvtap', type: 'feature', value: 'auto', description: 'enable macvtap device')
|
option('macvtap', type: 'feature', value: 'auto', description: 'enable macvtap device')
|
||||||
option('netcf', type: 'feature', value: 'auto', description: 'netcf support')
|
option('netcf', type: 'feature', value: 'auto', description: 'netcf support')
|
||||||
|
@ -1,3 +1,17 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Oct 1 15:56:21 UTC 2020 - James Fehlig <jfehlig@suse.com>
|
||||||
|
|
||||||
|
- Update to libvirt 6.8.0
|
||||||
|
- jsc#SLE-12684, jsc#SLE-15861
|
||||||
|
- bsc#1174955 (CVE-2020-15708)
|
||||||
|
- bsc#1177155 (CVE-2020-25637)
|
||||||
|
- Many incremental improvements and bug fixes, see
|
||||||
|
https://libvirt.org/news.html
|
||||||
|
- Dropped patches:
|
||||||
|
2ad009ea-qemu-check-modules-dir.patch,
|
||||||
|
8abd1ffe-qemu-tolerate-non-existent-files.patch,
|
||||||
|
4a72b76b-qemu-namespace-memleak-fix.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Sep 10 17:49:45 UTC 2020 - James Fehlig <jfehlig@suse.com>
|
Thu Sep 10 17:49:45 UTC 2020 - James Fehlig <jfehlig@suse.com>
|
||||||
|
|
||||||
|
16
libvirt.spec
16
libvirt.spec
@ -156,7 +156,7 @@
|
|||||||
|
|
||||||
Name: libvirt
|
Name: libvirt
|
||||||
URL: http://libvirt.org/
|
URL: http://libvirt.org/
|
||||||
Version: 6.7.0
|
Version: 6.8.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Library providing a virtualization API
|
Summary: Library providing a virtualization API
|
||||||
License: LGPL-2.1-or-later
|
License: LGPL-2.1-or-later
|
||||||
@ -242,8 +242,6 @@ BuildRequires: ebtables
|
|||||||
BuildRequires: iptables
|
BuildRequires: iptables
|
||||||
BuildRequires: polkit >= 0.112
|
BuildRequires: polkit >= 0.112
|
||||||
BuildRequires: radvd
|
BuildRequires: radvd
|
||||||
# Communication with the firewall and polkit daemons use DBus
|
|
||||||
BuildRequires: dbus-1-devel
|
|
||||||
# For mount/umount in FS driver
|
# For mount/umount in FS driver
|
||||||
BuildRequires: util-linux
|
BuildRequires: util-linux
|
||||||
# For LVM drivers
|
# For LVM drivers
|
||||||
@ -309,9 +307,6 @@ Source6: libvirtd-relocation-server.xml
|
|||||||
Source99: baselibs.conf
|
Source99: baselibs.conf
|
||||||
Source100: %{name}-rpmlintrc
|
Source100: %{name}-rpmlintrc
|
||||||
# Upstream patches
|
# Upstream patches
|
||||||
Patch0: 2ad009ea-qemu-check-modules-dir.patch
|
|
||||||
Patch1: 8abd1ffe-qemu-tolerate-non-existent-files.patch
|
|
||||||
Patch2: 4a72b76b-qemu-namespace-memleak-fix.patch
|
|
||||||
# Patches pending upstream review
|
# Patches pending upstream review
|
||||||
Patch100: libxl-dom-reset.patch
|
Patch100: libxl-dom-reset.patch
|
||||||
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
|
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
|
||||||
@ -760,7 +755,6 @@ capabilities of VirtualBox
|
|||||||
Summary: Client side utilities of the libvirt library
|
Summary: Client side utilities of the libvirt library
|
||||||
Group: System/Management
|
Group: System/Management
|
||||||
Requires: %{name}-libs = %{version}-%{release}
|
Requires: %{name}-libs = %{version}-%{release}
|
||||||
Requires: readline
|
|
||||||
# Needed by libvirt-guests init script.
|
# Needed by libvirt-guests init script.
|
||||||
Requires: gettext-runtime
|
Requires: gettext-runtime
|
||||||
# Needed by virt-pki-validate script.
|
# Needed by virt-pki-validate script.
|
||||||
@ -791,7 +785,6 @@ Shared libraries for accessing the libvirt daemon.
|
|||||||
Summary: Set of tools to control libvirt daemon
|
Summary: Set of tools to control libvirt daemon
|
||||||
Group: System/Management
|
Group: System/Management
|
||||||
Requires: %{name}-libs = %{version}-%{release}
|
Requires: %{name}-libs = %{version}-%{release}
|
||||||
Requires: readline
|
|
||||||
%if %{with_bash_completion}
|
%if %{with_bash_completion}
|
||||||
Recommends: %{name}-bash-completion = %{version}-%{release}
|
Recommends: %{name}-bash-completion = %{version}-%{release}
|
||||||
%endif
|
%endif
|
||||||
@ -848,9 +841,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch100 -p1
|
%patch100 -p1
|
||||||
%patch101 -p1
|
%patch101 -p1
|
||||||
%patch150 -p1
|
%patch150 -p1
|
||||||
@ -1042,7 +1032,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
|
|||||||
%{?arg_selinux_mount} \
|
%{?arg_selinux_mount} \
|
||||||
%{?arg_apparmor} \
|
%{?arg_apparmor} \
|
||||||
%{?arg_apparmor_profiles} \
|
%{?arg_apparmor_profiles} \
|
||||||
-Dhal=disabled \
|
|
||||||
-Dudev=enabled \
|
-Dudev=enabled \
|
||||||
-Dyajl=enabled \
|
-Dyajl=enabled \
|
||||||
%{?arg_sanlock} \
|
%{?arg_sanlock} \
|
||||||
@ -1486,6 +1475,7 @@ fi
|
|||||||
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
|
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
|
||||||
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
|
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
|
||||||
%attr(0755, root, root) %{_libdir}/%{name}/libvirt_iohelper
|
%attr(0755, root, root) %{_libdir}/%{name}/libvirt_iohelper
|
||||||
|
%attr(0755, root, root) %{_bindir}/virt-ssh-helper
|
||||||
%doc %{_mandir}/man8/libvirtd.8*
|
%doc %{_mandir}/man8/libvirtd.8*
|
||||||
%doc %{_mandir}/man8/virtlogd.8*
|
%doc %{_mandir}/man8/virtlogd.8*
|
||||||
%doc %{_mandir}/man8/virtlockd.8*
|
%doc %{_mandir}/man8/virtlockd.8*
|
||||||
@ -1865,7 +1855,7 @@ fi
|
|||||||
%{_datadir}/%{name}/api/libvirt-lxc-api.xml
|
%{_datadir}/%{name}/api/libvirt-lxc-api.xml
|
||||||
|
|
||||||
%files doc
|
%files doc
|
||||||
%doc AUTHORS NEWS.rst README.rst
|
%doc AUTHORS.rst NEWS.rst README.rst
|
||||||
%license COPYING COPYING.LESSER
|
%license COPYING COPYING.LESSER
|
||||||
%dir %{_datadir}/doc/%{name}
|
%dir %{_datadir}/doc/%{name}
|
||||||
%doc %{_datadir}/doc/%{name}/*
|
%doc %{_datadir}/doc/%{name}/*
|
||||||
|
@ -8,11 +8,11 @@ Date: Mon Jun 23 15:51:20 2014 -0600
|
|||||||
option, but domainReset can be implemented in the libxl driver by
|
option, but domainReset can be implemented in the libxl driver by
|
||||||
forcibly destroying the domain and starting it again.
|
forcibly destroying the domain and starting it again.
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
Index: libvirt-6.8.0/src/libxl/libxl_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_driver.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_driver.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_driver.c
|
+++ libvirt-6.8.0/src/libxl/libxl_driver.c
|
||||||
@@ -1371,6 +1371,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
@@ -1377,6 +1377,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -74,7 +74,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
|||||||
libxlDomainDestroyFlags(virDomainPtr dom,
|
libxlDomainDestroyFlags(virDomainPtr dom,
|
||||||
unsigned int flags)
|
unsigned int flags)
|
||||||
{
|
{
|
||||||
@@ -6672,6 +6727,7 @@ static virHypervisorDriver libxlHypervis
|
@@ -6678,6 +6733,7 @@ static virHypervisorDriver libxlHypervis
|
||||||
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
|
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
|
||||||
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
|
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
|
||||||
.domainReboot = libxlDomainReboot, /* 0.9.0 */
|
.domainReboot = libxlDomainReboot, /* 0.9.0 */
|
||||||
|
@ -3,11 +3,11 @@ https://bugzilla.novell.com/show_bug.cgi?id=879425
|
|||||||
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
|
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
|
||||||
1 file changed, 25 insertions(+)
|
1 file changed, 25 insertions(+)
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
Index: libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_conf.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_conf.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_conf.c
|
+++ libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
@@ -912,6 +912,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
@@ -925,6 +925,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
|||||||
static char *
|
static char *
|
||||||
libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
|
libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
|
||||||
const char *username,
|
const char *username,
|
||||||
@@ -1149,6 +1173,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
@@ -1162,6 +1186,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||||
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
|
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
|
||||||
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
|
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -16,11 +16,11 @@ Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
|||||||
tools/virsh.pod | 8 ++++++++
|
tools/virsh.pod | 8 ++++++++
|
||||||
6 files changed, 125 insertions(+), 6 deletions(-)
|
6 files changed, 125 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
Index: libvirt-6.7.0/include/libvirt/libvirt-domain.h
|
Index: libvirt-6.8.0/include/libvirt/libvirt-domain.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/include/libvirt/libvirt-domain.h
|
--- libvirt-6.8.0.orig/include/libvirt/libvirt-domain.h
|
||||||
+++ libvirt-6.7.0/include/libvirt/libvirt-domain.h
|
+++ libvirt-6.8.0/include/libvirt/libvirt-domain.h
|
||||||
@@ -1065,6 +1065,31 @@ typedef enum {
|
@@ -1078,6 +1078,31 @@ typedef enum {
|
||||||
*/
|
*/
|
||||||
# define VIR_MIGRATE_PARAM_TLS_DESTINATION "tls.destination"
|
# define VIR_MIGRATE_PARAM_TLS_DESTINATION "tls.destination"
|
||||||
|
|
||||||
@ -52,11 +52,11 @@ Index: libvirt-6.7.0/include/libvirt/libvirt-domain.h
|
|||||||
/* Domain migration. */
|
/* Domain migration. */
|
||||||
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
|
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
|
||||||
unsigned long flags, const char *dname,
|
unsigned long flags, const char *dname,
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
Index: libvirt-6.8.0/src/libxl/libxl_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_driver.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_driver.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_driver.c
|
+++ libvirt-6.8.0/src/libxl/libxl_driver.c
|
||||||
@@ -6237,6 +6237,9 @@ libxlDomainMigratePerform3Params(virDoma
|
@@ -6243,6 +6243,9 @@ libxlDomainMigratePerform3Params(virDoma
|
||||||
const char *dname = NULL;
|
const char *dname = NULL;
|
||||||
const char *uri = NULL;
|
const char *uri = NULL;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
@ -66,7 +66,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
|||||||
|
|
||||||
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
|
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
|
||||||
virReportUnsupportedError();
|
virReportUnsupportedError();
|
||||||
@@ -6253,6 +6256,18 @@ libxlDomainMigratePerform3Params(virDoma
|
@@ -6259,6 +6262,18 @@ libxlDomainMigratePerform3Params(virDoma
|
||||||
virTypedParamsGetString(params, nparams,
|
virTypedParamsGetString(params, nparams,
|
||||||
VIR_MIGRATE_PARAM_DEST_NAME,
|
VIR_MIGRATE_PARAM_DEST_NAME,
|
||||||
&dname) < 0 ||
|
&dname) < 0 ||
|
||||||
@ -85,7 +85,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
|||||||
virTypedParamsGetString(params, nparams,
|
virTypedParamsGetString(params, nparams,
|
||||||
VIR_MIGRATE_PARAM_URI,
|
VIR_MIGRATE_PARAM_URI,
|
||||||
&uri) < 0)
|
&uri) < 0)
|
||||||
@@ -6267,11 +6282,11 @@ libxlDomainMigratePerform3Params(virDoma
|
@@ -6273,11 +6288,11 @@ libxlDomainMigratePerform3Params(virDoma
|
||||||
|
|
||||||
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
|
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
|
||||||
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
|
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
|
||||||
@ -99,10 +99,10 @@ Index: libvirt-6.7.0/src/libxl/libxl_driver.c
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_migration.c
|
Index: libvirt-6.8.0/src/libxl/libxl_migration.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_migration.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_migration.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_migration.c
|
+++ libvirt-6.8.0/src/libxl/libxl_migration.c
|
||||||
@@ -345,18 +345,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
|
@@ -345,18 +345,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
|
||||||
static int
|
static int
|
||||||
libxlDoMigrateSrcSend(libxlDriverPrivatePtr driver,
|
libxlDoMigrateSrcSend(libxlDriverPrivatePtr driver,
|
||||||
@ -264,10 +264,10 @@ Index: libvirt-6.7.0/src/libxl/libxl_migration.c
|
|||||||
virObjectLock(vm);
|
virObjectLock(vm);
|
||||||
|
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_migration.h
|
Index: libvirt-6.8.0/src/libxl/libxl_migration.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_migration.h
|
--- libvirt-6.8.0.orig/src/libxl/libxl_migration.h
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_migration.h
|
+++ libvirt-6.8.0/src/libxl/libxl_migration.h
|
||||||
@@ -35,6 +35,10 @@
|
@@ -35,6 +35,10 @@
|
||||||
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
|
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
|
||||||
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
|
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
|
||||||
@ -312,11 +312,11 @@ Index: libvirt-6.7.0/src/libxl/libxl_migration.h
|
|||||||
|
|
||||||
virDomainPtr
|
virDomainPtr
|
||||||
libxlDomainMigrationDstFinish(virConnectPtr dconn,
|
libxlDomainMigrationDstFinish(virConnectPtr dconn,
|
||||||
Index: libvirt-6.7.0/tools/virsh-domain.c
|
Index: libvirt-6.8.0/tools/virsh-domain.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tools/virsh-domain.c
|
--- libvirt-6.8.0.orig/tools/virsh-domain.c
|
||||||
+++ libvirt-6.7.0/tools/virsh-domain.c
|
+++ libvirt-6.8.0/tools/virsh-domain.c
|
||||||
@@ -10699,6 +10699,22 @@ static const vshCmdOptDef opts_migrate[]
|
@@ -10722,6 +10722,22 @@ static const vshCmdOptDef opts_migrate[]
|
||||||
.type = VSH_OT_STRING,
|
.type = VSH_OT_STRING,
|
||||||
.help = N_("override the destination host name used for TLS verification")
|
.help = N_("override the destination host name used for TLS verification")
|
||||||
},
|
},
|
||||||
@ -339,7 +339,7 @@ Index: libvirt-6.7.0/tools/virsh-domain.c
|
|||||||
{.name = NULL}
|
{.name = NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -10720,6 +10736,7 @@ doMigrate(void *opaque)
|
@@ -10742,6 +10758,7 @@ doMigrate(void *opaque)
|
||||||
unsigned long long ullOpt = 0;
|
unsigned long long ullOpt = 0;
|
||||||
int rv;
|
int rv;
|
||||||
virConnectPtr dconn = data->dconn;
|
virConnectPtr dconn = data->dconn;
|
||||||
@ -347,7 +347,7 @@ Index: libvirt-6.7.0/tools/virsh-domain.c
|
|||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
sigset_t sigmask, oldsigmask;
|
sigset_t sigmask, oldsigmask;
|
||||||
|
|
||||||
@@ -10842,6 +10859,27 @@ doMigrate(void *opaque)
|
@@ -10872,6 +10889,27 @@ doMigrate(void *opaque)
|
||||||
goto save_error;
|
goto save_error;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -375,20 +375,21 @@ Index: libvirt-6.7.0/tools/virsh-domain.c
|
|||||||
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
|
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
|
||||||
goto out;
|
goto out;
|
||||||
if (opt) {
|
if (opt) {
|
||||||
Index: libvirt-6.7.0/docs/manpages/virsh.rst
|
Index: libvirt-6.8.0/docs/manpages/virsh.rst
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/docs/manpages/virsh.rst
|
--- libvirt-6.8.0.orig/docs/manpages/virsh.rst
|
||||||
+++ libvirt-6.7.0/docs/manpages/virsh.rst
|
+++ libvirt-6.8.0/docs/manpages/virsh.rst
|
||||||
@@ -3113,6 +3113,8 @@ migrate
|
@@ -3113,7 +3113,8 @@ migrate
|
||||||
[--postcopy-bandwidth bandwidth]
|
[--postcopy-bandwidth bandwidth]
|
||||||
[--parallel [--parallel-connections connections]]
|
[--parallel [--parallel-connections connections]]
|
||||||
[--bandwidth bandwidth] [--tls-destination hostname]
|
[--bandwidth bandwidth] [--tls-destination hostname]
|
||||||
+ [--max_iters num] [--max_factor num] [--min_remaining num]
|
- [--disks-uri URI]
|
||||||
+ [--abort_if_busy]
|
+ [--disks-uri URI] [--max_iters num] [--max_factor num]
|
||||||
|
+ [--min_remaining num] [--abort_if_busy]
|
||||||
|
|
||||||
Migrate domain to another host. Add *--live* for live migration; <--p2p>
|
Migrate domain to another host. Add *--live* for live migration; <--p2p>
|
||||||
for peer-2-peer migration; *--direct* for direct migration; or *--tunnelled*
|
for peer-2-peer migration; *--direct* for direct migration; or *--tunnelled*
|
||||||
@@ -3218,6 +3220,14 @@ parallel connections. The number of such
|
@@ -3219,6 +3220,14 @@ parallel connections. The number of such
|
||||||
network link between the source and the target and thus speeding up the
|
network link between the source and the target and thus speeding up the
|
||||||
migration.
|
migration.
|
||||||
|
|
||||||
|
@ -7,11 +7,11 @@ and npiv.
|
|||||||
|
|
||||||
For more details, see bsc#954872 and FATE#319810
|
For more details, see bsc#954872 and FATE#319810
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
Index: libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_conf.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_conf.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_conf.c
|
+++ libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
@@ -912,6 +912,22 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
@@ -925,6 +925,22 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -34,7 +34,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
|||||||
static void
|
static void
|
||||||
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
|
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
|
||||||
{
|
{
|
||||||
@@ -1048,6 +1064,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
|
@@ -1061,6 +1077,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
|
||||||
int
|
int
|
||||||
libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk *x_disk)
|
libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk *x_disk)
|
||||||
{
|
{
|
||||||
@ -42,7 +42,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
|||||||
const char *driver = virDomainDiskGetDriver(l_disk);
|
const char *driver = virDomainDiskGetDriver(l_disk);
|
||||||
int format = virDomainDiskGetFormat(l_disk);
|
int format = virDomainDiskGetFormat(l_disk);
|
||||||
int actual_type = virStorageSourceGetActualType(l_disk->src);
|
int actual_type = virStorageSourceGetActualType(l_disk->src);
|
||||||
@@ -1063,7 +1080,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
@@ -1076,7 +1093,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||||
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
|
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
} else {
|
} else {
|
||||||
@ -51,7 +51,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
x_disk->vdev = g_strdup(l_disk->dst);
|
x_disk->vdev = g_strdup(l_disk->dst);
|
||||||
@@ -1174,6 +1191,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
@@ -1187,6 +1204,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||||
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
|
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
libxlDiskSetCacheMode(x_disk, l_disk->cachemode);
|
libxlDiskSetCacheMode(x_disk, l_disk->cachemode);
|
||||||
|
@ -13,10 +13,10 @@ device with the same name that is being created.
|
|||||||
src/lxc/lxc_process.c | 1 +
|
src/lxc/lxc_process.c | 1 +
|
||||||
3 files changed, 4 insertions(+)
|
3 files changed, 4 insertions(+)
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/lxc/lxc_controller.c
|
Index: libvirt-6.8.0/src/lxc/lxc_controller.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/lxc/lxc_controller.c
|
--- libvirt-6.8.0.orig/src/lxc/lxc_controller.c
|
||||||
+++ libvirt-6.7.0/src/lxc/lxc_controller.c
|
+++ libvirt-6.8.0/src/lxc/lxc_controller.c
|
||||||
@@ -2026,6 +2026,7 @@ static int virLXCControllerDeleteInterfa
|
@@ -2026,6 +2026,7 @@ static int virLXCControllerDeleteInterfa
|
||||||
if (virNetDevVethDelete(ctrl->veths[i]) < 0)
|
if (virNetDevVethDelete(ctrl->veths[i]) < 0)
|
||||||
ret = -1;
|
ret = -1;
|
||||||
@ -25,10 +25,10 @@ Index: libvirt-6.7.0/src/lxc/lxc_controller.c
|
|||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
Index: libvirt-6.7.0/src/lxc/lxc_driver.c
|
Index: libvirt-6.8.0/src/lxc/lxc_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/lxc/lxc_driver.c
|
--- libvirt-6.8.0.orig/src/lxc/lxc_driver.c
|
||||||
+++ libvirt-6.7.0/src/lxc/lxc_driver.c
|
+++ libvirt-6.8.0/src/lxc/lxc_driver.c
|
||||||
@@ -66,6 +66,7 @@
|
@@ -66,6 +66,7 @@
|
||||||
#include "virtime.h"
|
#include "virtime.h"
|
||||||
#include "virtypedparam.h"
|
#include "virtypedparam.h"
|
||||||
@ -53,10 +53,10 @@ Index: libvirt-6.7.0/src/lxc/lxc_driver.c
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
/* It'd be nice to support this, but with macvlan
|
/* It'd be nice to support this, but with macvlan
|
||||||
Index: libvirt-6.7.0/src/lxc/lxc_process.c
|
Index: libvirt-6.8.0/src/lxc/lxc_process.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/lxc/lxc_process.c
|
--- libvirt-6.8.0.orig/src/lxc/lxc_process.c
|
||||||
+++ libvirt-6.7.0/src/lxc/lxc_process.c
|
+++ libvirt-6.8.0/src/lxc/lxc_process.c
|
||||||
@@ -50,6 +50,7 @@
|
@@ -50,6 +50,7 @@
|
||||||
#include "virstring.h"
|
#include "virstring.h"
|
||||||
#include "virprocess.h"
|
#include "virprocess.h"
|
||||||
|
@ -17,11 +17,11 @@ Signed-off-by: Martin Wilck <mwilck@suse.com>
|
|||||||
tests/networkxml2confdata/dhcp6host-routed-network.conf | 1 -
|
tests/networkxml2confdata/dhcp6host-routed-network.conf | 1 -
|
||||||
2 files changed, 8 insertions(+), 2 deletions(-)
|
2 files changed, 8 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/network/bridge_driver.c
|
Index: libvirt-6.8.0/src/network/bridge_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/network/bridge_driver.c
|
--- libvirt-6.8.0.orig/src/network/bridge_driver.c
|
||||||
+++ libvirt-6.7.0/src/network/bridge_driver.c
|
+++ libvirt-6.8.0/src/network/bridge_driver.c
|
||||||
@@ -1448,7 +1448,14 @@ networkDnsmasqConfContents(virNetworkObj
|
@@ -1445,7 +1445,14 @@ networkDnsmasqConfContents(virNetworkObj
|
||||||
if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) {
|
if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) {
|
||||||
if (ipdef->nranges || ipdef->nhosts) {
|
if (ipdef->nranges || ipdef->nhosts) {
|
||||||
virBufferAddLit(&configbuf, "dhcp-no-override\n");
|
virBufferAddLit(&configbuf, "dhcp-no-override\n");
|
||||||
@ -37,10 +37,10 @@ Index: libvirt-6.7.0/src/network/bridge_driver.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (ipdef->tftproot) {
|
if (ipdef->tftproot) {
|
||||||
Index: libvirt-6.7.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
Index: libvirt-6.8.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
--- libvirt-6.8.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||||
+++ libvirt-6.7.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
+++ libvirt-6.8.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||||
@@ -10,7 +10,6 @@ bind-dynamic
|
@@ -10,7 +10,6 @@ bind-dynamic
|
||||||
interface=virbr1
|
interface=virbr1
|
||||||
dhcp-range=192.168.122.1,static
|
dhcp-range=192.168.122.1,static
|
||||||
|
@ -2,10 +2,10 @@ Canonicalize hostarch name ppc64le to ppc64
|
|||||||
|
|
||||||
See bnc#894956
|
See bnc#894956
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/util/virarch.c
|
Index: libvirt-6.8.0/src/util/virarch.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/util/virarch.c
|
--- libvirt-6.8.0.orig/src/util/virarch.c
|
||||||
+++ libvirt-6.7.0/src/util/virarch.c
|
+++ libvirt-6.8.0/src/util/virarch.c
|
||||||
@@ -220,6 +220,8 @@ virArch virArchFromHost(void)
|
@@ -220,6 +220,8 @@ virArch virArchFromHost(void)
|
||||||
arch = VIR_ARCH_I686;
|
arch = VIR_ARCH_I686;
|
||||||
} else if (STREQ(ut.machine, "amd64")) {
|
} else if (STREQ(ut.machine, "amd64")) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Index: libvirt-6.7.0/src/security/apparmor/libvirt-qemu
|
Index: libvirt-6.8.0/src/security/apparmor/libvirt-qemu
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/security/apparmor/libvirt-qemu
|
--- libvirt-6.8.0.orig/src/security/apparmor/libvirt-qemu
|
||||||
+++ libvirt-6.7.0/src/security/apparmor/libvirt-qemu
|
+++ libvirt-6.8.0/src/security/apparmor/libvirt-qemu
|
||||||
@@ -243,3 +243,6 @@
|
@@ -243,3 +243,6 @@
|
||||||
# /sys/bus/nd/devices
|
# /sys/bus/nd/devices
|
||||||
/ r, # harmless on any lsb compliant system
|
/ r, # harmless on any lsb compliant system
|
||||||
|
@ -8,10 +8,10 @@ It was also noticed that the per-domain profiles need a libnl rule
|
|||||||
to squelch a denial when starting confined domains.
|
to squelch a denial when starting confined domains.
|
||||||
|
|
||||||
Found while investigating bsc#1058847
|
Found while investigating bsc#1058847
|
||||||
Index: libvirt-6.7.0/src/security/apparmor/libvirt-qemu
|
Index: libvirt-6.8.0/src/security/apparmor/libvirt-qemu
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/security/apparmor/libvirt-qemu
|
--- libvirt-6.8.0.orig/src/security/apparmor/libvirt-qemu
|
||||||
+++ libvirt-6.7.0/src/security/apparmor/libvirt-qemu
|
+++ libvirt-6.8.0/src/security/apparmor/libvirt-qemu
|
||||||
@@ -64,6 +64,7 @@
|
@@ -64,6 +64,7 @@
|
||||||
#/dev/fb* rw,
|
#/dev/fb* rw,
|
||||||
|
|
||||||
@ -20,10 +20,10 @@ Index: libvirt-6.7.0/src/security/apparmor/libvirt-qemu
|
|||||||
@{HOME}/.pulse-cookie rwk,
|
@{HOME}/.pulse-cookie rwk,
|
||||||
owner /root/.pulse-cookie rwk,
|
owner /root/.pulse-cookie rwk,
|
||||||
owner /root/.pulse/ rw,
|
owner /root/.pulse/ rw,
|
||||||
Index: libvirt-6.7.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
|
Index: libvirt-6.8.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
|
--- libvirt-6.8.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
|
||||||
+++ libvirt-6.7.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
|
+++ libvirt-6.8.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
|
||||||
@@ -19,7 +19,7 @@ profile virt-aa-helper @libexecdir@/virt
|
@@ -19,7 +19,7 @@ profile virt-aa-helper @libexecdir@/virt
|
||||||
# Used when internally running another command (namely apparmor_parser)
|
# Used when internally running another command (namely apparmor_parser)
|
||||||
@{PROC}/@{pid}/fd/ r,
|
@{PROC}/@{pid}/fd/ r,
|
||||||
|
@ -9,11 +9,11 @@ need backporting to anything older. The dependency on xen.git commit
|
|||||||
c3999835df makes it hard to upstream this patch.
|
c3999835df makes it hard to upstream this patch.
|
||||||
|
|
||||||
See bsc#1157490 and bsc#1167007 for more details
|
See bsc#1157490 and bsc#1167007 for more details
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
Index: libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_conf.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_conf.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_conf.c
|
+++ libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
@@ -1825,7 +1825,7 @@ libxlDriverConfigNew(void)
|
@@ -1838,7 +1838,7 @@ libxlDriverConfigNew(void)
|
||||||
int
|
int
|
||||||
libxlDriverConfigInit(libxlDriverConfigPtr cfg)
|
libxlDriverConfigInit(libxlDriverConfigPtr cfg)
|
||||||
{
|
{
|
||||||
@ -22,10 +22,10 @@ Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
|||||||
|
|
||||||
if (virFileMakePath(cfg->logDir) < 0) {
|
if (virFileMakePath(cfg->logDir) < 0) {
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_domain.c
|
Index: libvirt-6.8.0/src/libxl/libxl_domain.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_domain.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_domain.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_domain.c
|
+++ libvirt-6.8.0/src/libxl/libxl_domain.c
|
||||||
@@ -1020,8 +1020,8 @@ libxlDomainSetVcpuAffinities(libxlDriver
|
@@ -1020,8 +1020,8 @@ libxlDomainSetVcpuAffinities(libxlDriver
|
||||||
static int
|
static int
|
||||||
libxlDomainFreeMem(libxl_ctx *ctx, libxl_domain_config *d_config)
|
libxlDomainFreeMem(libxl_ctx *ctx, libxl_domain_config *d_config)
|
||||||
@ -46,10 +46,10 @@ Index: libvirt-6.7.0/src/libxl/libxl_domain.c
|
|||||||
&aop_console_how);
|
&aop_console_how);
|
||||||
libxl_domain_restore_params_dispose(¶ms);
|
libxl_domain_restore_params_dispose(¶ms);
|
||||||
}
|
}
|
||||||
Index: libvirt-6.7.0/tests/libxlmock.c
|
Index: libvirt-6.8.0/tests/libxlmock.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tests/libxlmock.c
|
--- libvirt-6.8.0.orig/tests/libxlmock.c
|
||||||
+++ libvirt-6.7.0/tests/libxlmock.c
|
+++ libvirt-6.8.0/tests/libxlmock.c
|
||||||
@@ -67,7 +67,7 @@ VIR_MOCK_IMPL_RET_ARGS(libxl_get_version
|
@@ -67,7 +67,7 @@ VIR_MOCK_IMPL_RET_ARGS(libxl_get_version
|
||||||
VIR_MOCK_STUB_RET_ARGS(libxl_get_free_memory,
|
VIR_MOCK_STUB_RET_ARGS(libxl_get_free_memory,
|
||||||
int, 0,
|
int, 0,
|
||||||
@ -59,11 +59,11 @@ Index: libvirt-6.7.0/tests/libxlmock.c
|
|||||||
|
|
||||||
VIR_MOCK_STUB_RET_ARGS(xc_interface_close,
|
VIR_MOCK_STUB_RET_ARGS(xc_interface_close,
|
||||||
int, 0,
|
int, 0,
|
||||||
Index: libvirt-6.7.0/meson.build
|
Index: libvirt-6.8.0/meson.build
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/meson.build
|
--- libvirt-6.8.0.orig/meson.build
|
||||||
+++ libvirt-6.7.0/meson.build
|
+++ libvirt-6.8.0/meson.build
|
||||||
@@ -1645,7 +1645,7 @@ elif get_option('driver_interface').enab
|
@@ -1625,7 +1625,7 @@ elif get_option('driver_interface').enab
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if not get_option('driver_libxl').disabled() and conf.has('WITH_LIBVIRTD')
|
if not get_option('driver_libxl').disabled() and conf.has('WITH_LIBVIRTD')
|
||||||
@ -72,7 +72,7 @@ Index: libvirt-6.7.0/meson.build
|
|||||||
libxl_dep = dependency('xenlight', version: '>=' + libxl_version, required: get_option('driver_libxl'))
|
libxl_dep = dependency('xenlight', version: '>=' + libxl_version, required: get_option('driver_libxl'))
|
||||||
|
|
||||||
if libxl_dep.found()
|
if libxl_dep.found()
|
||||||
@@ -1675,7 +1675,7 @@ if not get_option('driver_libxl').disabl
|
@@ -1655,7 +1655,7 @@ if not get_option('driver_libxl').disabl
|
||||||
endif
|
endif
|
||||||
|
|
||||||
libxl_dep = declare_dependency(
|
libxl_dep = declare_dependency(
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
Adjust libvirt-guests service to conform to SUSE standards
|
Adjust libvirt-guests service to conform to SUSE standards
|
||||||
|
|
||||||
Index: libvirt-6.7.0/tools/libvirt-guests.sh.in
|
Index: libvirt-6.8.0/tools/libvirt-guests.sh.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tools/libvirt-guests.sh.in
|
--- libvirt-6.8.0.orig/tools/libvirt-guests.sh.in
|
||||||
+++ libvirt-6.7.0/tools/libvirt-guests.sh.in
|
+++ libvirt-6.8.0/tools/libvirt-guests.sh.in
|
||||||
@@ -16,14 +16,13 @@
|
@@ -16,14 +16,13 @@
|
||||||
# License along with this library. If not, see
|
# License along with this library. If not, see
|
||||||
# <http://www.gnu.org/licenses/>.
|
# <http://www.gnu.org/licenses/>.
|
||||||
@ -163,10 +163,10 @@ Index: libvirt-6.7.0/tools/libvirt-guests.sh.in
|
|||||||
esac
|
esac
|
||||||
-exit $RETVAL
|
-exit $RETVAL
|
||||||
+rc_exit
|
+rc_exit
|
||||||
Index: libvirt-6.7.0/tools/libvirt-guests.sysconf
|
Index: libvirt-6.8.0/tools/libvirt-guests.sysconf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tools/libvirt-guests.sysconf
|
--- libvirt-6.8.0.orig/tools/libvirt-guests.sysconf
|
||||||
+++ libvirt-6.7.0/tools/libvirt-guests.sysconf
|
+++ libvirt-6.8.0/tools/libvirt-guests.sysconf
|
||||||
@@ -1,9 +1,14 @@
|
@@ -1,9 +1,14 @@
|
||||||
+## Path: System/Virtualization/libvirt-guests
|
+## Path: System/Virtualization/libvirt-guests
|
||||||
# Customizations for the libvirt-guests.service systemd unit
|
# Customizations for the libvirt-guests.service systemd unit
|
||||||
|
@ -3,10 +3,10 @@ Disable TLS by default
|
|||||||
On SUSE distros, the default is for libvirtd to listen only on the
|
On SUSE distros, the default is for libvirtd to listen only on the
|
||||||
Unix Domain Socket. The libvirt client still provides remote access
|
Unix Domain Socket. The libvirt client still provides remote access
|
||||||
via a SSH tunnel.
|
via a SSH tunnel.
|
||||||
Index: libvirt-6.7.0/src/remote/remote_daemon_config.c
|
Index: libvirt-6.8.0/src/remote/remote_daemon_config.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/remote/remote_daemon_config.c
|
--- libvirt-6.8.0.orig/src/remote/remote_daemon_config.c
|
||||||
+++ libvirt-6.7.0/src/remote/remote_daemon_config.c
|
+++ libvirt-6.8.0/src/remote/remote_daemon_config.c
|
||||||
@@ -99,7 +99,7 @@ daemonConfigNew(bool privileged G_GNUC_U
|
@@ -99,7 +99,7 @@ daemonConfigNew(bool privileged G_GNUC_U
|
||||||
|
|
||||||
#ifdef WITH_IP
|
#ifdef WITH_IP
|
||||||
@ -16,10 +16,10 @@ Index: libvirt-6.7.0/src/remote/remote_daemon_config.c
|
|||||||
# else /* ! LIBVIRTD */
|
# else /* ! LIBVIRTD */
|
||||||
data->listen_tls = false; /* Always honoured, --listen doesn't exist. */
|
data->listen_tls = false; /* Always honoured, --listen doesn't exist. */
|
||||||
# endif /* ! LIBVIRTD */
|
# endif /* ! LIBVIRTD */
|
||||||
Index: libvirt-6.7.0/src/remote/libvirtd.conf.in
|
Index: libvirt-6.8.0/src/remote/libvirtd.conf.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/remote/libvirtd.conf.in
|
--- libvirt-6.8.0.orig/src/remote/libvirtd.conf.in
|
||||||
+++ libvirt-6.7.0/src/remote/libvirtd.conf.in
|
+++ libvirt-6.8.0/src/remote/libvirtd.conf.in
|
||||||
@@ -17,8 +17,8 @@
|
@@ -17,8 +17,8 @@
|
||||||
# It is necessary to setup a CA and issue server certificates before
|
# It is necessary to setup a CA and issue server certificates before
|
||||||
# using this capability.
|
# using this capability.
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
Adjust libvirtd sysconfig file to conform to SUSE standards
|
Adjust libvirtd sysconfig file to conform to SUSE standards
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/remote/libvirtd.sysconf
|
Index: libvirt-6.8.0/src/remote/libvirtd.sysconf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/remote/libvirtd.sysconf
|
--- libvirt-6.8.0.orig/src/remote/libvirtd.sysconf
|
||||||
+++ libvirt-6.7.0/src/remote/libvirtd.sysconf
|
+++ libvirt-6.8.0/src/remote/libvirtd.sysconf
|
||||||
@@ -1,5 +1,9 @@
|
@@ -1,5 +1,9 @@
|
||||||
+## Path: System/Virtualization/libvirt
|
+## Path: System/Virtualization/libvirt
|
||||||
# Customizations for the libvirtd.service systemd unit
|
# Customizations for the libvirtd.service systemd unit
|
||||||
|
@ -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
|
by default. It can only be enabled with the 'autoballoon' setting in
|
||||||
libxl.conf. See jsc#SLE-3059 for more details.
|
libxl.conf. See jsc#SLE-3059 for more details.
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl.conf
|
Index: libvirt-6.8.0/src/libxl/libxl.conf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl.conf
|
--- libvirt-6.8.0.orig/src/libxl/libxl.conf
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl.conf
|
+++ libvirt-6.8.0/src/libxl/libxl.conf
|
||||||
@@ -4,12 +4,11 @@
|
@@ -4,12 +4,11 @@
|
||||||
|
|
||||||
# Enable autoballooning of domain0
|
# Enable autoballooning of domain0
|
||||||
@ -27,11 +27,11 @@ Index: libvirt-6.7.0/src/libxl/libxl.conf
|
|||||||
|
|
||||||
|
|
||||||
# In order to prevent accidentally starting two domains that
|
# In order to prevent accidentally starting two domains that
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
Index: libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_conf.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_conf.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_conf.c
|
+++ libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
@@ -1739,15 +1739,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
|
@@ -1752,15 +1752,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
|
||||||
/*
|
/*
|
||||||
* Get domain0 autoballoon configuration. Honor user-specified
|
* Get domain0 autoballoon configuration. Honor user-specified
|
||||||
* setting in libxl.conf first. If not specified, autoballooning
|
* setting in libxl.conf first. If not specified, autoballooning
|
||||||
@ -48,7 +48,7 @@ Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
|||||||
int res;
|
int res;
|
||||||
|
|
||||||
res = virConfGetValueBool(conf, "autoballoon", &cfg->autoballoon);
|
res = virConfGetValueBool(conf, "autoballoon", &cfg->autoballoon);
|
||||||
@@ -1756,15 +1753,8 @@ libxlGetAutoballoonConf(libxlDriverConfi
|
@@ -1769,15 +1766,8 @@ libxlGetAutoballoonConf(libxlDriverConfi
|
||||||
else if (res == 1)
|
else if (res == 1)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
Adjust paths of OVMF firmwares on SUSE distros
|
Adjust paths of OVMF firmwares on SUSE distros
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu.conf
|
Index: libvirt-6.8.0/src/qemu/qemu.conf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu.conf
|
--- libvirt-6.8.0.orig/src/qemu/qemu.conf
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu.conf
|
+++ libvirt-6.8.0/src/qemu/qemu.conf
|
||||||
@@ -844,10 +844,9 @@
|
@@ -844,10 +844,9 @@
|
||||||
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
|
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
|
||||||
# follows this scheme.
|
# follows this scheme.
|
||||||
@ -18,10 +18,10 @@ Index: libvirt-6.7.0/src/qemu/qemu.conf
|
|||||||
#]
|
#]
|
||||||
|
|
||||||
# The backend to use for handling stdout/stderr output from
|
# The backend to use for handling stdout/stderr output from
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu_conf.c
|
Index: libvirt-6.8.0/src/qemu/qemu_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu_conf.c
|
--- libvirt-6.8.0.orig/src/qemu/qemu_conf.c
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu_conf.c
|
+++ libvirt-6.8.0/src/qemu/qemu_conf.c
|
||||||
@@ -97,10 +97,9 @@ qemuDriverUnlock(virQEMUDriverPtr driver
|
@@ -97,10 +97,9 @@ qemuDriverUnlock(virQEMUDriverPtr driver
|
||||||
|
|
||||||
#ifndef DEFAULT_LOADER_NVRAM
|
#ifndef DEFAULT_LOADER_NVRAM
|
||||||
@ -36,10 +36,10 @@ Index: libvirt-6.7.0/src/qemu/qemu_conf.c
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/security/virt-aa-helper.c
|
Index: libvirt-6.8.0/src/security/virt-aa-helper.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/security/virt-aa-helper.c
|
--- libvirt-6.8.0.orig/src/security/virt-aa-helper.c
|
||||||
+++ libvirt-6.7.0/src/security/virt-aa-helper.c
|
+++ libvirt-6.8.0/src/security/virt-aa-helper.c
|
||||||
@@ -479,7 +479,8 @@ valid_path(const char *path, const bool
|
@@ -479,7 +479,8 @@ valid_path(const char *path, const bool
|
||||||
"/usr/share/ovmf/", /* for OVMF images */
|
"/usr/share/ovmf/", /* for OVMF images */
|
||||||
"/usr/share/AAVMF/", /* for AAVMF images */
|
"/usr/share/AAVMF/", /* for AAVMF images */
|
||||||
|
@ -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
|
etc.), but for now they are all lumped together in this
|
||||||
single patch.
|
single patch.
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu.conf
|
Index: libvirt-6.8.0/src/qemu/qemu.conf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu.conf
|
--- libvirt-6.8.0.orig/src/qemu/qemu.conf
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu.conf
|
+++ libvirt-6.8.0/src/qemu/qemu.conf
|
||||||
@@ -477,10 +477,19 @@
|
@@ -477,10 +477,19 @@
|
||||||
# isolation, but it cannot appear in a list of drivers.
|
# isolation, but it cannot appear in a list of drivers.
|
||||||
#
|
#
|
||||||
@ -60,10 +60,10 @@ Index: libvirt-6.7.0/src/qemu/qemu.conf
|
|||||||
#
|
#
|
||||||
#lock_manager = "lockd"
|
#lock_manager = "lockd"
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/qemu/qemu_conf.c
|
Index: libvirt-6.8.0/src/qemu/qemu_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/qemu/qemu_conf.c
|
--- libvirt-6.8.0.orig/src/qemu/qemu_conf.c
|
||||||
+++ libvirt-6.7.0/src/qemu/qemu_conf.c
|
+++ libvirt-6.8.0/src/qemu/qemu_conf.c
|
||||||
@@ -267,7 +267,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf
|
@@ -267,7 +267,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf
|
||||||
cfg->slirpHelperName = g_strdup(QEMU_SLIRP_HELPER);
|
cfg->slirpHelperName = g_strdup(QEMU_SLIRP_HELPER);
|
||||||
cfg->dbusDaemonName = g_strdup(QEMU_DBUS_DAEMON);
|
cfg->dbusDaemonName = g_strdup(QEMU_DBUS_DAEMON);
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
Adjust virtlockd sysconfig file to conform to SUSE standards
|
Adjust virtlockd sysconfig file to conform to SUSE standards
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/locking/virtlockd.sysconf
|
Index: libvirt-6.8.0/src/locking/virtlockd.sysconf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/locking/virtlockd.sysconf
|
--- libvirt-6.8.0.orig/src/locking/virtlockd.sysconf
|
||||||
+++ libvirt-6.7.0/src/locking/virtlockd.sysconf
|
+++ libvirt-6.8.0/src/locking/virtlockd.sysconf
|
||||||
@@ -1,3 +1,7 @@
|
@@ -1,3 +1,7 @@
|
||||||
+## Path: System/Virtualization/virtlockd
|
+## Path: System/Virtualization/virtlockd
|
||||||
+
|
+
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
Adjust virtlogd sysconfig file to conform to SUSE standards
|
Adjust virtlogd sysconfig file to conform to SUSE standards
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/logging/virtlogd.sysconf
|
Index: libvirt-6.8.0/src/logging/virtlogd.sysconf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/logging/virtlogd.sysconf
|
--- libvirt-6.8.0.orig/src/logging/virtlogd.sysconf
|
||||||
+++ libvirt-6.7.0/src/logging/virtlogd.sysconf
|
+++ libvirt-6.8.0/src/logging/virtlogd.sysconf
|
||||||
@@ -1,3 +1,7 @@
|
@@ -1,3 +1,7 @@
|
||||||
+## Path: System/Virtualization/virtlogd
|
+## Path: System/Virtualization/virtlogd
|
||||||
+
|
+
|
||||||
|
@ -5,11 +5,11 @@ upstream support for firmware autoselection in the xen driver. Sadly, the
|
|||||||
upstream efforts to improve firmware handling in the qemu driver broke
|
upstream efforts to improve firmware handling in the qemu driver broke
|
||||||
the firmware handling in the xen driver.
|
the firmware handling in the xen driver.
|
||||||
|
|
||||||
Index: libvirt-6.7.0/src/libxl/libxl_conf.c
|
Index: libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/src/libxl/libxl_conf.c
|
--- libvirt-6.8.0.orig/src/libxl/libxl_conf.c
|
||||||
+++ libvirt-6.7.0/src/libxl/libxl_conf.c
|
+++ libvirt-6.8.0/src/libxl/libxl_conf.c
|
||||||
@@ -1779,6 +1779,15 @@ libxlDriverConfigNew(void)
|
@@ -1792,6 +1792,15 @@ libxlDriverConfigNew(void)
|
||||||
cfg->autoDumpDir = g_strdup(LIBXL_DUMP_DIR);
|
cfg->autoDumpDir = g_strdup(LIBXL_DUMP_DIR);
|
||||||
cfg->channelDir = g_strdup(LIBXL_CHANNEL_DIR);
|
cfg->channelDir = g_strdup(LIBXL_CHANNEL_DIR);
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Index: libvirt-6.7.0/tools/virt-create-rootfs
|
Index: libvirt-6.8.0/tools/virt-create-rootfs
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ libvirt-6.7.0/tools/virt-create-rootfs
|
+++ libvirt-6.8.0/tools/virt-create-rootfs
|
||||||
@@ -0,0 +1,231 @@
|
@@ -0,0 +1,231 @@
|
||||||
+#!/bin/sh
|
+#!/bin/sh
|
||||||
+set -e
|
+set -e
|
||||||
@ -234,10 +234,10 @@ Index: libvirt-6.7.0/tools/virt-create-rootfs
|
|||||||
+ echo "pts/0" >> "$ROOT/etc/securetty"
|
+ echo "pts/0" >> "$ROOT/etc/securetty"
|
||||||
+ chroot "$ROOT" /usr/bin/passwd
|
+ chroot "$ROOT" /usr/bin/passwd
|
||||||
+fi
|
+fi
|
||||||
Index: libvirt-6.7.0/docs/manpages/virt-create-rootfs.rst
|
Index: libvirt-6.8.0/docs/manpages/virt-create-rootfs.rst
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ libvirt-6.7.0/docs/manpages/virt-create-rootfs.rst
|
+++ libvirt-6.8.0/docs/manpages/virt-create-rootfs.rst
|
||||||
@@ -0,0 +1,88 @@
|
@@ -0,0 +1,88 @@
|
||||||
+==================
|
+==================
|
||||||
+virt-create-rootfs
|
+virt-create-rootfs
|
||||||
@ -327,10 +327,10 @@ Index: libvirt-6.7.0/docs/manpages/virt-create-rootfs.rst
|
|||||||
+========
|
+========
|
||||||
+
|
+
|
||||||
+virsh(1), `https://libvirt.org/ <https://libvirt.org/>`_
|
+virsh(1), `https://libvirt.org/ <https://libvirt.org/>`_
|
||||||
Index: libvirt-6.7.0/docs/manpages/meson.build
|
Index: libvirt-6.8.0/docs/manpages/meson.build
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/docs/manpages/meson.build
|
--- libvirt-6.8.0.orig/docs/manpages/meson.build
|
||||||
+++ libvirt-6.7.0/docs/manpages/meson.build
|
+++ libvirt-6.8.0/docs/manpages/meson.build
|
||||||
@@ -15,6 +15,7 @@ docs_man_files = [
|
@@ -15,6 +15,7 @@ docs_man_files = [
|
||||||
{ 'name': 'virt-pki-validate', 'section': '1', 'install': true },
|
{ 'name': 'virt-pki-validate', 'section': '1', 'install': true },
|
||||||
{ 'name': 'virt-qemu-run', 'section': '1', 'install': conf.has('WITH_QEMU') },
|
{ 'name': 'virt-qemu-run', 'section': '1', 'install': conf.has('WITH_QEMU') },
|
||||||
@ -339,10 +339,10 @@ Index: libvirt-6.7.0/docs/manpages/meson.build
|
|||||||
|
|
||||||
{ 'name': 'libvirtd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
{ 'name': 'libvirtd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
||||||
{ 'name': 'virt-sanlock-cleanup', 'section': '8', 'install': conf.has('WITH_SANLOCK') },
|
{ 'name': 'virt-sanlock-cleanup', 'section': '8', 'install': conf.has('WITH_SANLOCK') },
|
||||||
Index: libvirt-6.7.0/tools/meson.build
|
Index: libvirt-6.8.0/tools/meson.build
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-6.7.0.orig/tools/meson.build
|
--- libvirt-6.8.0.orig/tools/meson.build
|
||||||
+++ libvirt-6.7.0/tools/meson.build
|
+++ libvirt-6.8.0/tools/meson.build
|
||||||
@@ -149,6 +149,8 @@ else
|
@@ -149,6 +149,8 @@ else
|
||||||
virsh_icon_res = []
|
virsh_icon_res = []
|
||||||
endif
|
endif
|
||||||
|
Loading…
Reference in New Issue
Block a user