Accepting request 811207 from Virtualization

OBS-URL: https://build.opensuse.org/request/show/811207
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=306
This commit is contained in:
Dominique Leuenberger 2020-06-05 18:03:58 +00:00 committed by Git OBS Bridge
commit 6316447c05
37 changed files with 332 additions and 472 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.3.0/src/conf/domain_stats.c
Index: libvirt-6.4.0/src/conf/domain_stats.c
===================================================================
--- /dev/null
+++ libvirt-6.3.0/src/conf/domain_stats.c
+++ libvirt-6.4.0/src/conf/domain_stats.c
@@ -0,0 +1,119 @@
+/*
+ * domain_stats.c: domain stats extraction helpers
@ -142,10 +142,10 @@ Index: libvirt-6.3.0/src/conf/domain_stats.c
+}
+
+#undef STATS_ADD_NET_PARAM
Index: libvirt-6.3.0/src/conf/domain_stats.h
Index: libvirt-6.4.0/src/conf/domain_stats.h
===================================================================
--- /dev/null
+++ libvirt-6.3.0/src/conf/domain_stats.h
+++ libvirt-6.4.0/src/conf/domain_stats.h
@@ -0,0 +1,62 @@
+/*
+ * domain_stats.h: domain stats extraction helpers
@ -209,10 +209,10 @@ Index: libvirt-6.3.0/src/conf/domain_stats.h
+ virTypedParamListPtr params);
+
+#endif /* __DOMAIN_STATS_H */
Index: libvirt-6.3.0/src/libvirt_private.syms
Index: libvirt-6.4.0/src/libvirt_private.syms
===================================================================
--- libvirt-6.3.0.orig/src/libvirt_private.syms
+++ libvirt-6.3.0/src/libvirt_private.syms
--- libvirt-6.4.0.orig/src/libvirt_private.syms
+++ libvirt-6.4.0/src/libvirt_private.syms
@@ -732,6 +732,9 @@ virDomainConfNWFilterInstantiate;
virDomainConfNWFilterTeardown;
virDomainConfVMNWFilterTeardown;
@ -231,10 +231,10 @@ Index: libvirt-6.3.0/src/libvirt_private.syms
virCgroupHasController;
virCgroupHasEmptyTasks;
virCgroupKillPainfully;
Index: libvirt-6.3.0/src/qemu/qemu_driver.c
Index: libvirt-6.4.0/src/qemu/qemu_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/qemu/qemu_driver.c
+++ libvirt-6.3.0/src/qemu/qemu_driver.c
--- libvirt-6.4.0.orig/src/qemu/qemu_driver.c
+++ libvirt-6.4.0/src/qemu/qemu_driver.c
@@ -64,6 +64,7 @@
#include "virarptable.h"
#include "viruuid.h"
@ -243,7 +243,7 @@ Index: libvirt-6.3.0/src/qemu/qemu_driver.c
#include "domain_audit.h"
#include "domain_cgroup.h"
#include "domain_driver.h"
@@ -20636,13 +20637,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
@@ -20654,13 +20655,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
virTypedParamListPtr params,
unsigned int privflags G_GNUC_UNUSED)
{
@ -258,7 +258,7 @@ Index: libvirt-6.3.0/src/qemu/qemu_driver.c
}
@@ -20945,17 +20940,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
@@ -20963,17 +20958,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
if (!priv->cgroup)
return 0;
@ -277,7 +277,7 @@ Index: libvirt-6.3.0/src/qemu/qemu_driver.c
}
@@ -21123,76 +21108,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
@@ -21141,76 +21126,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
return ret;
}
@ -355,11 +355,11 @@ Index: libvirt-6.3.0/src/qemu/qemu_driver.c
/* refresh information by opening images on the disk */
static int
Index: libvirt-6.3.0/src/util/vircgroup.c
Index: libvirt-6.4.0/src/util/vircgroup.c
===================================================================
--- libvirt-6.3.0.orig/src/util/vircgroup.c
+++ libvirt-6.3.0/src/util/vircgroup.c
@@ -2779,6 +2779,31 @@ virCgroupControllerAvailable(int control
--- libvirt-6.4.0.orig/src/util/vircgroup.c
+++ libvirt-6.4.0/src/util/vircgroup.c
@@ -2776,6 +2776,31 @@ virCgroupControllerAvailable(int control
return ret;
}
@ -391,7 +391,7 @@ Index: libvirt-6.3.0/src/util/vircgroup.c
#else /* !__linux__ */
bool
@@ -2788,6 +2813,14 @@ virCgroupAvailable(void)
@@ -2785,6 +2810,14 @@ virCgroupAvailable(void)
}
@ -406,10 +406,10 @@ Index: libvirt-6.3.0/src/util/vircgroup.c
int
virCgroupNewPartition(const char *path G_GNUC_UNUSED,
bool create G_GNUC_UNUSED,
Index: libvirt-6.3.0/src/util/vircgroup.h
Index: libvirt-6.4.0/src/util/vircgroup.h
===================================================================
--- libvirt-6.3.0.orig/src/util/vircgroup.h
+++ libvirt-6.3.0/src/util/vircgroup.h
--- libvirt-6.4.0.orig/src/util/vircgroup.h
+++ libvirt-6.4.0/src/util/vircgroup.h
@@ -23,6 +23,7 @@
#include "virbitmap.h"
@ -425,10 +425,10 @@ Index: libvirt-6.3.0/src/util/vircgroup.h
+
+int virCgroupGetStatsCpu(virCgroupPtr cgroup,
+ virTypedParamListPtr params);
Index: libvirt-6.3.0/src/conf/Makefile.inc.am
Index: libvirt-6.4.0/src/conf/Makefile.inc.am
===================================================================
--- libvirt-6.3.0.orig/src/conf/Makefile.inc.am
+++ libvirt-6.3.0/src/conf/Makefile.inc.am
--- libvirt-6.4.0.orig/src/conf/Makefile.inc.am
+++ libvirt-6.4.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.3.0/src/libxl/libxl_driver.c
Index: libvirt-6.4.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.3.0/src/libxl/libxl_driver.c
@@ -5287,6 +5287,96 @@ libxlDomainMemoryStats(virDomainPtr dom,
--- libvirt-6.4.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.4.0/src/libxl/libxl_driver.c
@@ -5323,6 +5323,96 @@ libxlDomainMemoryStats(virDomainPtr dom,
#undef LIBXL_SET_MEMSTAT
@ -120,7 +120,7 @@ Index: libvirt-6.3.0/src/libxl/libxl_driver.c
static int
libxlDomainGetJobInfo(virDomainPtr dom,
virDomainJobInfoPtr info)
@@ -6756,6 +6846,7 @@ static virHypervisorDriver libxlHypervis
@@ -6792,6 +6882,7 @@ static virHypervisorDriver libxlHypervis
#endif
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */

View File

@ -9,10 +9,10 @@ them using the existing API.
src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 138 insertions(+)
Index: libvirt-6.3.0/src/lxc/lxc_driver.c
Index: libvirt-6.4.0/src/lxc/lxc_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.3.0/src/lxc/lxc_driver.c
--- libvirt-6.4.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.4.0/src/lxc/lxc_driver.c
@@ -74,6 +74,7 @@
#include "netdev_bandwidth_conf.h"
#include "virsocket.h"

View File

@ -1,55 +0,0 @@
commit 5768726093a86028b517975afc6762bf57edbf4a
Author: Jim Fehlig <jfehlig@suse.com>
Date: Mon May 4 15:52:34 2020 -0600
docs: Xen improvements
In formatdomain, using 'libxl' and 'xen' is redundant since they now
both refer to the same driver. 'xen' predates 'libxl' and unambiguously
identifies the Xen hypervisor, so drop the use of 'libxl'.
In aclpolkit, the connection URI was erroneously identified as 'libxl'
and the name 'xenlight'. Change the URI to 'xen' and driver name to 'Xen'.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Index: libvirt-6.3.0/docs/aclpolkit.html.in
===================================================================
--- libvirt-6.3.0.orig/docs/aclpolkit.html.in
+++ libvirt-6.3.0/docs/aclpolkit.html.in
@@ -342,8 +342,8 @@
<td>interface</td>
</tr>
<tr>
- <td>libxl</td>
- <td>xenlight</td>
+ <td>xen</td>
+ <td>Xen</td>
</tr>
<tr>
<td>lxc</td>
Index: libvirt-6.3.0/docs/formatdomain.html.in
===================================================================
--- libvirt-6.3.0.orig/docs/formatdomain.html.in
+++ libvirt-6.3.0/docs/formatdomain.html.in
@@ -2533,8 +2533,8 @@
The <code>name</code> attribute selects which timer is
being modified, and can be one of
"platform" (currently unsupported),
- "hpet" (libxl, xen, qemu, lxc), "kvmclock" (qemu),
- "pit" (qemu), "rtc" (qemu, lxc), "tsc" (libxl, qemu -
+ "hpet" (xen, qemu, lxc), "kvmclock" (qemu),
+ "pit" (qemu), "rtc" (qemu, lxc), "tsc" (xen, qemu -
<span class="since">since 3.2.0</span>), "hypervclock"
(qemu - <span class="since">since 1.2.2</span>) or
"armvtimer" (qemu - <span class="since">since 6.1.0</span>).
@@ -7518,7 +7518,7 @@ qemu-kvm -net nic,model=? /dev/null
<p>
You can provide the amount of video memory in kibibytes (blocks of
1024 bytes) using <code>vram</code>. This is supported only for guest
- type of "libxl", "vz", "qemu", "vbox", "vmx" and "xen". If no
+ type of "vz", "qemu", "vbox", "vmx" and "xen". If no
value is provided the default is used. If the size is not a power of
two it will be rounded to closest one.
</p>

View File

@ -1,130 +0,0 @@
commit 836ea91d4ed174f2bb65ef894a8d6daf0675e743
Author: Jim Fehlig <jfehlig@suse.com>
Date: Mon May 4 15:20:37 2020 -0600
libxl: Clarify that 'xenlight' should only be used internally
The libxl driver has suffered an identity crisis since its introduction.
It took on the name 'libxl' since at the time libvirt already contained
a 'xen' driver for the old Xen toolstack implementation. 'libxl' is short
for libxenlight, which is often called xenlight. Unfortunately all forms
of the name are used in the libxl driver.
The only remaining use of the 'xenlight' form is when interacting with
the host device manager, which is difficult to change since it would
cause problems when upgrading the driver.
Rename the #define to make it clear the 'xenlight' form is internal and
add a comment describing why the name exists and that its use should be
discouraged.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Index: libvirt-6.3.0/src/libxl/libxl_conf.h
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.h
+++ libvirt-6.3.0/src/libxl/libxl_conf.h
@@ -39,7 +39,12 @@
#include "libxl_logger.h"
#define LIBXL_DRIVER_EXTERNAL_NAME "Xen"
-#define LIBXL_DRIVER_NAME "xenlight"
+/*
+ * We are stuck with the 'xenlight' name since it is used by the hostdev
+ * manager. Changing it would break management of any host devices previously
+ * managed under the name 'xenlight'.
+ */
+#define LIBXL_DRIVER_INTERNAL_NAME "xenlight"
#define LIBXL_VNC_PORT_MIN 5900
#define LIBXL_VNC_PORT_MAX 65535
Index: libvirt-6.3.0/src/libxl/libxl_domain.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_domain.c
+++ libvirt-6.3.0/src/libxl/libxl_domain.c
@@ -873,7 +873,7 @@ libxlDomainCleanup(libxlDriverPrivatePtr
VIR_FREE(xml);
}
- virHostdevReAttachDomainDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ virHostdevReAttachDomainDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def, hostdev_flags, NULL);
VIR_FREE(priv->lockState);
@@ -1370,7 +1370,7 @@ libxlDomainStart(libxlDriverPrivatePtr d
if (cfg->autoballoon && libxlDomainFreeMem(cfg->ctx, &d_config) < 0)
goto cleanup_dom;
- if (virHostdevPrepareDomainDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ if (virHostdevPrepareDomainDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def, hostdev_flags) < 0)
goto cleanup_dom;
Index: libvirt-6.3.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.3.0/src/libxl/libxl_driver.c
@@ -431,7 +431,7 @@ libxlReconnectDomain(virDomainObjPtr vm,
libxlLoggerOpenFile(cfg->logger, vm->def->id, vm->def->name, NULL);
/* Update hostdev state */
- if (virHostdevUpdateActiveDomainDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ if (virHostdevUpdateActiveDomainDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def, hostdev_flags) < 0)
goto error;
@@ -3127,7 +3127,7 @@ libxlDomainAttachHostPCIDevice(libxlDriv
if (VIR_REALLOC_N(vm->def->hostdevs, vm->def->nhostdevs + 1) < 0)
goto cleanup;
- if (virHostdevPreparePCIDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ if (virHostdevPreparePCIDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def->name, vm->def->uuid,
&hostdev, 1, 0) < 0)
goto cleanup;
@@ -3149,7 +3149,7 @@ libxlDomainAttachHostPCIDevice(libxlDriv
goto cleanup;
error:
- virHostdevReAttachPCIDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ virHostdevReAttachPCIDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def->name, &hostdev, 1, NULL);
cleanup:
@@ -3264,7 +3264,7 @@ libxlDomainAttachHostUSBDevice(libxlDriv
if (VIR_REALLOC_N(vm->def->hostdevs, vm->def->nhostdevs + 1) < 0)
goto cleanup;
- if (virHostdevPrepareUSBDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ if (virHostdevPrepareUSBDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def->name, &hostdev, 1, 0) < 0)
goto cleanup;
@@ -3284,7 +3284,7 @@ libxlDomainAttachHostUSBDevice(libxlDriv
goto cleanup;
reattach:
- virHostdevReAttachUSBDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ virHostdevReAttachUSBDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def->name, &hostdev, 1);
cleanup:
@@ -3689,7 +3689,7 @@ libxlDomainDetachHostPCIDevice(libxlDriv
virDomainHostdevRemove(vm->def, idx);
- virHostdevReAttachPCIDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ virHostdevReAttachPCIDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def->name, &hostdev, 1, NULL);
ret = 0;
@@ -3811,7 +3811,7 @@ libxlDomainDetachHostUSBDevice(libxlDriv
virDomainHostdevRemove(vm->def, idx);
- virHostdevReAttachUSBDevices(hostdev_mgr, LIBXL_DRIVER_NAME,
+ virHostdevReAttachUSBDevices(hostdev_mgr, LIBXL_DRIVER_INTERNAL_NAME,
vm->def->name, &hostdev, 1);
ret = 0;

View File

@ -1,58 +0,0 @@
commit d218a9c263190681aa8ee7f0ec5f3c298339d635
Author: Jim Fehlig <jfehlig@suse.com>
Date: Mon May 4 14:51:32 2020 -0600
libxl: Use the name 'Xen' in driver tables
The libxl driver declares its name as 'Xen' through the public
virConnectGetType() API. In the virHypervisorDriver table the name is
set to 'xenlight'. To add more confusion, the name is set to 'LIBXL'
in the virStateDriver. For consistency, use the same name in the driver
tables as reported in the public virConnectGetType() API.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Index: libvirt-6.3.0/src/libxl/libxl_conf.h
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.h
+++ libvirt-6.3.0/src/libxl/libxl_conf.h
@@ -38,6 +38,7 @@
#include "libxl_capabilities.h"
#include "libxl_logger.h"
+#define LIBXL_DRIVER_EXTERNAL_NAME "Xen"
#define LIBXL_DRIVER_NAME "xenlight"
#define LIBXL_VNC_PORT_MIN 5900
#define LIBXL_VNC_PORT_MAX 65535
Index: libvirt-6.3.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.3.0/src/libxl/libxl_driver.c
@@ -911,7 +911,7 @@ libxlConnectGetType(virConnectPtr conn)
if (virConnectGetTypeEnsureACL(conn) < 0)
return NULL;
- return "Xen";
+ return LIBXL_DRIVER_EXTERNAL_NAME;
}
static int
@@ -6608,7 +6608,7 @@ libxlDomainGetMetadata(virDomainPtr dom,
}
static virHypervisorDriver libxlHypervisorDriver = {
- .name = LIBXL_DRIVER_NAME,
+ .name = LIBXL_DRIVER_EXTERNAL_NAME,
.connectURIProbe = libxlConnectURIProbe,
.connectOpen = libxlConnectOpen, /* 0.9.0 */
.connectClose = libxlConnectClose, /* 0.9.0 */
@@ -6732,7 +6732,7 @@ static virConnectDriver libxlConnectDriv
};
static virStateDriver libxlStateDriver = {
- .name = "LIBXL",
+ .name = LIBXL_DRIVER_EXTERNAL_NAME,
.stateInitialize = libxlStateInitialize,
.stateCleanup = libxlStateCleanup,
.stateReload = libxlStateReload,

View File

@ -1,27 +0,0 @@
commit d677de9d567e3e87be295b91723457b461345caa
Author: Daniel P. Berrangé <berrange@redhat.com>
Date: Mon May 4 17:41:46 2020 +0100
remote: fix driver name check for libxl driver
The virConnectGetType() returns "Xen" for libxl, not "LIBXL".
This prevents users opening a connection to the libxl driver when using
the modular daemons.
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Index: libvirt-6.3.0/src/remote/remote_daemon_dispatch.c
===================================================================
--- libvirt-6.3.0.orig/src/remote/remote_daemon_dispatch.c
+++ libvirt-6.3.0/src/remote/remote_daemon_dispatch.c
@@ -2111,7 +2111,7 @@ remoteDispatchConnectOpen(virNetServerPt
VIR_DEBUG("Primary driver type is '%s'", type);
if (STREQ(type, "QEMU") ||
- STREQ(type, "LIBXL") ||
+ STREQ(type, "Xen") ||
STREQ(type, "LXC") ||
STREQ(type, "VBOX") ||
STREQ(type, "bhyve") ||

View File

@ -3,10 +3,10 @@ tests: temporarily disable the new multipath PR tests
The new multipath PR tests are failing in a build root env.
Disable them for now until discussing a solution with upstream.
Index: libvirt-6.3.0/tests/qemuhotplugtest.c
Index: libvirt-6.4.0/tests/qemuhotplugtest.c
===================================================================
--- libvirt-6.3.0.orig/tests/qemuhotplugtest.c
+++ libvirt-6.3.0/tests/qemuhotplugtest.c
--- libvirt-6.4.0.orig/tests/qemuhotplugtest.c
+++ libvirt-6.4.0/tests/qemuhotplugtest.c
@@ -87,8 +87,6 @@ qemuHotplugCreateObjects(virDomainXMLOpt
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_VNC);
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SPICE);
@ -16,7 +16,7 @@ Index: libvirt-6.3.0/tests/qemuhotplugtest.c
if (qemuTestCapsCacheInsert(driver.qemuCapsCache, priv->qemuCaps) < 0)
return -1;
@@ -755,17 +753,6 @@ mymain(void)
@@ -760,17 +758,6 @@ mymain(void)
"device_del", QMP_DEVICE_DELETED("scsi3-0-5-6") QMP_OK,
"human-monitor-command", HMP(""));

View File

@ -0,0 +1,117 @@
commit ec07aad8f8a6ead8e9363c8deec4845edb5bf112
Author: Jim Fehlig <jfehlig@suse.com>
Date: Wed May 27 17:29:33 2020 -0600
libxl: Normalize MAC address in device conf when hotplugging a netdev
Similar to commits 55ce6564634 and 6c17606b7cc in the qemu driver, make
separate copies of persistent and live device config and normalize the MAC
address between the two. This avoids having different MAC address for the
persistent and live config, ensuring the device has the same address when
the persistent config takes affect after a VM restart.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Laine Stump <laine@redhat.com>
Index: libvirt-6.4.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.4.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.4.0/src/libxl/libxl_driver.c
@@ -4096,6 +4096,31 @@ libxlDomainUpdateDeviceConfig(virDomainD
}
+static void
+libxlDomainAttachDeviceNormalize(const virDomainDeviceDef *devConf,
+ virDomainDeviceDefPtr devLive)
+{
+ /*
+ * Fixup anything that needs to be identical in the live and
+ * config versions of DeviceDef, but might not be. Do this by
+ * changing the contents of devLive. This is done after all
+ * post-parse tweaks and validation, so be very careful about what
+ * changes are made.
+ */
+
+ /* MAC address should be identical in both DeviceDefs, but if it
+ * wasn't specified in the XML, and was instead autogenerated, it
+ * will be different for the two since they are each the result of
+ * a separate parser call. If it *was* specified, it will already
+ * be the same, so copying does no harm.
+ */
+
+ if (devConf->type == VIR_DOMAIN_DEVICE_NET)
+ virMacAddrSet(&devLive->data.net->mac, &devConf->data.net->mac);
+
+}
+
+
static int
libxlDomainAttachDeviceFlags(virDomainPtr dom, const char *xml,
unsigned int flags)
@@ -4104,7 +4129,9 @@ libxlDomainAttachDeviceFlags(virDomainPt
libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver);
virDomainObjPtr vm = NULL;
virDomainDefPtr vmdef = NULL;
- virDomainDeviceDefPtr dev = NULL;
+ virDomainDeviceDefPtr devConf = NULL;
+ virDomainDeviceDef devConfSave = { 0 };
+ virDomainDeviceDefPtr devLive = NULL;
int ret = -1;
virCheckFlags(VIR_DOMAIN_DEVICE_MODIFY_LIVE |
@@ -4123,28 +4150,36 @@ libxlDomainAttachDeviceFlags(virDomainPt
goto endjob;
if (flags & VIR_DOMAIN_DEVICE_MODIFY_CONFIG) {
- if (!(dev = virDomainDeviceDefParse(xml, vm->def,
- driver->xmlopt, NULL,
- VIR_DOMAIN_DEF_PARSE_INACTIVE)))
+ if (!(devConf = virDomainDeviceDefParse(xml, vm->def,
+ driver->xmlopt, NULL,
+ VIR_DOMAIN_DEF_PARSE_INACTIVE)))
goto endjob;
/* Make a copy for updated domain. */
if (!(vmdef = virDomainObjCopyPersistentDef(vm, driver->xmlopt, NULL)))
goto endjob;
- if (libxlDomainAttachDeviceConfig(vmdef, dev) < 0)
+ /*
+ * devConf will be NULLed out by
+ * libxlDomainAttachDeviceConfig(), so save it for later use by
+ * libxlDomainAttachDeviceNormalize()
+ */
+ devConfSave = *devConf;
+
+ if (libxlDomainAttachDeviceConfig(vmdef, devConf) < 0)
goto endjob;
}
if (flags & VIR_DOMAIN_DEVICE_MODIFY_LIVE) {
- /* If dev exists it was created to modify the domain config. Free it. */
- virDomainDeviceDefFree(dev);
- if (!(dev = virDomainDeviceDefParse(xml, vm->def,
+ if (!(devLive = virDomainDeviceDefParse(xml, vm->def,
driver->xmlopt, NULL,
VIR_DOMAIN_DEF_PARSE_INACTIVE)))
goto endjob;
- if (libxlDomainAttachDeviceLive(driver, vm, dev) < 0)
+ if (flags & VIR_DOMAIN_AFFECT_CONFIG)
+ libxlDomainAttachDeviceNormalize(&devConfSave, devLive);
+
+ if (libxlDomainAttachDeviceLive(driver, vm, devLive) < 0)
goto endjob;
/*
@@ -4171,7 +4206,8 @@ libxlDomainAttachDeviceFlags(virDomainPt
cleanup:
virDomainDefFree(vmdef);
- virDomainDeviceDefFree(dev);
+ virDomainDeviceDefFree(devConf);
+ virDomainDeviceDefFree(devLive);
virDomainObjEndAPI(&vm);
virObjectUnref(cfg);
return ret;

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5
size 8442636

View File

@ -1,11 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEE20ZoG7ka3OoXD6LUFViLJllr6l0FAl6xDD0ACgkQFViLJllr
6l01XQf/Rrt1ueDNLZEg/e8l42gKyoiC7lIZndYRGqpF0+P7CfWKRQAXktckuNdJ
kVgP6lPl/pFZmsWUsYvb3GolB4OXIfavTgJx1LM+ku5Qa4RPJf8b9O9nikyisbrf
xZe4HM+Z/DQ5ia9gt5/OrVg/uU2NW6bBsktPnRutfUbGP1lGY5a6crNFdSo2nYoy
QbeRPUU8dDy1UCKOpl+Xm6EHbukq0Zj/nW+xRn+kiXQcMs46OfDHCU8J2mpmtJxC
HJEHUZgZ2OymyzITtpg0CecfCixPVle2H+8zd8YOFpqx/IfL4WaNJgy1f4fjBFy9
FgWXzzAwc80Cf4pMJzBZMynxNdfmRA==
=kmvm
-----END PGP SIGNATURE-----

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

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:586ebcf220369d08a07c6cc17035e8a91bb3741e4300199459904e9e02478be7
size 8398396

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

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEE20ZoG7ka3OoXD6LUFViLJllr6l0FAl7WDl4ACgkQFViLJllr
6l1HGggAwbu7umE2jt5pP4EXQDKXF++LxbJI4K3nlU5tvN5FVHltk2jP5ijwxSuH
iYwVzXy+BjaLgVkK7CoZMQYke4ZGB8VvObJyHP07Q9aB57Na5lq8ok34Od7bt0E3
CKfAw5L8iYfVyPElabJTlCpJej8zn094u7Tc0nROu6t8Z+9zpxBNCVJZwyXtYa51
yDfNoIAxk9o5W5wHeWJU+NPWkioqvu5mRUE4gj3Q3ntlu6r/zBlzkeW0c2EzumtT
Nby2xVnI/dGSinsDmY+Rjxl/hA6A3/JJDbM7oa71BSfo3fyA+Xa4WUp6NZ7nV6y/
nwewJq18XQtCI9Jlmlj0tEC/THAvNA==
=gR3a
-----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.3.0/src/cpu_map/ppc64_POWER8.xml
Index: libvirt-6.4.0/src/cpu_map/ppc64_POWER8.xml
===================================================================
--- libvirt-6.3.0.orig/src/cpu_map/ppc64_POWER8.xml
+++ libvirt-6.3.0/src/cpu_map/ppc64_POWER8.xml
--- libvirt-6.4.0.orig/src/cpu_map/ppc64_POWER8.xml
+++ libvirt-6.4.0/src/cpu_map/ppc64_POWER8.xml
@@ -4,5 +4,7 @@
<pvr value='0x004b0000' mask='0xffff0000'/>
<pvr value='0x004c0000' mask='0xffff0000'/>

View File

@ -1,7 +1,7 @@
Index: libvirt-6.3.0/configure.ac
Index: libvirt-6.4.0/configure.ac
===================================================================
--- libvirt-6.3.0.orig/configure.ac
+++ libvirt-6.3.0/configure.ac
--- libvirt-6.4.0.orig/configure.ac
+++ libvirt-6.4.0/configure.ac
@@ -278,6 +278,7 @@ LIBVIRT_ARG_LIBSSH
LIBVIRT_ARG_LIBXML
LIBVIRT_ARG_MACVTAP
@ -26,10 +26,10 @@ Index: libvirt-6.3.0/configure.ac
LIBVIRT_RESULT_NLS
LIBVIRT_RESULT_NSS
LIBVIRT_RESULT_NUMACTL
Index: libvirt-6.3.0/tools/virsh.c
Index: libvirt-6.4.0/tools/virsh.c
===================================================================
--- libvirt-6.3.0.orig/tools/virsh.c
+++ libvirt-6.3.0/tools/virsh.c
--- libvirt-6.4.0.orig/tools/virsh.c
+++ libvirt-6.4.0/tools/virsh.c
@@ -547,6 +547,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
@ -39,10 +39,10 @@ Index: libvirt-6.3.0/tools/virsh.c
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
Index: libvirt-6.3.0/src/interface/interface_backend_netcf.c
Index: libvirt-6.4.0/src/interface/interface_backend_netcf.c
===================================================================
--- libvirt-6.3.0.orig/src/interface/interface_backend_netcf.c
+++ libvirt-6.3.0/src/interface/interface_backend_netcf.c
--- libvirt-6.4.0.orig/src/interface/interface_backend_netcf.c
+++ libvirt-6.4.0/src/interface/interface_backend_netcf.c
@@ -21,7 +21,12 @@
#include <config.h>
@ -154,10 +154,10 @@ Index: libvirt-6.3.0/src/interface/interface_backend_netcf.c
if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0)
return -1;
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
Index: libvirt-6.3.0/src/interface/interface_driver.c
Index: libvirt-6.4.0/src/interface/interface_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/interface/interface_driver.c
+++ libvirt-6.3.0/src/interface/interface_driver.c
--- libvirt-6.4.0.orig/src/interface/interface_driver.c
+++ libvirt-6.4.0/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@ -175,10 +175,10 @@ Index: libvirt-6.3.0/src/interface/interface_driver.c
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
Index: libvirt-6.3.0/m4/virt-netcontrol.m4
Index: libvirt-6.4.0/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
+++ libvirt-6.3.0/m4/virt-netcontrol.m4
+++ libvirt-6.4.0/m4/virt-netcontrol.m4
@@ -0,0 +1,39 @@
+dnl The libnetcontrol library
+dnl
@ -219,10 +219,10 @@ Index: libvirt-6.3.0/m4/virt-netcontrol.m4
+AC_DEFUN([LIBVIRT_RESULT_NETCONTROL],[
+ LIBVIRT_RESULT_LIB([NETCONTROL])
+])
Index: libvirt-6.3.0/src/interface/Makefile.inc.am
Index: libvirt-6.4.0/src/interface/Makefile.inc.am
===================================================================
--- libvirt-6.3.0.orig/src/interface/Makefile.inc.am
+++ libvirt-6.3.0/src/interface/Makefile.inc.am
--- libvirt-6.4.0.orig/src/interface/Makefile.inc.am
+++ libvirt-6.4.0/src/interface/Makefile.inc.am
@@ -6,6 +6,7 @@ INTERFACE_DRIVER_SOURCES = \
$(NULL)

View File

@ -1,3 +1,22 @@
-------------------------------------------------------------------
Wed Jun 3 16:38:09 UTC 2020 - James Fehlig <jfehlig@suse.com>
- libxl: Normalize MAC address in device conf on netdev hotplug
ec07aad8-libxl-normalize-mac-addr.patch
bsc#1172052
-------------------------------------------------------------------
Tue Jun 2 15:16:15 UTC 2020 - James Fehlig <jfehlig@suse.com>
- Update to libvirt 6.4.0
- Many incremental improvements and bug fixes, see
https://libvirt.org/news.html
- Dropped patches:
d677de9d-libxl-fix-driver-name-check.patch,
d218a9c2-libxl-xen-driver-tables.patch,
836ea91d-libxl-xenlight-internal.patch,
57687260-xen-doc-improvements.patch
-------------------------------------------------------------------
Wed May 6 20:43:16 UTC 2020 - James Fehlig <jfehlig@suse.com>

View File

@ -185,7 +185,7 @@
Name: libvirt
URL: http://libvirt.org/
Version: 6.3.0
Version: 6.4.0
Release: 0
Summary: Library providing a virtualization API
License: LGPL-2.1-or-later
@ -338,10 +338,7 @@ Source6: libvirtd-relocation-server.xml
Source99: baselibs.conf
Source100: %{name}-rpmlintrc
# Upstream patches
Patch0: d677de9d-libxl-fix-driver-name-check.patch
Patch1: d218a9c2-libxl-xen-driver-tables.patch
Patch2: 836ea91d-libxl-xenlight-internal.patch
Patch3: 57687260-xen-doc-improvements.patch
Patch0: ec07aad8-libxl-normalize-mac-addr.patch
# Patches pending upstream review
Patch100: libxl-dom-reset.patch
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
@ -878,9 +875,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch100 -p1
%patch101 -p1
%patch150 -p1

View File

@ -8,10 +8,10 @@ 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.3.0/src/libxl/libxl_driver.c
Index: libvirt-6.4.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.3.0/src/libxl/libxl_driver.c
--- libvirt-6.4.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.4.0/src/libxl/libxl_driver.c
@@ -1371,6 +1371,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
}
@ -74,7 +74,7 @@ Index: libvirt-6.3.0/src/libxl/libxl_driver.c
libxlDomainDestroyFlags(virDomainPtr dom,
unsigned int flags)
{
@@ -6631,6 +6686,7 @@ static virHypervisorDriver libxlHypervis
@@ -6667,6 +6722,7 @@ static virHypervisorDriver libxlHypervis
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
.domainReboot = libxlDomainReboot, /* 0.9.0 */

View File

@ -3,10 +3,10 @@ https://bugzilla.novell.com/show_bug.cgi?id=879425
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
Index: libvirt-6.3.0/src/libxl/libxl_conf.c
Index: libvirt-6.4.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.3.0/src/libxl/libxl_conf.c
--- libvirt-6.4.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.4.0/src/libxl/libxl_conf.c
@@ -905,6 +905,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}

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.3.0/include/libvirt/libvirt-domain.h
Index: libvirt-6.4.0/include/libvirt/libvirt-domain.h
===================================================================
--- libvirt-6.3.0.orig/include/libvirt/libvirt-domain.h
+++ libvirt-6.3.0/include/libvirt/libvirt-domain.h
--- libvirt-6.4.0.orig/include/libvirt/libvirt-domain.h
+++ libvirt-6.4.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.3.0/include/libvirt/libvirt-domain.h
/* Domain migration. */
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
unsigned long flags, const char *dname,
Index: libvirt-6.3.0/src/libxl/libxl_driver.c
Index: libvirt-6.4.0/src/libxl/libxl_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.3.0/src/libxl/libxl_driver.c
@@ -6196,6 +6196,9 @@ libxlDomainMigratePerform3Params(virDoma
--- libvirt-6.4.0.orig/src/libxl/libxl_driver.c
+++ libvirt-6.4.0/src/libxl/libxl_driver.c
@@ -6232,6 +6232,9 @@ libxlDomainMigratePerform3Params(virDoma
const char *dname = NULL;
const char *uri = NULL;
int ret = -1;
@ -66,7 +66,7 @@ Index: libvirt-6.3.0/src/libxl/libxl_driver.c
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
virReportUnsupportedError();
@@ -6212,6 +6215,18 @@ libxlDomainMigratePerform3Params(virDoma
@@ -6248,6 +6251,18 @@ libxlDomainMigratePerform3Params(virDoma
virTypedParamsGetString(params, nparams,
VIR_MIGRATE_PARAM_DEST_NAME,
&dname) < 0 ||
@ -85,7 +85,7 @@ Index: libvirt-6.3.0/src/libxl/libxl_driver.c
virTypedParamsGetString(params, nparams,
VIR_MIGRATE_PARAM_URI,
&uri) < 0)
@@ -6226,11 +6241,11 @@ libxlDomainMigratePerform3Params(virDoma
@@ -6262,11 +6277,11 @@ libxlDomainMigratePerform3Params(virDoma
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
@ -99,10 +99,10 @@ Index: libvirt-6.3.0/src/libxl/libxl_driver.c
goto cleanup;
}
Index: libvirt-6.3.0/src/libxl/libxl_migration.c
Index: libvirt-6.4.0/src/libxl/libxl_migration.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_migration.c
+++ libvirt-6.3.0/src/libxl/libxl_migration.c
--- libvirt-6.4.0.orig/src/libxl/libxl_migration.c
+++ libvirt-6.4.0/src/libxl/libxl_migration.c
@@ -345,18 +345,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
static int
libxlDoMigrateSrcSend(libxlDriverPrivatePtr driver,
@ -264,10 +264,10 @@ Index: libvirt-6.3.0/src/libxl/libxl_migration.c
virObjectLock(vm);
if (ret == 0) {
Index: libvirt-6.3.0/src/libxl/libxl_migration.h
Index: libvirt-6.4.0/src/libxl/libxl_migration.h
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_migration.h
+++ libvirt-6.3.0/src/libxl/libxl_migration.h
--- libvirt-6.4.0.orig/src/libxl/libxl_migration.h
+++ libvirt-6.4.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,10 +312,10 @@ Index: libvirt-6.3.0/src/libxl/libxl_migration.h
virDomainPtr
libxlDomainMigrationDstFinish(virConnectPtr dconn,
Index: libvirt-6.3.0/tools/virsh-domain.c
Index: libvirt-6.4.0/tools/virsh-domain.c
===================================================================
--- libvirt-6.3.0.orig/tools/virsh-domain.c
+++ libvirt-6.3.0/tools/virsh-domain.c
--- libvirt-6.4.0.orig/tools/virsh-domain.c
+++ libvirt-6.4.0/tools/virsh-domain.c
@@ -10721,6 +10721,22 @@ static const vshCmdOptDef opts_migrate[]
.type = VSH_OT_STRING,
.help = N_("override the destination host name used for TLS verification")
@ -375,10 +375,10 @@ Index: libvirt-6.3.0/tools/virsh-domain.c
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
goto out;
if (opt) {
Index: libvirt-6.3.0/docs/manpages/virsh.rst
Index: libvirt-6.4.0/docs/manpages/virsh.rst
===================================================================
--- libvirt-6.3.0.orig/docs/manpages/virsh.rst
+++ libvirt-6.3.0/docs/manpages/virsh.rst
--- libvirt-6.4.0.orig/docs/manpages/virsh.rst
+++ libvirt-6.4.0/docs/manpages/virsh.rst
@@ -3093,6 +3093,8 @@ migrate
[--postcopy-bandwidth bandwidth]
[--parallel [--parallel-connections connections]]

View File

@ -7,10 +7,10 @@ and npiv.
For more details, see bsc#954872 and FATE#319810
Index: libvirt-6.3.0/src/libxl/libxl_conf.c
Index: libvirt-6.4.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.3.0/src/libxl/libxl_conf.c
--- libvirt-6.4.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.4.0/src/libxl/libxl_conf.c
@@ -905,6 +905,22 @@ libxlDiskSetDiscard(libxl_device_disk *x
#endif
}

View File

@ -13,10 +13,10 @@ device with the same name that is being created.
src/lxc/lxc_process.c | 1 +
3 files changed, 4 insertions(+)
Index: libvirt-6.3.0/src/lxc/lxc_controller.c
Index: libvirt-6.4.0/src/lxc/lxc_controller.c
===================================================================
--- libvirt-6.3.0.orig/src/lxc/lxc_controller.c
+++ libvirt-6.3.0/src/lxc/lxc_controller.c
--- libvirt-6.4.0.orig/src/lxc/lxc_controller.c
+++ libvirt-6.4.0/src/lxc/lxc_controller.c
@@ -2056,6 +2056,7 @@ static int virLXCControllerDeleteInterfa
if (virNetDevVethDelete(ctrl->veths[i]) < 0)
ret = -1;
@ -25,10 +25,10 @@ Index: libvirt-6.3.0/src/lxc/lxc_controller.c
return ret;
}
Index: libvirt-6.3.0/src/lxc/lxc_driver.c
Index: libvirt-6.4.0/src/lxc/lxc_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.3.0/src/lxc/lxc_driver.c
--- libvirt-6.4.0.orig/src/lxc/lxc_driver.c
+++ libvirt-6.4.0/src/lxc/lxc_driver.c
@@ -67,6 +67,7 @@
#include "virtime.h"
#include "virtypedparam.h"
@ -53,10 +53,10 @@ Index: libvirt-6.3.0/src/lxc/lxc_driver.c
break;
/* It'd be nice to support this, but with macvlan
Index: libvirt-6.3.0/src/lxc/lxc_process.c
Index: libvirt-6.4.0/src/lxc/lxc_process.c
===================================================================
--- libvirt-6.3.0.orig/src/lxc/lxc_process.c
+++ libvirt-6.3.0/src/lxc/lxc_process.c
--- libvirt-6.4.0.orig/src/lxc/lxc_process.c
+++ libvirt-6.4.0/src/lxc/lxc_process.c
@@ -50,6 +50,7 @@
#include "virstring.h"
#include "virprocess.h"

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.3.0/src/network/bridge_driver.c
Index: libvirt-6.4.0/src/network/bridge_driver.c
===================================================================
--- libvirt-6.3.0.orig/src/network/bridge_driver.c
+++ libvirt-6.3.0/src/network/bridge_driver.c
@@ -1476,7 +1476,14 @@ networkDnsmasqConfContents(virNetworkObj
--- libvirt-6.4.0.orig/src/network/bridge_driver.c
+++ libvirt-6.4.0/src/network/bridge_driver.c
@@ -1478,7 +1478,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.3.0/src/network/bridge_driver.c
}
if (ipdef->tftproot) {
Index: libvirt-6.3.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
Index: libvirt-6.4.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
===================================================================
--- libvirt-6.3.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
+++ libvirt-6.3.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
--- libvirt-6.4.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
+++ libvirt-6.4.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,10 +2,10 @@ Canonicalize hostarch name ppc64le to ppc64
See bnc#894956
Index: libvirt-6.3.0/src/util/virarch.c
Index: libvirt-6.4.0/src/util/virarch.c
===================================================================
--- libvirt-6.3.0.orig/src/util/virarch.c
+++ libvirt-6.3.0/src/util/virarch.c
--- libvirt-6.4.0.orig/src/util/virarch.c
+++ libvirt-6.4.0/src/util/virarch.c
@@ -220,6 +220,8 @@ virArch virArchFromHost(void)
arch = VIR_ARCH_I686;
} else if (STREQ(ut.machine, "amd64")) {

View File

@ -1,7 +1,7 @@
Index: libvirt-6.3.0/src/security/apparmor/libvirt-qemu
Index: libvirt-6.4.0/src/security/apparmor/libvirt-qemu
===================================================================
--- libvirt-6.3.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.3.0/src/security/apparmor/libvirt-qemu
--- libvirt-6.4.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.4.0/src/security/apparmor/libvirt-qemu
@@ -233,3 +233,6 @@
# /sys/bus/nd/devices
/ r, # harmless on any lsb compliant system

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.3.0/src/libxl/xen_common.c
Index: libvirt-6.4.0/src/libxl/xen_common.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/xen_common.c
+++ libvirt-6.3.0/src/libxl/xen_common.c
--- libvirt-6.4.0.orig/src/libxl/xen_common.c
+++ libvirt-6.4.0/src/libxl/xen_common.c
@@ -381,12 +381,19 @@ xenParsePCI(char *entry)
int busID;
int slotID;

View File

@ -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.
Found while investigating bsc#1058847
Index: libvirt-6.3.0/src/security/apparmor/libvirt-qemu
Index: libvirt-6.4.0/src/security/apparmor/libvirt-qemu
===================================================================
--- libvirt-6.3.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.3.0/src/security/apparmor/libvirt-qemu
--- libvirt-6.4.0.orig/src/security/apparmor/libvirt-qemu
+++ libvirt-6.4.0/src/security/apparmor/libvirt-qemu
@@ -61,6 +61,7 @@
#/dev/fb* rw,
@ -20,10 +20,10 @@ Index: libvirt-6.3.0/src/security/apparmor/libvirt-qemu
@{HOME}/.pulse-cookie rwk,
owner /root/.pulse-cookie rwk,
owner /root/.pulse/ rw,
Index: libvirt-6.3.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
Index: libvirt-6.4.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
===================================================================
--- libvirt-6.3.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
+++ libvirt-6.3.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
--- libvirt-6.4.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in
+++ libvirt-6.4.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,

View File

@ -9,10 +9,10 @@ need backporting to anything older. The dependency on xen.git commit
c3999835df makes it hard to upstream this patch.
See bsc#1157490 and bsc#1167007 for more details
Index: libvirt-6.3.0/m4/virt-driver-libxl.m4
Index: libvirt-6.4.0/m4/virt-driver-libxl.m4
===================================================================
--- libvirt-6.3.0.orig/m4/virt-driver-libxl.m4
+++ libvirt-6.3.0/m4/virt-driver-libxl.m4
--- libvirt-6.4.0.orig/m4/virt-driver-libxl.m4
+++ libvirt-6.4.0/m4/virt-driver-libxl.m4
@@ -26,11 +26,11 @@ AC_DEFUN([LIBVIRT_DRIVER_CHECK_LIBXL], [
LIBXL_CFLAGS=""
LIBXL_FIRMWARE_DIR=""
@ -27,10 +27,10 @@ Index: libvirt-6.3.0/m4/virt-driver-libxl.m4
if test "x$with_libxl" = "xyes" ; then
LIBXL_FIRMWARE_DIR=$($PKG_CONFIG --variable xenfirmwaredir xenlight)
LIBXL_EXECBIN_DIR=$($PKG_CONFIG --variable libexec_bin xenlight)
Index: libvirt-6.3.0/src/libxl/libxl_conf.c
Index: libvirt-6.4.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.3.0/src/libxl/libxl_conf.c
--- libvirt-6.4.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.4.0/src/libxl/libxl_conf.c
@@ -1823,7 +1823,7 @@ libxlDriverConfigNew(void)
int
libxlDriverConfigInit(libxlDriverConfigPtr cfg)
@ -40,10 +40,10 @@ Index: libvirt-6.3.0/src/libxl/libxl_conf.c
if (virFileMakePath(cfg->logDir) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
Index: libvirt-6.3.0/src/libxl/libxl_domain.c
Index: libvirt-6.4.0/src/libxl/libxl_domain.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_domain.c
+++ libvirt-6.3.0/src/libxl/libxl_domain.c
--- libvirt-6.4.0.orig/src/libxl/libxl_domain.c
+++ libvirt-6.4.0/src/libxl/libxl_domain.c
@@ -1020,8 +1020,8 @@ libxlDomainSetVcpuAffinities(libxlDriver
static int
libxlDomainFreeMem(libxl_ctx *ctx, libxl_domain_config *d_config)
@ -64,10 +64,10 @@ Index: libvirt-6.3.0/src/libxl/libxl_domain.c
&aop_console_how);
libxl_domain_restore_params_dispose(&params);
}
Index: libvirt-6.3.0/tests/libxlmock.c
Index: libvirt-6.4.0/tests/libxlmock.c
===================================================================
--- libvirt-6.3.0.orig/tests/libxlmock.c
+++ libvirt-6.3.0/tests/libxlmock.c
--- libvirt-6.4.0.orig/tests/libxlmock.c
+++ libvirt-6.4.0/tests/libxlmock.c
@@ -67,7 +67,7 @@ VIR_MOCK_IMPL_RET_ARGS(libxl_get_version
VIR_MOCK_STUB_RET_ARGS(libxl_get_free_memory,
int, 0,

View File

@ -1,9 +1,9 @@
Adjust libvirt-guests service to conform to SUSE standards
Index: libvirt-6.3.0/tools/libvirt-guests.sh.in
Index: libvirt-6.4.0/tools/libvirt-guests.sh.in
===================================================================
--- libvirt-6.3.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-6.3.0/tools/libvirt-guests.sh.in
--- libvirt-6.4.0.orig/tools/libvirt-guests.sh.in
+++ libvirt-6.4.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.3.0/tools/libvirt-guests.sh.in
esac
-exit $RETVAL
+rc_exit
Index: libvirt-6.3.0/tools/libvirt-guests.sysconf
Index: libvirt-6.4.0/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-6.3.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-6.3.0/tools/libvirt-guests.sysconf
--- libvirt-6.4.0.orig/tools/libvirt-guests.sysconf
+++ libvirt-6.4.0/tools/libvirt-guests.sysconf
@@ -1,9 +1,14 @@
+## Path: System/Virtualization/libvirt-guests
# Customizations for the libvirt-guests.service systemd unit

View File

@ -3,23 +3,23 @@ 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.3.0/src/remote/remote_daemon_config.c
Index: libvirt-6.4.0/src/remote/remote_daemon_config.c
===================================================================
--- libvirt-6.3.0.orig/src/remote/remote_daemon_config.c
+++ libvirt-6.3.0/src/remote/remote_daemon_config.c
--- libvirt-6.4.0.orig/src/remote/remote_daemon_config.c
+++ libvirt-6.4.0/src/remote/remote_daemon_config.c
@@ -99,7 +99,7 @@ daemonConfigNew(bool privileged G_GNUC_U
#ifdef WITH_IP
# ifdef LIBVIRTD
- data->listen_tls = 1; /* Only honoured if --listen is set */
+ data->listen_tls = 0; /* Only honoured if --listen is set */
- data->listen_tls = true; /* Only honoured if --listen is set */
+ data->listen_tls = false; /* Only honoured if --listen is set */
# else /* ! LIBVIRTD */
data->listen_tls = 0; /* Always honoured, --listen doesn't exist. */
data->listen_tls = false; /* Always honoured, --listen doesn't exist. */
# endif /* ! LIBVIRTD */
Index: libvirt-6.3.0/src/remote/libvirtd.conf.in
Index: libvirt-6.4.0/src/remote/libvirtd.conf.in
===================================================================
--- libvirt-6.3.0.orig/src/remote/libvirtd.conf.in
+++ libvirt-6.3.0/src/remote/libvirtd.conf.in
--- libvirt-6.4.0.orig/src/remote/libvirtd.conf.in
+++ libvirt-6.4.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.3.0/src/remote/libvirtd.sysconf
Index: libvirt-6.4.0/src/remote/libvirtd.sysconf
===================================================================
--- libvirt-6.3.0.orig/src/remote/libvirtd.sysconf
+++ libvirt-6.3.0/src/remote/libvirtd.sysconf
--- libvirt-6.4.0.orig/src/remote/libvirtd.sysconf
+++ libvirt-6.4.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.3.0/src/libxl/libxl.conf
Index: libvirt-6.4.0/src/libxl/libxl.conf
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl.conf
+++ libvirt-6.3.0/src/libxl/libxl.conf
--- libvirt-6.4.0.orig/src/libxl/libxl.conf
+++ libvirt-6.4.0/src/libxl/libxl.conf
@@ -4,12 +4,11 @@
# Enable autoballooning of domain0
@ -27,10 +27,10 @@ Index: libvirt-6.3.0/src/libxl/libxl.conf
# In order to prevent accidentally starting two domains that
Index: libvirt-6.3.0/src/libxl/libxl_conf.c
Index: libvirt-6.4.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.3.0/src/libxl/libxl_conf.c
--- libvirt-6.4.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.4.0/src/libxl/libxl_conf.c
@@ -1737,15 +1737,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
/*
* Get domain0 autoballoon configuration. Honor user-specified

View File

@ -1,10 +1,10 @@
Adjust paths of OVMF firmwares on SUSE distros
Index: libvirt-6.3.0/src/qemu/qemu.conf
Index: libvirt-6.4.0/src/qemu/qemu.conf
===================================================================
--- libvirt-6.3.0.orig/src/qemu/qemu.conf
+++ libvirt-6.3.0/src/qemu/qemu.conf
@@ -788,10 +788,9 @@
--- libvirt-6.4.0.orig/src/qemu/qemu.conf
+++ libvirt-6.4.0/src/qemu/qemu.conf
@@ -787,10 +787,9 @@
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
# follows this scheme.
#nvram = [
@ -18,10 +18,10 @@ Index: libvirt-6.3.0/src/qemu/qemu.conf
#]
# The backend to use for handling stdout/stderr output from
Index: libvirt-6.3.0/src/qemu/qemu_conf.c
Index: libvirt-6.4.0/src/qemu/qemu_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.3.0/src/qemu/qemu_conf.c
--- libvirt-6.4.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.4.0/src/qemu/qemu_conf.c
@@ -96,10 +96,9 @@ qemuDriverUnlock(virQEMUDriverPtr driver
#ifndef DEFAULT_LOADER_NVRAM
@ -36,10 +36,10 @@ Index: libvirt-6.3.0/src/qemu/qemu_conf.c
#endif
Index: libvirt-6.3.0/src/security/virt-aa-helper.c
Index: libvirt-6.4.0/src/security/virt-aa-helper.c
===================================================================
--- libvirt-6.3.0.orig/src/security/virt-aa-helper.c
+++ libvirt-6.3.0/src/security/virt-aa-helper.c
--- libvirt-6.4.0.orig/src/security/virt-aa-helper.c
+++ libvirt-6.4.0/src/security/virt-aa-helper.c
@@ -479,7 +479,8 @@ valid_path(const char *path, const bool
"/usr/share/ovmf/", /* for OVMF images */
"/usr/share/AAVMF/", /* 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.3.0/src/qemu/qemu.conf
Index: libvirt-6.4.0/src/qemu/qemu.conf
===================================================================
--- libvirt-6.3.0.orig/src/qemu/qemu.conf
+++ libvirt-6.3.0/src/qemu/qemu.conf
--- libvirt-6.4.0.orig/src/qemu/qemu.conf
+++ libvirt-6.4.0/src/qemu/qemu.conf
@@ -420,10 +420,19 @@
# isolation, but it cannot appear in a list of drivers.
#
@ -32,7 +32,7 @@ Index: libvirt-6.3.0/src/qemu/qemu.conf
#security_default_confined = 1
# If set to non-zero, then attempts to create unconfined
@@ -659,11 +668,22 @@
@@ -658,11 +667,22 @@
#relaxed_acs_check = 1
@ -60,10 +60,10 @@ Index: libvirt-6.3.0/src/qemu/qemu.conf
#
#lock_manager = "lockd"
Index: libvirt-6.3.0/src/qemu/qemu_conf.c
Index: libvirt-6.4.0/src/qemu/qemu_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.3.0/src/qemu/qemu_conf.c
--- libvirt-6.4.0.orig/src/qemu/qemu_conf.c
+++ libvirt-6.4.0/src/qemu/qemu_conf.c
@@ -266,7 +266,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf
cfg->slirpHelperName = g_strdup(QEMU_SLIRP_HELPER);
cfg->dbusDaemonName = g_strdup(QEMU_DBUS_DAEMON);

View File

@ -1,9 +1,9 @@
Adjust virtlockd sysconfig file to conform to SUSE standards
Index: libvirt-6.3.0/src/locking/virtlockd.sysconf
Index: libvirt-6.4.0/src/locking/virtlockd.sysconf
===================================================================
--- libvirt-6.3.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-6.3.0/src/locking/virtlockd.sysconf
--- libvirt-6.4.0.orig/src/locking/virtlockd.sysconf
+++ libvirt-6.4.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.3.0/src/logging/virtlogd.sysconf
Index: libvirt-6.4.0/src/logging/virtlogd.sysconf
===================================================================
--- libvirt-6.3.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-6.3.0/src/logging/virtlogd.sysconf
--- libvirt-6.4.0.orig/src/logging/virtlogd.sysconf
+++ libvirt-6.4.0/src/logging/virtlogd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlogd
+

View File

@ -5,10 +5,10 @@ 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.3.0/src/libxl/libxl_conf.c
Index: libvirt-6.4.0/src/libxl/libxl_conf.c
===================================================================
--- libvirt-6.3.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.3.0/src/libxl/libxl_conf.c
--- libvirt-6.4.0.orig/src/libxl/libxl_conf.c
+++ libvirt-6.4.0/src/libxl/libxl_conf.c
@@ -1777,6 +1777,15 @@ libxlDriverConfigNew(void)
cfg->autoDumpDir = g_strdup(LIBXL_DUMP_DIR);
cfg->channelDir = g_strdup(LIBXL_CHANNEL_DIR);