Accepting request 666350 from home:jfehlig:branches:Virtualization
- Update to libvirt 5.0.0 - Many incremental improvements and bug fixes, see http://libvirt.org/news.html - Remove UML hypervisor driver - Dropped patches: de09ae2f-libxl-support-openvswitch.patch, 0a1b5653-xenconfig-support-openvswitch.patch - FATE#320928, FATE#325817, FATE#326380, FATE#326698 OBS-URL: https://build.opensuse.org/request/show/666350 OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=723
This commit is contained in:
parent
18fc6c3933
commit
56793e96ce
@ -18,10 +18,10 @@ them.
|
||||
create mode 100644 src/conf/domain_stats.c
|
||||
create mode 100644 src/conf/domain_stats.h
|
||||
|
||||
Index: libvirt-4.10.0/src/conf/domain_stats.c
|
||||
Index: libvirt-5.0.0/src/conf/domain_stats.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/src/conf/domain_stats.c
|
||||
+++ libvirt-5.0.0/src/conf/domain_stats.c
|
||||
@@ -0,0 +1,139 @@
|
||||
+/*
|
||||
+ * domain_stats.c: domain stats extraction helpers
|
||||
@ -162,10 +162,10 @@ Index: libvirt-4.10.0/src/conf/domain_stats.c
|
||||
+}
|
||||
+
|
||||
+#undef STATS_ADD_NET_PARAM
|
||||
Index: libvirt-4.10.0/src/conf/domain_stats.h
|
||||
Index: libvirt-5.0.0/src/conf/domain_stats.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/src/conf/domain_stats.h
|
||||
+++ libvirt-5.0.0/src/conf/domain_stats.h
|
||||
@@ -0,0 +1,64 @@
|
||||
+/*
|
||||
+ * domain_stats.h: domain stats extraction helpers
|
||||
@ -231,11 +231,11 @@ Index: libvirt-4.10.0/src/conf/domain_stats.h
|
||||
+ int *maxparams);
|
||||
+
|
||||
+#endif /* __DOMAIN_STATS_H */
|
||||
Index: libvirt-4.10.0/src/libvirt_private.syms
|
||||
Index: libvirt-5.0.0/src/libvirt_private.syms
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libvirt_private.syms
|
||||
+++ libvirt-4.10.0/src/libvirt_private.syms
|
||||
@@ -658,6 +658,9 @@ virDomainConfNWFilterInstantiate;
|
||||
--- libvirt-5.0.0.orig/src/libvirt_private.syms
|
||||
+++ libvirt-5.0.0/src/libvirt_private.syms
|
||||
@@ -661,6 +661,9 @@ virDomainConfNWFilterInstantiate;
|
||||
virDomainConfNWFilterTeardown;
|
||||
virDomainConfVMNWFilterTeardown;
|
||||
|
||||
@ -245,7 +245,7 @@ Index: libvirt-4.10.0/src/libvirt_private.syms
|
||||
|
||||
# conf/interface_conf.h
|
||||
virInterfaceDefFormat;
|
||||
@@ -1547,6 +1550,7 @@ virCgroupGetMemoryUsage;
|
||||
@@ -1550,6 +1553,7 @@ virCgroupGetMemoryUsage;
|
||||
virCgroupGetMemSwapHardLimit;
|
||||
virCgroupGetMemSwapUsage;
|
||||
virCgroupGetPercpuStats;
|
||||
@ -253,11 +253,11 @@ Index: libvirt-4.10.0/src/libvirt_private.syms
|
||||
virCgroupHasController;
|
||||
virCgroupHasEmptyTasks;
|
||||
virCgroupKillPainfully;
|
||||
Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
Index: libvirt-5.0.0/src/qemu/qemu_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
@@ -69,6 +69,7 @@
|
||||
--- libvirt-5.0.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-5.0.0/src/qemu/qemu_driver.c
|
||||
@@ -67,6 +67,7 @@
|
||||
#include "virarptable.h"
|
||||
#include "viruuid.h"
|
||||
#include "domain_conf.h"
|
||||
@ -265,7 +265,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
#include "domain_audit.h"
|
||||
#include "node_device_conf.h"
|
||||
#include "virpci.h"
|
||||
@@ -19908,21 +19909,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
|
||||
@@ -19969,21 +19970,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr
|
||||
int *maxparams,
|
||||
unsigned int privflags ATTRIBUTE_UNUSED)
|
||||
{
|
||||
@ -288,7 +288,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
}
|
||||
|
||||
|
||||
@@ -20112,37 +20099,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
|
||||
@@ -20173,37 +20160,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
|
||||
int *maxparams)
|
||||
{
|
||||
qemuDomainObjPrivatePtr priv = dom->privateData;
|
||||
@ -327,7 +327,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
}
|
||||
|
||||
|
||||
@@ -20340,44 +20297,6 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
|
||||
@@ -20401,44 +20358,6 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -372,7 +372,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
static int
|
||||
qemuDomainGetStatsInterface(virQEMUDriverPtr driver ATTRIBUTE_UNUSED,
|
||||
virDomainObjPtr dom,
|
||||
@@ -20385,68 +20304,9 @@ qemuDomainGetStatsInterface(virQEMUDrive
|
||||
@@ -20446,68 +20365,9 @@ qemuDomainGetStatsInterface(virQEMUDrive
|
||||
int *maxparams,
|
||||
unsigned int privflags ATTRIBUTE_UNUSED)
|
||||
{
|
||||
@ -442,7 +442,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
#define QEMU_ADD_BLOCK_PARAM_UI(record, maxparams, num, name, value) \
|
||||
do { \
|
||||
char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \
|
||||
@@ -20679,10 +20539,10 @@ qemuDomainGetStatsBlockExportHeader(virD
|
||||
@@ -20740,10 +20600,10 @@ qemuDomainGetStatsBlockExportHeader(virD
|
||||
{
|
||||
int ret = -1;
|
||||
|
||||
@ -455,7 +455,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
if (src->id)
|
||||
QEMU_ADD_BLOCK_PARAM_UI(records, nrecords, recordnr, "backingIndex",
|
||||
src->id);
|
||||
@@ -20822,7 +20682,7 @@ qemuDomainGetStatsBlock(virQEMUDriverPtr
|
||||
@@ -20897,7 +20757,7 @@ qemuDomainGetStatsBlock(virQEMUDriverPtr
|
||||
* after the iteration than it is to iterate twice; but we still
|
||||
* want count listed first. */
|
||||
count_index = record->nparams;
|
||||
@ -464,7 +464,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
|
||||
for (i = 0; i < dom->def->ndisks; i++) {
|
||||
if (qemuDomainGetStatsBlockExportDisk(dom->def->disks[i], stats, nodestats,
|
||||
@@ -20847,8 +20707,6 @@ qemuDomainGetStatsBlock(virQEMUDriverPtr
|
||||
@@ -20922,8 +20782,6 @@ qemuDomainGetStatsBlock(virQEMUDriverPtr
|
||||
|
||||
#undef QEMU_ADD_BLOCK_PARAM_ULL
|
||||
|
||||
@ -473,7 +473,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
#define QEMU_ADD_IOTHREAD_PARAM_UI(record, maxparams, id, name, value) \
|
||||
do { \
|
||||
char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \
|
||||
@@ -20896,7 +20754,7 @@ qemuDomainGetStatsIOThread(virQEMUDriver
|
||||
@@ -20975,7 +20833,7 @@ qemuDomainGetStatsIOThread(virQEMUDriver
|
||||
if (niothreads == 0)
|
||||
return 0;
|
||||
|
||||
@ -482,7 +482,7 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
|
||||
for (i = 0; i < niothreads; i++) {
|
||||
if (iothreads[i]->poll_valid) {
|
||||
@@ -20929,8 +20787,6 @@ qemuDomainGetStatsIOThread(virQEMUDriver
|
||||
@@ -21008,8 +20866,6 @@ qemuDomainGetStatsIOThread(virQEMUDriver
|
||||
|
||||
#undef QEMU_ADD_IOTHREAD_PARAM_ULL
|
||||
|
||||
@ -491,11 +491,11 @@ Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
static int
|
||||
qemuDomainGetStatsPerfOneEvent(virPerfPtr perf,
|
||||
virPerfEventType type,
|
||||
Index: libvirt-4.10.0/src/util/vircgroup.c
|
||||
Index: libvirt-5.0.0/src/util/vircgroup.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/util/vircgroup.c
|
||||
+++ libvirt-4.10.0/src/util/vircgroup.c
|
||||
@@ -2794,6 +2794,44 @@ virCgroupControllerAvailable(int control
|
||||
--- libvirt-5.0.0.orig/src/util/vircgroup.c
|
||||
+++ libvirt-5.0.0/src/util/vircgroup.c
|
||||
@@ -2796,6 +2796,44 @@ virCgroupControllerAvailable(int control
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -540,7 +540,7 @@ Index: libvirt-4.10.0/src/util/vircgroup.c
|
||||
#else /* !__linux__ */
|
||||
|
||||
bool
|
||||
@@ -2803,6 +2841,15 @@ virCgroupAvailable(void)
|
||||
@@ -2805,6 +2843,15 @@ virCgroupAvailable(void)
|
||||
}
|
||||
|
||||
|
||||
@ -556,11 +556,11 @@ Index: libvirt-4.10.0/src/util/vircgroup.c
|
||||
int
|
||||
virCgroupNewPartition(const char *path ATTRIBUTE_UNUSED,
|
||||
bool create ATTRIBUTE_UNUSED,
|
||||
Index: libvirt-4.10.0/src/util/vircgroup.h
|
||||
Index: libvirt-5.0.0/src/util/vircgroup.h
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/util/vircgroup.h
|
||||
+++ libvirt-4.10.0/src/util/vircgroup.h
|
||||
@@ -287,4 +287,9 @@ int virCgroupSetOwner(virCgroupPtr cgrou
|
||||
--- libvirt-5.0.0.orig/src/util/vircgroup.h
|
||||
+++ libvirt-5.0.0/src/util/vircgroup.h
|
||||
@@ -284,4 +284,9 @@ int virCgroupSetOwner(virCgroupPtr cgrou
|
||||
int virCgroupHasEmptyTasks(virCgroupPtr cgroup, int controller);
|
||||
|
||||
bool virCgroupControllerAvailable(int controller);
|
||||
@ -569,11 +569,11 @@ Index: libvirt-4.10.0/src/util/vircgroup.h
|
||||
+ virDomainStatsRecordPtr record,
|
||||
+ int *maxparams);
|
||||
+
|
||||
#endif /* __VIR_CGROUP_H__ */
|
||||
Index: libvirt-4.10.0/src/conf/Makefile.inc.am
|
||||
#endif /* LIBVIRT_VIRCGROUP_H */
|
||||
Index: libvirt-5.0.0/src/conf/Makefile.inc.am
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/conf/Makefile.inc.am
|
||||
+++ libvirt-4.10.0/src/conf/Makefile.inc.am
|
||||
--- libvirt-5.0.0.orig/src/conf/Makefile.inc.am
|
||||
+++ libvirt-5.0.0/src/conf/Makefile.inc.am
|
||||
@@ -20,6 +20,8 @@ DOMAIN_CONF_SOURCES = \
|
||||
conf/domain_audit.h \
|
||||
conf/domain_nwfilter.c \
|
||||
|
@ -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-4.10.0/src/libxl/libxl_driver.c
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
@@ -5253,6 +5253,97 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_driver.c
|
||||
@@ -5251,6 +5251,97 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
||||
|
||||
#undef LIBXL_SET_MEMSTAT
|
||||
|
||||
@ -121,7 +121,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
static int
|
||||
libxlDomainGetJobInfo(virDomainPtr dom,
|
||||
virDomainJobInfoPtr info)
|
||||
@@ -6637,6 +6728,7 @@ static virHypervisorDriver libxlHypervis
|
||||
@@ -6635,6 +6726,7 @@ static virHypervisorDriver libxlHypervis
|
||||
#endif
|
||||
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
|
||||
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */
|
||||
|
@ -9,11 +9,11 @@ them using the existing API.
|
||||
src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 138 insertions(+)
|
||||
|
||||
Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
Index: libvirt-5.0.0/src/lxc/lxc_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
@@ -78,6 +78,7 @@
|
||||
--- libvirt-5.0.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-5.0.0/src/lxc/lxc_driver.c
|
||||
@@ -75,6 +75,7 @@
|
||||
#include "viraccessapichecklxc.h"
|
||||
#include "virhostdev.h"
|
||||
#include "netdev_bandwidth_conf.h"
|
||||
@ -21,7 +21,7 @@ Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
|
||||
#define VIR_FROM_THIS VIR_FROM_LXC
|
||||
|
||||
@@ -5410,6 +5411,142 @@ lxcDomainHasManagedSaveImage(virDomainPt
|
||||
@@ -5408,6 +5409,142 @@ lxcDomainHasManagedSaveImage(virDomainPt
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -164,7 +164,7 @@ Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
|
||||
/* Function Tables */
|
||||
static virHypervisorDriver lxcHypervisorDriver = {
|
||||
@@ -5505,6 +5642,7 @@ static virHypervisorDriver lxcHypervisor
|
||||
@@ -5503,6 +5640,7 @@ static virHypervisorDriver lxcHypervisor
|
||||
.nodeGetFreePages = lxcNodeGetFreePages, /* 1.2.6 */
|
||||
.nodeAllocPages = lxcNodeAllocPages, /* 1.2.9 */
|
||||
.domainHasManagedSaveImage = lxcDomainHasManagedSaveImage, /* 1.2.13 */
|
||||
|
@ -1,345 +0,0 @@
|
||||
commit 0a1b5653825bf67d3893a9177e188a131daba157
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Fri Nov 16 13:08:23 2018 -0700
|
||||
|
||||
xenconfig: add support for openvswitch configuration
|
||||
|
||||
Add support for converting openvswitch interface configuration
|
||||
to/from libvirt domXML and xl.cfg(5). The xl config syntax for
|
||||
virtual interfaces is described in detail in the
|
||||
xl-network-configuration(5) man page. The Xen Networking wiki
|
||||
also contains information and examples for using openvswitch
|
||||
in xl.cfg config format
|
||||
|
||||
https://wiki.xenproject.org/wiki/Xen_Networking#Open_vSwitch
|
||||
|
||||
Tests are added to check conversions of openvswitch tagged and
|
||||
trunked VLAN configuration.
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
ACKed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
|
||||
Index: libvirt-4.10.0/src/xenconfig/xen_common.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/xenconfig/xen_common.c
|
||||
+++ libvirt-4.10.0/src/xenconfig/xen_common.c
|
||||
@@ -856,6 +856,80 @@ xenParseCharDev(virConfPtr conf, virDoma
|
||||
}
|
||||
|
||||
|
||||
+static int
|
||||
+xenParseVifBridge(virDomainNetDefPtr net, char *bridge)
|
||||
+{
|
||||
+ char *vlanstr;
|
||||
+ unsigned int tag;
|
||||
+
|
||||
+ if ((vlanstr = strchr(bridge, '.'))) {
|
||||
+ /* 'bridge' string contains a bridge name and single vlan tag */
|
||||
+ if (VIR_STRNDUP(net->data.bridge.brname, bridge, vlanstr - bridge) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ vlanstr++;
|
||||
+ if (virStrToLong_ui(vlanstr, NULL, 10, &tag) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ if (VIR_ALLOC_N(net->vlan.tag, 1) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ net->vlan.tag[0] = tag;
|
||||
+ net->vlan.nTags = 1;
|
||||
+
|
||||
+ if (VIR_ALLOC(net->virtPortProfile) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ net->virtPortProfile->virtPortType = VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH;
|
||||
+ return 0;
|
||||
+ } else if ((vlanstr = strchr(bridge, ':'))) {
|
||||
+ /* 'bridge' string contains a bridge name and one or more vlan trunks */
|
||||
+ size_t i;
|
||||
+ size_t nvlans = 0;
|
||||
+ char **vlanstr_list = virStringSplit(bridge, ":", 0);
|
||||
+
|
||||
+ if (!vlanstr_list)
|
||||
+ return -1;
|
||||
+
|
||||
+ if (VIR_STRDUP(net->data.bridge.brname, vlanstr_list[0]) < 0) {
|
||||
+ virStringListFree(vlanstr_list);
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ for (i = 1; vlanstr_list[i]; i++)
|
||||
+ nvlans++;
|
||||
+
|
||||
+ if (VIR_ALLOC_N(net->vlan.tag, nvlans) < 0) {
|
||||
+ virStringListFree(vlanstr_list);
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ for (i = 1; i <= nvlans; i++) {
|
||||
+ if (virStrToLong_ui(vlanstr_list[i], NULL, 10, &tag) < 0) {
|
||||
+ virStringListFree(vlanstr_list);
|
||||
+ return -1;
|
||||
+ }
|
||||
+ net->vlan.tag[i - 1] = tag;
|
||||
+ }
|
||||
+ net->vlan.nTags = nvlans;
|
||||
+ net->vlan.trunk = true;
|
||||
+ virStringListFree(vlanstr_list);
|
||||
+
|
||||
+ if (VIR_ALLOC(net->virtPortProfile) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ net->virtPortProfile->virtPortType = VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH;
|
||||
+ return 0;
|
||||
+ } else {
|
||||
+ /* 'bridge' string only contains the bridge name */
|
||||
+ if (VIR_STRDUP(net->data.bridge.brname, bridge) < 0)
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
static virDomainNetDefPtr
|
||||
xenParseVif(char *entry, const char *vif_typename)
|
||||
{
|
||||
@@ -974,8 +1048,8 @@ xenParseVif(char *entry, const char *vif
|
||||
net->type = VIR_DOMAIN_NET_TYPE_ETHERNET;
|
||||
}
|
||||
|
||||
- if (net->type == VIR_DOMAIN_NET_TYPE_BRIDGE) {
|
||||
- if (bridge[0] && VIR_STRDUP(net->data.bridge.brname, bridge) < 0)
|
||||
+ if (net->type == VIR_DOMAIN_NET_TYPE_BRIDGE && bridge[0]) {
|
||||
+ if (xenParseVifBridge(net, bridge) < 0)
|
||||
goto cleanup;
|
||||
}
|
||||
if (ip[0]) {
|
||||
@@ -1264,14 +1338,41 @@ xenFormatNet(virConnectPtr conn,
|
||||
|
||||
switch (net->type) {
|
||||
case VIR_DOMAIN_NET_TYPE_BRIDGE:
|
||||
+ {
|
||||
+ virNetDevVPortProfilePtr port_profile = virDomainNetGetActualVirtPortProfile(net);
|
||||
+ virNetDevVlanPtr virt_vlan = virDomainNetGetActualVlan(net);
|
||||
+ const char *script = net->script;
|
||||
+ size_t i;
|
||||
+
|
||||
virBufferAsprintf(&buf, ",bridge=%s", net->data.bridge.brname);
|
||||
+ if (port_profile &&
|
||||
+ port_profile->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH) {
|
||||
+ if (!script)
|
||||
+ script = "vif-openvswitch";
|
||||
+ /*
|
||||
+ * libxl_device_nic->bridge supports an extended format for
|
||||
+ * specifying VLAN tags and trunks
|
||||
+ *
|
||||
+ * BRIDGE_NAME[.VLAN][:TRUNK:TRUNK]
|
||||
+ */
|
||||
+ if (virt_vlan && virt_vlan->nTags > 0) {
|
||||
+ if (virt_vlan->trunk) {
|
||||
+ for (i = 0; i < virt_vlan->nTags; i++)
|
||||
+ virBufferAsprintf(&buf, ":%d", virt_vlan->tag[i]);
|
||||
+ } else {
|
||||
+ virBufferAsprintf(&buf, ".%d", virt_vlan->tag[0]);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
if (net->guestIP.nips > 0) {
|
||||
char *ipStr = xenMakeIPList(&net->guestIP);
|
||||
virBufferAsprintf(&buf, ",ip=%s", ipStr);
|
||||
VIR_FREE(ipStr);
|
||||
}
|
||||
- virBufferAsprintf(&buf, ",script=%s", DEFAULT_VIF_SCRIPT);
|
||||
- break;
|
||||
+ virBufferAsprintf(&buf, ",script=%s", script ? script : DEFAULT_VIF_SCRIPT);
|
||||
+ }
|
||||
+ break;
|
||||
|
||||
case VIR_DOMAIN_NET_TYPE_ETHERNET:
|
||||
if (net->script)
|
||||
Index: libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.cfg
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.cfg
|
||||
@@ -0,0 +1,25 @@
|
||||
+name = "XenGuest2"
|
||||
+uuid = "c7a5fdb2-cdaf-9455-926a-d65c16db1809"
|
||||
+maxmem = 8192
|
||||
+memory = 8192
|
||||
+vcpus = 8
|
||||
+pae = 1
|
||||
+acpi = 1
|
||||
+apic = 1
|
||||
+viridian = 0
|
||||
+rtc_timeoffset = 0
|
||||
+localtime = 0
|
||||
+on_poweroff = "destroy"
|
||||
+on_reboot = "restart"
|
||||
+on_crash = "restart"
|
||||
+device_model = "/usr/lib/xen/bin/qemu-system-i386"
|
||||
+sdl = 0
|
||||
+vnc = 1
|
||||
+vncunused = 1
|
||||
+vnclisten = "127.0.0.1"
|
||||
+vif = [ "mac=00:16:3e:66:92:9c,bridge=ovsbr0.42,script=vif-openvswitch,model=e1000" ]
|
||||
+parallel = "none"
|
||||
+serial = "none"
|
||||
+builder = "hvm"
|
||||
+boot = "c"
|
||||
+disk = [ "format=raw,vdev=hda,access=rw,backendtype=phy,target=/dev/HostVG/XenGuest2" ]
|
||||
Index: libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml
|
||||
@@ -0,0 +1,50 @@
|
||||
+<domain type='xen'>
|
||||
+ <name>XenGuest2</name>
|
||||
+ <uuid>c7a5fdb2-cdaf-9455-926a-d65c16db1809</uuid>
|
||||
+ <memory unit='KiB'>8388608</memory>
|
||||
+ <currentMemory unit='KiB'>8388608</currentMemory>
|
||||
+ <vcpu placement='static'>8</vcpu>
|
||||
+ <os>
|
||||
+ <type arch='x86_64' machine='xenfv'>hvm</type>
|
||||
+ <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader>
|
||||
+ <boot dev='hd'/>
|
||||
+ </os>
|
||||
+ <features>
|
||||
+ <acpi/>
|
||||
+ <apic/>
|
||||
+ <pae/>
|
||||
+ </features>
|
||||
+ <clock offset='variable' adjustment='0' basis='utc'/>
|
||||
+ <on_poweroff>destroy</on_poweroff>
|
||||
+ <on_reboot>restart</on_reboot>
|
||||
+ <on_crash>restart</on_crash>
|
||||
+ <devices>
|
||||
+ <emulator>/usr/lib/xen/bin/qemu-system-i386</emulator>
|
||||
+ <disk type='block' device='disk'>
|
||||
+ <driver name='phy' type='raw'/>
|
||||
+ <source dev='/dev/HostVG/XenGuest2'/>
|
||||
+ <target dev='hda' bus='ide'/>
|
||||
+ <address type='drive' controller='0' bus='0' target='0' unit='0'/>
|
||||
+ </disk>
|
||||
+ <controller type='ide' index='0'/>
|
||||
+ <interface type='bridge'>
|
||||
+ <mac address='00:16:3e:66:92:9c'/>
|
||||
+ <source bridge='ovsbr0'/>
|
||||
+ <vlan>
|
||||
+ <tag id='42'/>
|
||||
+ </vlan>
|
||||
+ <virtualport type='openvswitch'/>
|
||||
+ <script path='vif-openvswitch'/>
|
||||
+ <model type='e1000'/>
|
||||
+ </interface>
|
||||
+ <input type='mouse' bus='ps2'/>
|
||||
+ <input type='keyboard' bus='ps2'/>
|
||||
+ <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'>
|
||||
+ <listen type='address' address='127.0.0.1'/>
|
||||
+ </graphics>
|
||||
+ <video>
|
||||
+ <model type='cirrus' vram='8192' heads='1' primary='yes'/>
|
||||
+ </video>
|
||||
+ <memballoon model='xen'/>
|
||||
+ </devices>
|
||||
+</domain>
|
||||
Index: libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.cfg
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.cfg
|
||||
@@ -0,0 +1,25 @@
|
||||
+name = "XenGuest2"
|
||||
+uuid = "c7a5fdb2-cdaf-9455-926a-d65c16db1809"
|
||||
+maxmem = 8192
|
||||
+memory = 8192
|
||||
+vcpus = 8
|
||||
+pae = 1
|
||||
+acpi = 1
|
||||
+apic = 1
|
||||
+viridian = 0
|
||||
+rtc_timeoffset = 0
|
||||
+localtime = 0
|
||||
+on_poweroff = "destroy"
|
||||
+on_reboot = "restart"
|
||||
+on_crash = "restart"
|
||||
+device_model = "/usr/lib/xen/bin/qemu-system-i386"
|
||||
+sdl = 0
|
||||
+vnc = 1
|
||||
+vncunused = 1
|
||||
+vnclisten = "127.0.0.1"
|
||||
+vif = [ "mac=00:16:3e:66:92:9c,bridge=ovsbr0:42:43,script=vif-openvswitch,model=e1000" ]
|
||||
+parallel = "none"
|
||||
+serial = "none"
|
||||
+builder = "hvm"
|
||||
+boot = "c"
|
||||
+disk = [ "format=raw,vdev=hda,access=rw,backendtype=phy,target=/dev/HostVG/XenGuest2" ]
|
||||
Index: libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml
|
||||
@@ -0,0 +1,51 @@
|
||||
+<domain type='xen'>
|
||||
+ <name>XenGuest2</name>
|
||||
+ <uuid>c7a5fdb2-cdaf-9455-926a-d65c16db1809</uuid>
|
||||
+ <memory unit='KiB'>8388608</memory>
|
||||
+ <currentMemory unit='KiB'>8388608</currentMemory>
|
||||
+ <vcpu placement='static'>8</vcpu>
|
||||
+ <os>
|
||||
+ <type arch='x86_64' machine='xenfv'>hvm</type>
|
||||
+ <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader>
|
||||
+ <boot dev='hd'/>
|
||||
+ </os>
|
||||
+ <features>
|
||||
+ <acpi/>
|
||||
+ <apic/>
|
||||
+ <pae/>
|
||||
+ </features>
|
||||
+ <clock offset='variable' adjustment='0' basis='utc'/>
|
||||
+ <on_poweroff>destroy</on_poweroff>
|
||||
+ <on_reboot>restart</on_reboot>
|
||||
+ <on_crash>restart</on_crash>
|
||||
+ <devices>
|
||||
+ <emulator>/usr/lib/xen/bin/qemu-system-i386</emulator>
|
||||
+ <disk type='block' device='disk'>
|
||||
+ <driver name='phy' type='raw'/>
|
||||
+ <source dev='/dev/HostVG/XenGuest2'/>
|
||||
+ <target dev='hda' bus='ide'/>
|
||||
+ <address type='drive' controller='0' bus='0' target='0' unit='0'/>
|
||||
+ </disk>
|
||||
+ <controller type='ide' index='0'/>
|
||||
+ <interface type='bridge'>
|
||||
+ <mac address='00:16:3e:66:92:9c'/>
|
||||
+ <source bridge='ovsbr0'/>
|
||||
+ <vlan trunk='yes'>
|
||||
+ <tag id='42'/>
|
||||
+ <tag id='43'/>
|
||||
+ </vlan>
|
||||
+ <virtualport type='openvswitch'/>
|
||||
+ <script path='vif-openvswitch'/>
|
||||
+ <model type='e1000'/>
|
||||
+ </interface>
|
||||
+ <input type='mouse' bus='ps2'/>
|
||||
+ <input type='keyboard' bus='ps2'/>
|
||||
+ <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'>
|
||||
+ <listen type='address' address='127.0.0.1'/>
|
||||
+ </graphics>
|
||||
+ <video>
|
||||
+ <model type='cirrus' vram='8192' heads='1' primary='yes'/>
|
||||
+ </video>
|
||||
+ <memballoon model='xen'/>
|
||||
+ </devices>
|
||||
+</domain>
|
||||
Index: libvirt-4.10.0/tests/xlconfigtest.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tests/xlconfigtest.c
|
||||
+++ libvirt-4.10.0/tests/xlconfigtest.c
|
||||
@@ -250,6 +250,8 @@ mymain(void)
|
||||
DO_TEST_FORMAT(name, true); \
|
||||
} while (0)
|
||||
|
||||
+ DO_TEST("fullvirt-ovswitch-tagged");
|
||||
+ DO_TEST("fullvirt-ovswitch-trunked");
|
||||
DO_TEST_REPLACE_VARS("fullvirt-ovmf");
|
||||
DO_TEST("paravirt-maxvcpus");
|
||||
DO_TEST("new-disk");
|
@ -1,7 +1,7 @@
|
||||
Index: libvirt-4.10.0/examples/apparmor/libvirt-lxc
|
||||
Index: libvirt-5.0.0/src/security/apparmor/libvirt-lxc
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/examples/apparmor/libvirt-lxc
|
||||
+++ libvirt-4.10.0/examples/apparmor/libvirt-lxc
|
||||
--- libvirt-5.0.0.orig/src/security/apparmor/libvirt-lxc
|
||||
+++ libvirt-5.0.0/src/security/apparmor/libvirt-lxc
|
||||
@@ -2,39 +2,15 @@
|
||||
|
||||
#include <abstractions/base>
|
||||
|
@ -11,11 +11,11 @@ Signed-off-by: Chunyan Liu <cyliu@suse.com>
|
||||
src/qemu/qemu_driver.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
Index: libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
Index: libvirt-5.0.0/src/qemu/qemu_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-4.10.0/src/qemu/qemu_driver.c
|
||||
@@ -17737,6 +17737,14 @@ qemuDomainBlockCopyCommon(virDomainObjPt
|
||||
--- libvirt-5.0.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-5.0.0/src/qemu/qemu_driver.c
|
||||
@@ -17798,6 +17798,14 @@ qemuDomainBlockCopyCommon(virDomainObjPt
|
||||
goto endjob;
|
||||
}
|
||||
|
||||
|
@ -1,121 +0,0 @@
|
||||
commit de09ae2f4676dd521f558d383d33f4b4c026984c
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Tue Jun 28 14:20:02 2016 -0600
|
||||
|
||||
libxl: support openvswitch interfaces
|
||||
|
||||
It is currently possible to use <interface>s of type openvswitch
|
||||
with the libxl driver in a non-standard way, e.g.
|
||||
|
||||
<interface type='bridge'>
|
||||
<source bridge='ovsbr0'/>
|
||||
<mac address='00:16:3e:7a:35:ce'/>
|
||||
<script path='vif-openvswitch'/>
|
||||
</interface>
|
||||
|
||||
This patch adds support for openvswitch <interface>s specified
|
||||
in typical libvirt config
|
||||
|
||||
<interface type='bridge'>
|
||||
<source bridge='ovsbr0'/>
|
||||
<mac address='00:16:3e:7a:35:ce'/>
|
||||
<virtualport type='openvswitch'/>
|
||||
</interface>
|
||||
|
||||
VLAN tags and trunking are also supported using the extended
|
||||
syntax for specifying an openvswitch bridge in libxl
|
||||
|
||||
BRIDGE_NAME[.VLAN][:TRUNK:TRUNK]
|
||||
|
||||
See Xen's networking wiki for more details on openvswitch support
|
||||
|
||||
https://wiki.xenproject.org/wiki/Xen_Networking#Open_vSwitch
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
ACKed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
@@ -51,6 +51,7 @@
|
||||
#include "cpu/cpu.h"
|
||||
#include "xen_common.h"
|
||||
#include "xen_xl.h"
|
||||
+#include "virnetdevvportprofile.h"
|
||||
|
||||
|
||||
#define VIR_FROM_THIS VIR_FROM_LIBXL
|
||||
@@ -1229,6 +1230,11 @@ libxlMakeNic(virDomainDefPtr def,
|
||||
virNetworkPtr network = NULL;
|
||||
virConnectPtr conn = NULL;
|
||||
virNetDevBandwidthPtr actual_bw;
|
||||
+ virNetDevVPortProfilePtr port_profile;
|
||||
+ virNetDevVlanPtr virt_vlan;
|
||||
+ virBuffer buf = VIR_BUFFER_INITIALIZER;
|
||||
+ size_t i;
|
||||
+ const char *script = NULL;
|
||||
int ret = -1;
|
||||
|
||||
/* TODO: Where is mtu stored?
|
||||
@@ -1287,14 +1293,50 @@ libxlMakeNic(virDomainDefPtr def,
|
||||
if (VIR_STRDUP(x_nic->ifname, l_nic->ifname) < 0)
|
||||
goto cleanup;
|
||||
|
||||
+ port_profile = virDomainNetGetActualVirtPortProfile(l_nic);
|
||||
+ virt_vlan = virDomainNetGetActualVlan(l_nic);
|
||||
+ script = l_nic->script;
|
||||
switch (actual_type) {
|
||||
case VIR_DOMAIN_NET_TYPE_BRIDGE:
|
||||
+ virBufferAddStr(&buf, virDomainNetGetActualBridgeName(l_nic));
|
||||
+ /*
|
||||
+ * A bit of special handling if vif will be connected to an
|
||||
+ * openvswitch bridge
|
||||
+ */
|
||||
+ if (port_profile &&
|
||||
+ port_profile->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH) {
|
||||
+ /*
|
||||
+ * If a custom script is not specified for openvswitch, use
|
||||
+ * Xen's vif-openvswitch script
|
||||
+ */
|
||||
+ if (!script)
|
||||
+ script = "vif-openvswitch";
|
||||
+ /*
|
||||
+ * libxl_device_nic->bridge supports an extended format for
|
||||
+ * specifying VLAN tags and trunks when using openvswitch
|
||||
+ *
|
||||
+ * BRIDGE_NAME[.VLAN][:TRUNK:TRUNK]
|
||||
+ *
|
||||
+ * See Xen's networking wiki for more details
|
||||
+ * https://wiki.xenproject.org/wiki/Xen_Networking#Open_vSwitch
|
||||
+ */
|
||||
+ if (virt_vlan && virt_vlan->nTags > 0) {
|
||||
+ if (virt_vlan->trunk) {
|
||||
+ for (i = 0; i < virt_vlan->nTags; i++)
|
||||
+ virBufferAsprintf(&buf, ":%d", virt_vlan->tag[i]);
|
||||
+ } else {
|
||||
+ virBufferAsprintf(&buf, ".%d", virt_vlan->tag[0]);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ if (virBufferCheckError(&buf) < 0)
|
||||
+ goto cleanup;
|
||||
if (VIR_STRDUP(x_nic->bridge,
|
||||
- virDomainNetGetActualBridgeName(l_nic)) < 0)
|
||||
+ virBufferCurrentContent(&buf)) < 0)
|
||||
goto cleanup;
|
||||
ATTRIBUTE_FALLTHROUGH;
|
||||
case VIR_DOMAIN_NET_TYPE_ETHERNET:
|
||||
- if (VIR_STRDUP(x_nic->script, l_nic->script) < 0)
|
||||
+ if (VIR_STRDUP(x_nic->script, script) < 0)
|
||||
goto cleanup;
|
||||
if (l_nic->guestIP.nips > 0) {
|
||||
x_nic->ip = xenMakeIPList(&l_nic->guestIP);
|
||||
@@ -1391,6 +1433,7 @@ libxlMakeNic(virDomainDefPtr def,
|
||||
ret = 0;
|
||||
|
||||
cleanup:
|
||||
+ virBufferFreeAndReset(&buf);
|
||||
virObjectUnref(network);
|
||||
virObjectUnref(conn);
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7f9d830173f146ed3b8a8fdf6b6e03a99ce72b21a26c1468b2b688e5fdff276c
|
||||
size 14841188
|
@ -1,10 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEcBAABAgAGBQJcBREvAAoJEBVYiyZZa+pdNYEH/3lT2nLYV10dOSTevgXzAM3j
|
||||
yjZFUOwD/Vm4HZynFDp5TFTIm7xCy954Jr9ga9h1AufdDhHv+OrXfuDRt1GLVWV7
|
||||
wbrRyf8UJWXl9F0BWKG1bl6nEGqnCgRewpRYjIW9NvGhpijsuDt3TyBf4kYikKZb
|
||||
7ZozD+JGl7DFasIKHXSp6AZY7QdT8LDepIeKql7KF6MdyglSFvmYZwbvJNCGGDV3
|
||||
PmCBd8Ma2SQNn+Qb4mHetOw6sLapjESIGF1oqNRWjfX2Cb00GFeQcXVJJTXwNgz8
|
||||
DffzJwLEMlDSLtEdzhteSmiXnQOsWTn+A02rkgGG172KBOsfOXfhT/dMTUoZJpo=
|
||||
=CSLV
|
||||
-----END PGP SIGNATURE-----
|
3
libvirt-5.0.0.tar.xz
Normal file
3
libvirt-5.0.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:afa81dbbc90b5209575930a820a222ff371e5ece5c1d8ec8f46b53c52b73b2e7
|
||||
size 14832576
|
10
libvirt-5.0.0.tar.xz.asc
Normal file
10
libvirt-5.0.0.tar.xz.asc
Normal file
@ -0,0 +1,10 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEcBAABAgAGBQJcPjX/AAoJEBVYiyZZa+pdu0MH/3FuXogeJV1NbW+DPKxVnmxS
|
||||
2GDQou2auTZ8SRjCUfR+jLMyYRwrdf2m8+9n1HEeiT8iILwzj/9MjeJFD7+8Czye
|
||||
LxDJaDhaDc/pXeVVx94DVb6KrxS660PYHNbZH3fUMWzOD1oPVvpVwmNCiOO8BXHH
|
||||
laY7fDvH3C2Um3s4vDpMuRKXtvCW+dJuwLPn2OJgfUCmD9fLfvN889PS5NP3Rr5i
|
||||
b/YNYzyfn7Zg0vIe5t/a6uoPp7qeICWG40X+TMiIOz9EjFvQfwQqBNtxoHjZH2Kb
|
||||
fY/KCX6lAWftFxxw+hqnSArwcDs5t6Uuqk96gGs0K6xXqnJVFHGKR9N1ps1KIaA=
|
||||
=MwoM
|
||||
-----END PGP SIGNATURE-----
|
@ -2,10 +2,10 @@ Add POWER8 v2.0 and v2.1 to cpu map XML
|
||||
|
||||
From: <ro@suse.de>
|
||||
|
||||
Index: libvirt-4.10.0/src/cpu_map/ppc64_POWER8.xml
|
||||
Index: libvirt-5.0.0/src/cpu_map/ppc64_POWER8.xml
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/cpu_map/ppc64_POWER8.xml
|
||||
+++ libvirt-4.10.0/src/cpu_map/ppc64_POWER8.xml
|
||||
--- libvirt-5.0.0.orig/src/cpu_map/ppc64_POWER8.xml
|
||||
+++ libvirt-5.0.0/src/cpu_map/ppc64_POWER8.xml
|
||||
@@ -4,5 +4,7 @@
|
||||
<pvr value='0x004b0000' mask='0xffff0000'/>
|
||||
<pvr value='0x004c0000' mask='0xffff0000'/>
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: libvirt-4.10.0/configure.ac
|
||||
Index: libvirt-5.0.0/configure.ac
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/configure.ac
|
||||
+++ libvirt-4.10.0/configure.ac
|
||||
@@ -256,6 +256,7 @@ LIBVIRT_ARG_LIBSSH
|
||||
--- libvirt-5.0.0.orig/configure.ac
|
||||
+++ libvirt-5.0.0/configure.ac
|
||||
@@ -255,6 +255,7 @@ LIBVIRT_ARG_LIBSSH
|
||||
LIBVIRT_ARG_LIBXML
|
||||
LIBVIRT_ARG_MACVTAP
|
||||
LIBVIRT_ARG_NETCF
|
||||
@ -10,7 +10,7 @@ Index: libvirt-4.10.0/configure.ac
|
||||
LIBVIRT_ARG_NLS
|
||||
LIBVIRT_ARG_NSS
|
||||
LIBVIRT_ARG_NUMACTL
|
||||
@@ -299,6 +300,7 @@ LIBVIRT_CHECK_LIBSSH
|
||||
@@ -298,6 +299,7 @@ LIBVIRT_CHECK_LIBSSH
|
||||
LIBVIRT_CHECK_LIBXML
|
||||
LIBVIRT_CHECK_MACVTAP
|
||||
LIBVIRT_CHECK_NETCF
|
||||
@ -18,7 +18,7 @@ Index: libvirt-4.10.0/configure.ac
|
||||
LIBVIRT_CHECK_NLS
|
||||
LIBVIRT_CHECK_NUMACTL
|
||||
LIBVIRT_CHECK_NWFILTER
|
||||
@@ -1016,6 +1018,7 @@ LIBVIRT_RESULT_LIBXL
|
||||
@@ -1012,6 +1014,7 @@ LIBVIRT_RESULT_LIBXL
|
||||
LIBVIRT_RESULT_LIBXML
|
||||
LIBVIRT_RESULT_MACVTAP
|
||||
LIBVIRT_RESULT_NETCF
|
||||
@ -26,11 +26,11 @@ Index: libvirt-4.10.0/configure.ac
|
||||
LIBVIRT_RESULT_NLS
|
||||
LIBVIRT_RESULT_NSS
|
||||
LIBVIRT_RESULT_NUMACTL
|
||||
Index: libvirt-4.10.0/tools/virsh.c
|
||||
Index: libvirt-5.0.0/tools/virsh.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/virsh.c
|
||||
+++ libvirt-4.10.0/tools/virsh.c
|
||||
@@ -570,6 +570,8 @@ virshShowVersion(vshControl *ctl ATTRIBU
|
||||
--- libvirt-5.0.0.orig/tools/virsh.c
|
||||
+++ libvirt-5.0.0/tools/virsh.c
|
||||
@@ -563,6 +563,8 @@ virshShowVersion(vshControl *ctl ATTRIBU
|
||||
vshPrint(ctl, " Interface");
|
||||
# if defined(WITH_NETCF)
|
||||
vshPrint(ctl, " netcf");
|
||||
@ -39,11 +39,11 @@ Index: libvirt-4.10.0/tools/virsh.c
|
||||
# elif defined(WITH_UDEV)
|
||||
vshPrint(ctl, " udev");
|
||||
# endif
|
||||
Index: libvirt-4.10.0/src/interface/interface_backend_netcf.c
|
||||
Index: libvirt-5.0.0/src/interface/interface_backend_netcf.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/interface/interface_backend_netcf.c
|
||||
+++ libvirt-4.10.0/src/interface/interface_backend_netcf.c
|
||||
@@ -23,7 +23,12 @@
|
||||
--- libvirt-5.0.0.orig/src/interface/interface_backend_netcf.c
|
||||
+++ libvirt-5.0.0/src/interface/interface_backend_netcf.c
|
||||
@@ -21,7 +21,12 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@ -57,7 +57,7 @@ Index: libvirt-4.10.0/src/interface/interface_backend_netcf.c
|
||||
|
||||
#include "virerror.h"
|
||||
#include "datatypes.h"
|
||||
@@ -65,6 +70,37 @@ VIR_ONCE_GLOBAL_INIT(virNetcfDriverState
|
||||
@@ -63,6 +68,37 @@ VIR_ONCE_GLOBAL_INIT(virNetcfDriverState
|
||||
|
||||
static virNetcfDriverStatePtr driver;
|
||||
|
||||
@ -95,7 +95,7 @@ Index: libvirt-4.10.0/src/interface/interface_backend_netcf.c
|
||||
|
||||
static void
|
||||
virNetcfDriverStateDispose(void *obj)
|
||||
@@ -89,6 +125,10 @@ netcfStateInitialize(bool privileged,
|
||||
@@ -87,6 +123,10 @@ netcfStateInitialize(bool privileged,
|
||||
|
||||
driver->privileged = privileged;
|
||||
|
||||
@ -106,7 +106,7 @@ Index: libvirt-4.10.0/src/interface/interface_backend_netcf.c
|
||||
/* open netcf */
|
||||
if (ncf_init(&driver->netcf, NULL) != 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
@@ -1225,6 +1265,19 @@ static virStateDriver interfaceStateDriv
|
||||
@@ -1223,6 +1263,19 @@ static virStateDriver interfaceStateDriv
|
||||
|
||||
int netcfIfaceRegister(void)
|
||||
{
|
||||
@ -126,10 +126,10 @@ Index: libvirt-4.10.0/src/interface/interface_backend_netcf.c
|
||||
if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0)
|
||||
return -1;
|
||||
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
|
||||
Index: libvirt-4.10.0/src/interface/interface_driver.c
|
||||
Index: libvirt-5.0.0/src/interface/interface_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/interface/interface_driver.c
|
||||
+++ libvirt-4.10.0/src/interface/interface_driver.c
|
||||
--- libvirt-5.0.0.orig/src/interface/interface_driver.c
|
||||
+++ libvirt-5.0.0/src/interface/interface_driver.c
|
||||
@@ -30,8 +30,15 @@ interfaceRegister(void)
|
||||
if (netcfIfaceRegister() == 0)
|
||||
return 0;
|
||||
@ -147,10 +147,10 @@ Index: libvirt-4.10.0/src/interface/interface_driver.c
|
||||
if (udevIfaceRegister() == 0)
|
||||
return 0;
|
||||
#endif /* WITH_UDEV */
|
||||
Index: libvirt-4.10.0/m4/virt-netcontrol.m4
|
||||
Index: libvirt-5.0.0/m4/virt-netcontrol.m4
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/m4/virt-netcontrol.m4
|
||||
+++ libvirt-5.0.0/m4/virt-netcontrol.m4
|
||||
@@ -0,0 +1,39 @@
|
||||
+dnl The libnetcontrol library
|
||||
+dnl
|
||||
@ -191,10 +191,10 @@ Index: libvirt-4.10.0/m4/virt-netcontrol.m4
|
||||
+AC_DEFUN([LIBVIRT_RESULT_NETCONTROL],[
|
||||
+ LIBVIRT_RESULT_LIB([NETCONTROL])
|
||||
+])
|
||||
Index: libvirt-4.10.0/src/interface/Makefile.inc.am
|
||||
Index: libvirt-5.0.0/src/interface/Makefile.inc.am
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/interface/Makefile.inc.am
|
||||
+++ libvirt-4.10.0/src/interface/Makefile.inc.am
|
||||
--- libvirt-5.0.0.orig/src/interface/Makefile.inc.am
|
||||
+++ libvirt-5.0.0/src/interface/Makefile.inc.am
|
||||
@@ -4,6 +4,7 @@ INTERFACE_DRIVER_SOURCES = \
|
||||
$(NULL)
|
||||
|
||||
|
@ -1,3 +1,15 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 15 22:25:14 UTC 2019 - James Fehlig <jfehlig@suse.com>
|
||||
|
||||
- Update to libvirt 5.0.0
|
||||
- Many incremental improvements and bug fixes, see
|
||||
http://libvirt.org/news.html
|
||||
- Remove UML hypervisor driver
|
||||
- Dropped patches:
|
||||
de09ae2f-libxl-support-openvswitch.patch,
|
||||
0a1b5653-xenconfig-support-openvswitch.patch
|
||||
- FATE#320928, FATE#325817, FATE#326380, FATE#326698
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 2 16:02:39 UTC 2019 - James Fehlig <jfehlig@suse.com>
|
||||
|
||||
|
72
libvirt.spec
72
libvirt.spec
@ -24,7 +24,6 @@
|
||||
# The hypervisor drivers that run in libvirtd
|
||||
%define with_qemu 0%{!?_without_qemu:1}
|
||||
%define with_lxc 0%{!?_without_lxc:1}
|
||||
%define with_uml 0%{!?_without_uml:1}
|
||||
%define with_libxl 0%{!?_without_libxl:1}
|
||||
%define with_vbox 0%{!?_without_vbox:1}
|
||||
|
||||
@ -91,7 +90,6 @@
|
||||
%if ! 0%{?is_opensuse}
|
||||
%define with_openvz 0
|
||||
%define with_vbox 0
|
||||
%define with_uml 0
|
||||
%define with_vmware 0
|
||||
%define with_hyperv 0
|
||||
%endif
|
||||
@ -154,8 +152,8 @@
|
||||
%endif
|
||||
|
||||
# numad is used to manage the CPU and memory placement dynamically for
|
||||
# qemu, lxc, and uml drivers
|
||||
%if %{with_qemu} || %{with_lxc} || %{with_uml}
|
||||
# qemu and lxc drivers
|
||||
%if %{with_qemu} || %{with_lxc}
|
||||
# Enable numad for most architectures. Handle aarch64 separately
|
||||
%ifnarch s390 s390x %arm %ix86 aarch64
|
||||
%define with_numad 0%{!?_without_numad:1}
|
||||
@ -185,7 +183,7 @@
|
||||
|
||||
Name: libvirt
|
||||
Url: http://libvirt.org/
|
||||
Version: 4.10.0
|
||||
Version: 5.0.0
|
||||
Release: 0
|
||||
Summary: Library providing a virtualization API
|
||||
License: LGPL-2.1-or-later
|
||||
@ -203,9 +201,6 @@ Requires: %{name}-daemon-driver-lxc = %{version}-%{release}
|
||||
%if %{with_qemu}
|
||||
Requires: %{name}-daemon-driver-qemu = %{version}-%{release}
|
||||
%endif
|
||||
%if %{with_uml}
|
||||
Requires: %{name}-daemon-driver-uml = %{version}-%{release}
|
||||
%endif
|
||||
%if %{with_vbox}
|
||||
Requires: %{name}-daemon-driver-vbox = %{version}-%{release}
|
||||
%endif
|
||||
@ -338,8 +333,6 @@ Source6: libvirtd-relocation-server.xml
|
||||
Source99: baselibs.conf
|
||||
Source100: %{name}-rpmlintrc
|
||||
# Upstream patches
|
||||
Patch0: de09ae2f-libxl-support-openvswitch.patch
|
||||
Patch1: 0a1b5653-xenconfig-support-openvswitch.patch
|
||||
# Patches pending upstream review
|
||||
Patch100: libxl-dom-reset.patch
|
||||
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
|
||||
@ -692,17 +685,6 @@ The LXC driver plugin for the libvirtd daemon, providing
|
||||
an implementation of the hypervisor driver APIs using
|
||||
the Linux kernel
|
||||
|
||||
%package daemon-driver-uml
|
||||
Summary: User Mode Linux driver plugin for the libvirtd daemon
|
||||
Group: System/Management
|
||||
Requires: %{name}-daemon = %{version}-%{release}
|
||||
Requires: %{name}-libs = %{version}-%{release}
|
||||
|
||||
%description daemon-driver-uml
|
||||
The UML driver plugin for the libvirtd daemon, providing
|
||||
an implementation of the hypervisor driver APIs using
|
||||
User Mode Linux
|
||||
|
||||
%package daemon-driver-vbox
|
||||
Summary: VirtualBox driver plugin for the libvirtd daemon
|
||||
Group: System/Management
|
||||
@ -756,22 +738,6 @@ Requires: %{name}-daemon-driver-storage = %{version}-%{release}
|
||||
Server side daemon and driver required to manage the virtualization
|
||||
capabilities of LXC
|
||||
|
||||
%package daemon-uml
|
||||
Summary: Server side daemon & driver required to run UML guests
|
||||
Group: System/Management
|
||||
Requires: %{name}-daemon = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-interface = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-network = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-nodedev = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-nwfilter = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-secret = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-storage = %{version}-%{release}
|
||||
Requires: %{name}-daemon-driver-uml = %{version}-%{release}
|
||||
|
||||
%description daemon-uml
|
||||
Server side daemon and driver required to manage the virtualization
|
||||
capabilities of UML
|
||||
|
||||
%package daemon-xen
|
||||
Summary: Server side daemon & driver required to run XEN guests
|
||||
Group: System/Management
|
||||
@ -900,8 +866,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch100 -p1
|
||||
%patch101 -p1
|
||||
%patch150 -p1
|
||||
@ -954,11 +918,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
|
||||
%else
|
||||
%define arg_vbox --without-vbox
|
||||
%endif
|
||||
%if %{with_uml}
|
||||
%define arg_uml --with-uml
|
||||
%else
|
||||
%define arg_uml --without-uml
|
||||
%endif
|
||||
%if %{with_phyp}
|
||||
%define arg_phyp --with-phyp
|
||||
%else
|
||||
@ -1066,7 +1025,6 @@ export PYTHON=%{_bindir}/python3
|
||||
--with-avahi \
|
||||
--with-polkit \
|
||||
--with-libvirtd \
|
||||
%{?arg_uml} \
|
||||
%{?arg_phyp} \
|
||||
%{?arg_esx} \
|
||||
%{?arg_hyperv} \
|
||||
@ -1187,14 +1145,6 @@ rm -f %{buildroot}/%{_datadir}/augeas/lenses/libvirtd_qemu.aug
|
||||
rm -f %{buildroot}/%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
|
||||
rm -rf %{buildroot}/%{_sysconfdir}/logrotate.d/libvirtd.qemu
|
||||
%endif
|
||||
%if %{with_uml}
|
||||
cat > %{buildroot}/%{_docdir}/%{name}/libvirt-daemon-uml.README << 'EOF'
|
||||
Any empty package encapsulating requirements for a libvirtd capable
|
||||
of managing UML.
|
||||
EOF
|
||||
%else
|
||||
rm -rf %{buildroot}/%{_sysconfdir}/logrotate.d/libvirtd.uml
|
||||
%endif
|
||||
%if %{with_vbox}
|
||||
cat > %{buildroot}/%{_docdir}/%{name}/libvirt-daemon-vbox.README << 'EOF'
|
||||
Any empty package encapsulating requirements for a libvirtd capable
|
||||
@ -1568,16 +1518,6 @@ fi
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with_uml}
|
||||
|
||||
%files daemon-driver-uml
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.uml
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/uml/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/log/%{name}/uml/
|
||||
%dir %{_libdir}/%{name}/connection-driver
|
||||
%{_libdir}/%{name}/connection-driver/libvirt_driver_uml.so
|
||||
%endif
|
||||
|
||||
%if %{with_libxl}
|
||||
|
||||
%files daemon-driver-libxl
|
||||
@ -1610,12 +1550,6 @@ fi
|
||||
%doc %{_docdir}/%{name}/libvirt-daemon-lxc.README
|
||||
%endif
|
||||
|
||||
%if %{with_uml}
|
||||
|
||||
%files daemon-uml
|
||||
%doc %{_docdir}/%{name}/libvirt-daemon-uml.README
|
||||
%endif
|
||||
|
||||
%if %{with_libxl}
|
||||
|
||||
%files daemon-xen
|
||||
|
@ -8,11 +8,11 @@ Date: Mon Jun 23 15:51:20 2014 -0600
|
||||
option, but domainReset can be implemented in the libxl driver by
|
||||
forcibly destroying the domain and starting it again.
|
||||
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
@@ -1355,6 +1355,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_driver.c
|
||||
@@ -1350,6 +1350,61 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
||||
}
|
||||
|
||||
static int
|
||||
@ -74,7 +74,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
libxlDomainDestroyFlags(virDomainPtr dom,
|
||||
unsigned int flags)
|
||||
{
|
||||
@@ -6512,6 +6567,7 @@ static virHypervisorDriver libxlHypervis
|
||||
@@ -6510,6 +6565,7 @@ static virHypervisorDriver libxlHypervis
|
||||
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
|
||||
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
|
||||
.domainReboot = libxlDomainReboot, /* 0.9.0 */
|
||||
|
@ -3,11 +3,11 @@ https://bugzilla.novell.com/show_bug.cgi?id=879425
|
||||
src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++
|
||||
1 file changed, 25 insertions(+)
|
||||
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
@@ -888,6 +888,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_conf.c
|
||||
@@ -884,6 +884,30 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -38,7 +38,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
static char *
|
||||
libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
|
||||
const char *username,
|
||||
@@ -1136,6 +1160,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||
@@ -1132,6 +1156,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
|
||||
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
|
||||
return -1;
|
||||
|
@ -16,11 +16,11 @@ Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
tools/virsh.pod | 8 ++++++++
|
||||
6 files changed, 125 insertions(+), 6 deletions(-)
|
||||
|
||||
Index: libvirt-4.10.0/include/libvirt/libvirt-domain.h
|
||||
Index: libvirt-5.0.0/include/libvirt/libvirt-domain.h
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/include/libvirt/libvirt-domain.h
|
||||
+++ libvirt-4.10.0/include/libvirt/libvirt-domain.h
|
||||
@@ -1017,6 +1017,31 @@ typedef enum {
|
||||
--- libvirt-5.0.0.orig/include/libvirt/libvirt-domain.h
|
||||
+++ libvirt-5.0.0/include/libvirt/libvirt-domain.h
|
||||
@@ -1016,6 +1016,31 @@ typedef enum {
|
||||
*/
|
||||
# define VIR_MIGRATE_PARAM_AUTO_CONVERGE_INCREMENT "auto_converge.increment"
|
||||
|
||||
@ -52,11 +52,11 @@ Index: libvirt-4.10.0/include/libvirt/libvirt-domain.h
|
||||
/* Domain migration. */
|
||||
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
|
||||
unsigned long flags, const char *dname,
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
@@ -6119,6 +6119,9 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_driver.c
|
||||
@@ -6117,6 +6117,9 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
const char *dname = NULL;
|
||||
const char *uri = NULL;
|
||||
int ret = -1;
|
||||
@ -66,7 +66,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
|
||||
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
|
||||
virReportUnsupportedError();
|
||||
@@ -6135,6 +6138,18 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
@@ -6133,6 +6136,18 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
virTypedParamsGetString(params, nparams,
|
||||
VIR_MIGRATE_PARAM_DEST_NAME,
|
||||
&dname) < 0 ||
|
||||
@ -85,7 +85,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
virTypedParamsGetString(params, nparams,
|
||||
VIR_MIGRATE_PARAM_URI,
|
||||
&uri) < 0)
|
||||
@@ -6149,11 +6164,11 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
@@ -6147,11 +6162,11 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
|
||||
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
|
||||
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
|
||||
@ -99,11 +99,11 @@ Index: libvirt-4.10.0/src/libxl/libxl_driver.c
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_migration.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_migration.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
@@ -346,18 +346,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_migration.c
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_migration.c
|
||||
@@ -342,18 +342,39 @@ libxlMigrateDstReceive(virNetSocketPtr s
|
||||
static int
|
||||
libxlDoMigrateSrcSend(libxlDriverPrivatePtr driver,
|
||||
virDomainObjPtr vm,
|
||||
@ -145,7 +145,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
if (ret != 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
_("Failed to send migration data to destination host"));
|
||||
@@ -917,7 +938,7 @@ struct libxlTunnelControl {
|
||||
@@ -913,7 +934,7 @@ struct libxlTunnelControl {
|
||||
static int
|
||||
libxlMigrationSrcStartTunnel(libxlDriverPrivatePtr driver,
|
||||
virDomainObjPtr vm,
|
||||
@ -154,7 +154,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
virStreamPtr st,
|
||||
struct libxlTunnelControl **tnl)
|
||||
{
|
||||
@@ -950,7 +971,7 @@ libxlMigrationSrcStartTunnel(libxlDriver
|
||||
@@ -946,7 +967,7 @@ libxlMigrationSrcStartTunnel(libxlDriver
|
||||
|
||||
virObjectUnlock(vm);
|
||||
/* Send data to pipe */
|
||||
@ -163,7 +163,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
virObjectLock(vm);
|
||||
|
||||
out:
|
||||
@@ -986,7 +1007,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
@@ -982,7 +1003,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
const char *dconnuri ATTRIBUTE_UNUSED,
|
||||
const char *dname,
|
||||
const char *uri,
|
||||
@ -172,9 +172,9 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
{
|
||||
virDomainPtr ddomain = NULL;
|
||||
virTypedParameterPtr params = NULL;
|
||||
@@ -1031,11 +1052,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
@@ -1027,11 +1048,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
/* We don't require the destination to have P2P support
|
||||
* as it looks to be normal migration from the receiver perpective.
|
||||
* as it looks to be normal migration from the receiver perspective.
|
||||
*/
|
||||
- destflags = flags & ~(VIR_MIGRATE_PEER2PEER);
|
||||
+ destflags = props->virFlags & ~(VIR_MIGRATE_PEER2PEER);
|
||||
@ -186,7 +186,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
if (!(st = virStreamNew(dconn, 0)))
|
||||
goto confirm;
|
||||
ret = dconn->driver->domainMigratePrepareTunnel3Params
|
||||
@@ -1049,7 +1070,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
@@ -1045,7 +1066,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
if (ret == -1)
|
||||
goto confirm;
|
||||
|
||||
@ -195,7 +195,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
if (uri_out) {
|
||||
if (virTypedParamsReplaceString(¶ms, &nparams,
|
||||
VIR_MIGRATE_PARAM_URI, uri_out) < 0) {
|
||||
@@ -1064,11 +1085,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
@@ -1060,11 +1081,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
}
|
||||
|
||||
VIR_DEBUG("Perform3 uri=%s", NULLSTR(uri_out));
|
||||
@ -210,7 +210,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
if (ret < 0) {
|
||||
notify_source = false;
|
||||
orig_err = virSaveLastError();
|
||||
@@ -1103,7 +1124,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
@@ -1099,7 +1120,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
confirm:
|
||||
if (notify_source) {
|
||||
VIR_DEBUG("Confirm3 cancelled=%d vm=%p", cancelled, vm);
|
||||
@ -219,7 +219,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
|
||||
if (ret < 0)
|
||||
VIR_WARN("Guest %s probably left in 'paused' state on source",
|
||||
@@ -1111,7 +1132,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
@@ -1107,7 +1128,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivateP
|
||||
}
|
||||
|
||||
cleanup:
|
||||
@ -228,7 +228,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
libxlMigrationSrcStopTunnel(tc);
|
||||
virObjectUnref(st);
|
||||
}
|
||||
@@ -1158,7 +1179,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
@@ -1154,7 +1175,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
const char *dconnuri,
|
||||
const char *uri_str ATTRIBUTE_UNUSED,
|
||||
const char *dname,
|
||||
@ -237,7 +237,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
{
|
||||
int ret = -1;
|
||||
bool useParams;
|
||||
@@ -1193,7 +1214,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
@@ -1189,7 +1210,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
}
|
||||
|
||||
ret = libxlDoMigrateSrcP2P(driver, vm, sconn, xmlin, dconn, dconnuri,
|
||||
@ -246,7 +246,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
|
||||
if (ret < 0) {
|
||||
/*
|
||||
@@ -1223,7 +1244,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
@@ -1219,7 +1240,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
const char *dconnuri ATTRIBUTE_UNUSED,
|
||||
const char *uri_str,
|
||||
const char *dname ATTRIBUTE_UNUSED,
|
||||
@ -255,7 +255,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
{
|
||||
libxlDomainObjPrivatePtr priv = vm->privateData;
|
||||
char *hostname = NULL;
|
||||
@@ -1263,7 +1284,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
@@ -1259,7 +1280,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
|
||||
/* suspend vm and send saved data to dst through socket fd */
|
||||
virObjectUnlock(vm);
|
||||
@ -264,11 +264,11 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.c
|
||||
virObjectLock(vm);
|
||||
|
||||
if (ret < 0) {
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_migration.h
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_migration.h
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_migration.h
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_migration.h
|
||||
@@ -39,6 +39,10 @@
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_migration.h
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_migration.h
|
||||
@@ -36,6 +36,10 @@
|
||||
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
|
||||
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
|
||||
VIR_MIGRATE_PARAM_DEST_XML, VIR_TYPED_PARAM_STRING, \
|
||||
@ -279,7 +279,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.h
|
||||
NULL
|
||||
|
||||
char *
|
||||
@@ -70,6 +74,14 @@ libxlDomainMigrationDstPrepare(virConnec
|
||||
@@ -67,6 +71,14 @@ libxlDomainMigrationDstPrepare(virConnec
|
||||
int cookieinlen,
|
||||
unsigned int flags);
|
||||
|
||||
@ -294,7 +294,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.h
|
||||
int
|
||||
libxlDomainMigrationSrcPerformP2P(libxlDriverPrivatePtr driver,
|
||||
virDomainObjPtr vm,
|
||||
@@ -78,7 +90,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
@@ -75,7 +87,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
const char *dconnuri,
|
||||
const char *uri_str,
|
||||
const char *dname,
|
||||
@ -303,7 +303,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.h
|
||||
|
||||
int
|
||||
libxlDomainMigrationSrcPerform(libxlDriverPrivatePtr driver,
|
||||
@@ -87,7 +99,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
@@ -84,7 +96,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
const char *dconnuri,
|
||||
const char *uri_str,
|
||||
const char *dname,
|
||||
@ -312,11 +312,11 @@ Index: libvirt-4.10.0/src/libxl/libxl_migration.h
|
||||
|
||||
virDomainPtr
|
||||
libxlDomainMigrationDstFinish(virConnectPtr dconn,
|
||||
Index: libvirt-4.10.0/tools/virsh-domain.c
|
||||
Index: libvirt-5.0.0/tools/virsh-domain.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/virsh-domain.c
|
||||
+++ libvirt-4.10.0/tools/virsh-domain.c
|
||||
@@ -10554,6 +10554,22 @@ static const vshCmdOptDef opts_migrate[]
|
||||
--- libvirt-5.0.0.orig/tools/virsh-domain.c
|
||||
+++ libvirt-5.0.0/tools/virsh-domain.c
|
||||
@@ -10558,6 +10558,22 @@ static const vshCmdOptDef opts_migrate[]
|
||||
.type = VSH_OT_BOOL,
|
||||
.help = N_("use TLS for migration")
|
||||
},
|
||||
@ -339,7 +339,7 @@ Index: libvirt-4.10.0/tools/virsh-domain.c
|
||||
{.name = NULL}
|
||||
};
|
||||
|
||||
@@ -10577,6 +10593,7 @@ doMigrate(void *opaque)
|
||||
@@ -10581,6 +10597,7 @@ doMigrate(void *opaque)
|
||||
unsigned long long ullOpt = 0;
|
||||
int rv;
|
||||
virConnectPtr dconn = data->dconn;
|
||||
@ -347,7 +347,7 @@ Index: libvirt-4.10.0/tools/virsh-domain.c
|
||||
|
||||
sigemptyset(&sigmask);
|
||||
sigaddset(&sigmask, SIGINT);
|
||||
@@ -10696,6 +10713,27 @@ doMigrate(void *opaque)
|
||||
@@ -10700,6 +10717,27 @@ doMigrate(void *opaque)
|
||||
goto save_error;
|
||||
}
|
||||
|
||||
@ -375,10 +375,10 @@ Index: libvirt-4.10.0/tools/virsh-domain.c
|
||||
if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0)
|
||||
goto out;
|
||||
if (opt) {
|
||||
Index: libvirt-4.10.0/tools/virsh.pod
|
||||
Index: libvirt-5.0.0/tools/virsh.pod
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/virsh.pod
|
||||
+++ libvirt-4.10.0/tools/virsh.pod
|
||||
--- libvirt-5.0.0.orig/tools/virsh.pod
|
||||
+++ libvirt-5.0.0/tools/virsh.pod
|
||||
@@ -1994,6 +1994,14 @@ Providing I<--tls> causes the migration
|
||||
the migration of the domain. Usage requires proper TLS setup for both source
|
||||
and target.
|
||||
|
@ -7,11 +7,11 @@ and npiv.
|
||||
|
||||
For more details, see bsc#954872 and FATE#319810
|
||||
|
||||
Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
Index: libvirt-5.0.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
@@ -888,6 +888,25 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
--- libvirt-5.0.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-5.0.0/src/libxl/libxl_conf.c
|
||||
@@ -884,6 +884,25 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -37,7 +37,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
static void
|
||||
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
|
||||
{
|
||||
@@ -1033,6 +1052,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
|
||||
@@ -1029,6 +1048,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
|
||||
int
|
||||
libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk *x_disk)
|
||||
{
|
||||
@ -45,7 +45,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
const char *driver = virDomainDiskGetDriver(l_disk);
|
||||
int format = virDomainDiskGetFormat(l_disk);
|
||||
int actual_type = virStorageSourceGetActualType(l_disk->src);
|
||||
@@ -1048,7 +1068,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||
@@ -1044,7 +1064,7 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
|
||||
return -1;
|
||||
} else {
|
||||
@ -54,7 +54,7 @@ Index: libvirt-4.10.0/src/libxl/libxl_conf.c
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -1161,6 +1181,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||
@@ -1157,6 +1177,9 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk
|
||||
if (libxlDiskSetDiscard(x_disk, l_disk->discard) < 0)
|
||||
return -1;
|
||||
libxlDiskSetCacheMode(x_disk, l_disk->cachemode);
|
||||
|
@ -13,11 +13,11 @@ device with the same name that is being created.
|
||||
src/lxc/lxc_process.c | 1 +
|
||||
3 files changed, 4 insertions(+)
|
||||
|
||||
Index: libvirt-4.10.0/src/lxc/lxc_controller.c
|
||||
Index: libvirt-5.0.0/src/lxc/lxc_controller.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/lxc/lxc_controller.c
|
||||
+++ libvirt-4.10.0/src/lxc/lxc_controller.c
|
||||
@@ -72,6 +72,7 @@
|
||||
--- libvirt-5.0.0.orig/src/lxc/lxc_controller.c
|
||||
+++ libvirt-5.0.0/src/lxc/lxc_controller.c
|
||||
@@ -69,6 +69,7 @@
|
||||
#include "rpc/virnetdaemon.h"
|
||||
#include "virstring.h"
|
||||
#include "virgettext.h"
|
||||
@ -25,7 +25,7 @@ Index: libvirt-4.10.0/src/lxc/lxc_controller.c
|
||||
|
||||
#define VIR_FROM_THIS VIR_FROM_LXC
|
||||
|
||||
@@ -1998,6 +1999,7 @@ static int virLXCControllerDeleteInterfa
|
||||
@@ -2016,6 +2017,7 @@ static int virLXCControllerDeleteInterfa
|
||||
if (virNetDevVethDelete(ctrl->veths[i]) < 0)
|
||||
ret = -1;
|
||||
}
|
||||
@ -33,11 +33,11 @@ Index: libvirt-4.10.0/src/lxc/lxc_controller.c
|
||||
|
||||
return ret;
|
||||
}
|
||||
Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
Index: libvirt-5.0.0/src/lxc/lxc_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
@@ -73,6 +73,7 @@
|
||||
--- libvirt-5.0.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-5.0.0/src/lxc/lxc_driver.c
|
||||
@@ -70,6 +70,7 @@
|
||||
#include "virtime.h"
|
||||
#include "virtypedparam.h"
|
||||
#include "viruri.h"
|
||||
@ -45,7 +45,7 @@ Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
#include "virstring.h"
|
||||
#include "viraccessapicheck.h"
|
||||
#include "viraccessapichecklxc.h"
|
||||
@@ -3944,6 +3945,7 @@ lxcDomainAttachDeviceNetLive(virConnectP
|
||||
@@ -3942,6 +3943,7 @@ lxcDomainAttachDeviceNetLive(virConnectP
|
||||
case VIR_DOMAIN_NET_TYPE_NETWORK:
|
||||
case VIR_DOMAIN_NET_TYPE_ETHERNET:
|
||||
ignore_value(virNetDevVethDelete(veth));
|
||||
@ -53,7 +53,7 @@ Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
break;
|
||||
|
||||
case VIR_DOMAIN_NET_TYPE_DIRECT:
|
||||
@@ -4387,6 +4389,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
|
||||
@@ -4385,6 +4387,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
|
||||
virDomainAuditNet(vm, detach, NULL, "detach", false);
|
||||
goto cleanup;
|
||||
}
|
||||
@ -61,10 +61,10 @@ Index: libvirt-4.10.0/src/lxc/lxc_driver.c
|
||||
break;
|
||||
|
||||
/* It'd be nice to support this, but with macvlan
|
||||
Index: libvirt-4.10.0/src/lxc/lxc_process.c
|
||||
Index: libvirt-5.0.0/src/lxc/lxc_process.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/lxc/lxc_process.c
|
||||
+++ libvirt-4.10.0/src/lxc/lxc_process.c
|
||||
--- libvirt-5.0.0.orig/src/lxc/lxc_process.c
|
||||
+++ libvirt-5.0.0/src/lxc/lxc_process.c
|
||||
@@ -51,6 +51,7 @@
|
||||
#include "viratomic.h"
|
||||
#include "virprocess.h"
|
||||
|
@ -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-4.10.0/src/network/bridge_driver.c
|
||||
Index: libvirt-5.0.0/src/network/bridge_driver.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/network/bridge_driver.c
|
||||
+++ libvirt-4.10.0/src/network/bridge_driver.c
|
||||
@@ -1458,7 +1458,14 @@ networkDnsmasqConfContents(virNetworkObj
|
||||
--- libvirt-5.0.0.orig/src/network/bridge_driver.c
|
||||
+++ libvirt-5.0.0/src/network/bridge_driver.c
|
||||
@@ -1456,7 +1456,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-4.10.0/src/network/bridge_driver.c
|
||||
}
|
||||
|
||||
if (ipdef->tftproot) {
|
||||
Index: libvirt-4.10.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
Index: libvirt-5.0.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
+++ libvirt-4.10.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
--- libvirt-5.0.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
+++ libvirt-5.0.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
@@ -10,7 +10,6 @@ bind-dynamic
|
||||
interface=virbr1
|
||||
dhcp-range=192.168.122.1,static
|
||||
|
@ -2,10 +2,10 @@ Canonicalize hostarch name ppc64le to ppc64
|
||||
|
||||
See bnc#894956
|
||||
|
||||
Index: libvirt-4.10.0/src/util/virarch.c
|
||||
Index: libvirt-5.0.0/src/util/virarch.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/util/virarch.c
|
||||
+++ libvirt-4.10.0/src/util/virarch.c
|
||||
--- libvirt-5.0.0.orig/src/util/virarch.c
|
||||
+++ libvirt-5.0.0/src/util/virarch.c
|
||||
@@ -172,6 +172,8 @@ virArch virArchFromHost(void)
|
||||
arch = VIR_ARCH_I686;
|
||||
} else if (STREQ(ut.machine, "amd64")) {
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: libvirt-4.10.0/examples/apparmor/libvirt-qemu
|
||||
Index: libvirt-5.0.0/src/security/apparmor/libvirt-qemu
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/examples/apparmor/libvirt-qemu
|
||||
+++ libvirt-4.10.0/examples/apparmor/libvirt-qemu
|
||||
--- libvirt-5.0.0.orig/src/security/apparmor/libvirt-qemu
|
||||
+++ libvirt-5.0.0/src/security/apparmor/libvirt-qemu
|
||||
@@ -221,3 +221,6 @@
|
||||
# required for sasl GSSAPI plugin
|
||||
/etc/gss/mech.d/ r,
|
||||
|
@ -8,11 +8,11 @@ Subject: [PATCH] support managed pci devices in xen driver
|
||||
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
|
||||
2 files changed, 35 insertions(+), 15 deletions(-)
|
||||
|
||||
Index: libvirt-4.10.0/src/xenconfig/xen_common.c
|
||||
Index: libvirt-5.0.0/src/xenconfig/xen_common.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/xenconfig/xen_common.c
|
||||
+++ libvirt-4.10.0/src/xenconfig/xen_common.c
|
||||
@@ -390,12 +390,19 @@ xenParsePCI(char *entry)
|
||||
--- libvirt-5.0.0.orig/src/xenconfig/xen_common.c
|
||||
+++ libvirt-5.0.0/src/xenconfig/xen_common.c
|
||||
@@ -386,12 +386,19 @@ xenParsePCI(char *entry)
|
||||
int busID;
|
||||
int slotID;
|
||||
int funcID;
|
||||
@ -32,7 +32,7 @@ Index: libvirt-4.10.0/src/xenconfig/xen_common.c
|
||||
if (!(nextkey = strchr(key, ':')))
|
||||
return NULL;
|
||||
if (virStrncpy(domain, key, (nextkey - key), sizeof(domain)) < 0) {
|
||||
@@ -440,10 +447,30 @@ xenParsePCI(char *entry)
|
||||
@@ -436,10 +443,30 @@ xenParsePCI(char *entry)
|
||||
if (virStrToLong_i(func, NULL, 16, &funcID) < 0)
|
||||
return NULL;
|
||||
|
||||
@ -64,11 +64,11 @@ Index: libvirt-4.10.0/src/xenconfig/xen_common.c
|
||||
hostdev->source.subsys.type = VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
|
||||
hostdev->source.subsys.u.pci.addr.domain = domainID;
|
||||
hostdev->source.subsys.u.pci.addr.bus = busID;
|
||||
Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
Index: libvirt-5.0.0/src/xenconfig/xen_sxpr.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/xenconfig/xen_sxpr.c
|
||||
+++ libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
@@ -1057,6 +1057,7 @@ xenParseSxprPCI(virDomainDefPtr def,
|
||||
--- libvirt-5.0.0.orig/src/xenconfig/xen_sxpr.c
|
||||
+++ libvirt-5.0.0/src/xenconfig/xen_sxpr.c
|
||||
@@ -1053,6 +1053,7 @@ xenParseSxprPCI(virDomainDefPtr def,
|
||||
int busID;
|
||||
int slotID;
|
||||
int funcID;
|
||||
@ -76,7 +76,7 @@ Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
|
||||
node = cur->u.s.car;
|
||||
if (!sexpr_lookup(node, "dev"))
|
||||
@@ -1104,11 +1105,13 @@ xenParseSxprPCI(virDomainDefPtr def,
|
||||
@@ -1100,11 +1101,13 @@ xenParseSxprPCI(virDomainDefPtr def,
|
||||
goto error;
|
||||
}
|
||||
|
||||
@ -91,7 +91,7 @@ Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
dev->source.subsys.type = VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
|
||||
dev->source.subsys.u.pci.addr.domain = domainID;
|
||||
dev->source.subsys.u.pci.addr.bus = busID;
|
||||
@@ -1972,11 +1975,15 @@ static void
|
||||
@@ -1968,11 +1971,15 @@ static void
|
||||
xenFormatSxprPCI(virDomainHostdevDefPtr def,
|
||||
virBufferPtr buf)
|
||||
{
|
||||
@ -108,7 +108,7 @@ Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
}
|
||||
|
||||
|
||||
@@ -1995,12 +2002,6 @@ xenFormatSxprOnePCI(virDomainHostdevDefP
|
||||
@@ -1991,12 +1998,6 @@ xenFormatSxprOnePCI(virDomainHostdevDefP
|
||||
virBufferPtr buf,
|
||||
int detach)
|
||||
{
|
||||
@ -121,7 +121,7 @@ Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
virBufferAddLit(buf, "(pci ");
|
||||
xenFormatSxprPCI(def, buf);
|
||||
if (detach)
|
||||
@@ -2055,12 +2056,6 @@ xenFormatSxprAllPCI(virDomainDefPtr def,
|
||||
@@ -2051,12 +2052,6 @@ xenFormatSxprAllPCI(virDomainDefPtr def,
|
||||
for (i = 0; i < def->nhostdevs; i++) {
|
||||
if (def->hostdevs[i]->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
|
||||
def->hostdevs[i]->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI) {
|
||||
|
@ -8,10 +8,22 @@ 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-4.10.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
Index: libvirt-5.0.0/src/security/apparmor/libvirt-qemu
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
+++ libvirt-4.10.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
--- libvirt-5.0.0.orig/src/security/apparmor/libvirt-qemu
|
||||
+++ libvirt-5.0.0/src/security/apparmor/libvirt-qemu
|
||||
@@ -62,6 +62,7 @@
|
||||
#/dev/fb* rw,
|
||||
|
||||
/etc/pulse/client.conf r,
|
||||
+ /etc/libnl*/classid r,
|
||||
@{HOME}/.pulse-cookie rwk,
|
||||
owner /root/.pulse-cookie rwk,
|
||||
owner /root/.pulse/ rw,
|
||||
Index: libvirt-5.0.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
===================================================================
|
||||
--- libvirt-5.0.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
+++ libvirt-5.0.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
@@ -17,7 +17,7 @@ profile virt-aa-helper /usr/{lib,lib64}/
|
||||
owner @{PROC}/[0-9]*/status r,
|
||||
@{PROC}/filesystems r,
|
||||
@ -21,15 +33,3 @@ Index: libvirt-4.10.0/examples/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
|
||||
# for hostdev
|
||||
/sys/devices/ r,
|
||||
Index: libvirt-4.10.0/examples/apparmor/libvirt-qemu
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/examples/apparmor/libvirt-qemu
|
||||
+++ libvirt-4.10.0/examples/apparmor/libvirt-qemu
|
||||
@@ -62,6 +62,7 @@
|
||||
#/dev/fb* rw,
|
||||
|
||||
/etc/pulse/client.conf r,
|
||||
+ /etc/libnl*/classid r,
|
||||
@{HOME}/.pulse-cookie rwk,
|
||||
owner /root/.pulse-cookie rwk,
|
||||
owner /root/.pulse/ rw,
|
||||
|
@ -1,9 +1,9 @@
|
||||
Adjust libvirt-guests service to conform to SUSE standards
|
||||
|
||||
Index: libvirt-4.10.0/tools/libvirt-guests.init.in
|
||||
Index: libvirt-5.0.0/tools/libvirt-guests.init.in
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/libvirt-guests.init.in
|
||||
+++ libvirt-4.10.0/tools/libvirt-guests.init.in
|
||||
--- libvirt-5.0.0.orig/tools/libvirt-guests.init.in
|
||||
+++ libvirt-5.0.0/tools/libvirt-guests.init.in
|
||||
@@ -4,27 +4,27 @@
|
||||
# http://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/initscrcomconv.html
|
||||
#
|
||||
@ -46,10 +46,10 @@ Index: libvirt-4.10.0/tools/libvirt-guests.init.in
|
||||
+
|
||||
|
||||
exec @libexecdir@/libvirt-guests.sh "$@"
|
||||
Index: libvirt-4.10.0/tools/libvirt-guests.sh.in
|
||||
Index: libvirt-5.0.0/tools/libvirt-guests.sh.in
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/libvirt-guests.sh.in
|
||||
+++ libvirt-4.10.0/tools/libvirt-guests.sh.in
|
||||
--- libvirt-5.0.0.orig/tools/libvirt-guests.sh.in
|
||||
+++ libvirt-5.0.0/tools/libvirt-guests.sh.in
|
||||
@@ -16,14 +16,13 @@
|
||||
# License along with this library. If not, see
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
@ -209,10 +209,10 @@ Index: libvirt-4.10.0/tools/libvirt-guests.sh.in
|
||||
esac
|
||||
-exit $RETVAL
|
||||
+rc_exit
|
||||
Index: libvirt-4.10.0/tools/libvirt-guests.sysconf
|
||||
Index: libvirt-5.0.0/tools/libvirt-guests.sysconf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/libvirt-guests.sysconf
|
||||
+++ libvirt-4.10.0/tools/libvirt-guests.sysconf
|
||||
--- libvirt-5.0.0.orig/tools/libvirt-guests.sysconf
|
||||
+++ libvirt-5.0.0/tools/libvirt-guests.sysconf
|
||||
@@ -1,19 +1,29 @@
|
||||
+## Path: System/Virtualization/libvirt-guests
|
||||
+
|
||||
|
@ -3,10 +3,10 @@ Disable TLS by default
|
||||
On SUSE distros, the default is for libvirtd to listen only on the
|
||||
Unix Domain Socket. The libvirt client still provides remote access
|
||||
via a SSH tunnel.
|
||||
Index: libvirt-4.10.0/src/remote/libvirtd.conf
|
||||
Index: libvirt-5.0.0/src/remote/libvirtd.conf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/remote/libvirtd.conf
|
||||
+++ libvirt-4.10.0/src/remote/libvirtd.conf
|
||||
--- libvirt-5.0.0.orig/src/remote/libvirtd.conf
|
||||
+++ libvirt-5.0.0/src/remote/libvirtd.conf
|
||||
@@ -18,8 +18,8 @@
|
||||
# It is necessary to setup a CA and issue server certificates before
|
||||
# using this capability.
|
||||
@ -18,11 +18,11 @@ Index: libvirt-4.10.0/src/remote/libvirtd.conf
|
||||
|
||||
# Listen for unencrypted TCP connections on the public TCP/IP port.
|
||||
# NB, must pass the --listen flag to the libvirtd process for this to
|
||||
Index: libvirt-4.10.0/src/remote/remote_daemon_config.c
|
||||
Index: libvirt-5.0.0/src/remote/remote_daemon_config.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/remote/remote_daemon_config.c
|
||||
+++ libvirt-4.10.0/src/remote/remote_daemon_config.c
|
||||
@@ -110,7 +110,7 @@ daemonConfigNew(bool privileged ATTRIBUT
|
||||
--- libvirt-5.0.0.orig/src/remote/remote_daemon_config.c
|
||||
+++ libvirt-5.0.0/src/remote/remote_daemon_config.c
|
||||
@@ -108,7 +108,7 @@ daemonConfigNew(bool privileged ATTRIBUT
|
||||
if (VIR_ALLOC(data) < 0)
|
||||
return NULL;
|
||||
|
||||
@ -31,10 +31,10 @@ Index: libvirt-4.10.0/src/remote/remote_daemon_config.c
|
||||
data->listen_tcp = 0;
|
||||
|
||||
if (VIR_STRDUP(data->tls_port, LIBVIRTD_TLS_PORT) < 0 ||
|
||||
Index: libvirt-4.10.0/src/remote/test_libvirtd.aug.in
|
||||
Index: libvirt-5.0.0/src/remote/test_libvirtd.aug.in
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/remote/test_libvirtd.aug.in
|
||||
+++ libvirt-4.10.0/src/remote/test_libvirtd.aug.in
|
||||
--- libvirt-5.0.0.orig/src/remote/test_libvirtd.aug.in
|
||||
+++ libvirt-5.0.0/src/remote/test_libvirtd.aug.in
|
||||
@@ -2,7 +2,7 @@ module Test_libvirtd =
|
||||
::CONFIG::
|
||||
|
||||
|
@ -7,10 +7,10 @@ On SUSE distros, we promote libvirt and all the libvirt-based
|
||||
tools. If a user installs libvirt on their SUSE Xen host, then
|
||||
libvirt should be king and override xendomains. See bsc#1015348
|
||||
|
||||
Index: libvirt-4.10.0/src/remote/libvirtd.service.in
|
||||
Index: libvirt-5.0.0/src/remote/libvirtd.service.in
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/remote/libvirtd.service.in
|
||||
+++ libvirt-4.10.0/src/remote/libvirtd.service.in
|
||||
--- libvirt-5.0.0.orig/src/remote/libvirtd.service.in
|
||||
+++ libvirt-5.0.0/src/remote/libvirtd.service.in
|
||||
@@ -17,6 +17,8 @@ After=local-fs.target
|
||||
After=remote-fs.target
|
||||
After=systemd-logind.service
|
||||
|
@ -1,9 +1,9 @@
|
||||
Adjust libvirtd sysconfig file to conform to SUSE standards
|
||||
|
||||
Index: libvirt-4.10.0/src/remote/libvirtd.sysconf
|
||||
Index: libvirt-5.0.0/src/remote/libvirtd.sysconf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/remote/libvirtd.sysconf
|
||||
+++ libvirt-4.10.0/src/remote/libvirtd.sysconf
|
||||
--- libvirt-5.0.0.orig/src/remote/libvirtd.sysconf
|
||||
+++ libvirt-5.0.0/src/remote/libvirtd.sysconf
|
||||
@@ -1,16 +1,25 @@
|
||||
+## Path: System/Virtualization/libvirt
|
||||
+
|
||||
|
@ -1,10 +1,10 @@
|
||||
Adjust paths of OVMF firmwares on SUSE distros
|
||||
|
||||
Index: libvirt-4.10.0/src/qemu/qemu.conf
|
||||
Index: libvirt-5.0.0/src/qemu/qemu.conf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-4.10.0/src/qemu/qemu.conf
|
||||
@@ -768,10 +768,9 @@ security_default_confined = 0
|
||||
--- libvirt-5.0.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-5.0.0/src/qemu/qemu.conf
|
||||
@@ -767,10 +767,9 @@ security_default_confined = 0
|
||||
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
|
||||
# follows this scheme.
|
||||
#nvram = [
|
||||
@ -18,11 +18,11 @@ Index: libvirt-4.10.0/src/qemu/qemu.conf
|
||||
#]
|
||||
|
||||
# The backend to use for handling stdout/stderr output from
|
||||
Index: libvirt-4.10.0/src/qemu/qemu_conf.c
|
||||
Index: libvirt-5.0.0/src/qemu/qemu_conf.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/qemu/qemu_conf.c
|
||||
+++ libvirt-4.10.0/src/qemu/qemu_conf.c
|
||||
@@ -118,10 +118,9 @@ void qemuDomainCmdlineDefFree(qemuDomain
|
||||
--- libvirt-5.0.0.orig/src/qemu/qemu_conf.c
|
||||
+++ libvirt-5.0.0/src/qemu/qemu_conf.c
|
||||
@@ -116,10 +116,9 @@ void qemuDomainCmdlineDefFree(qemuDomain
|
||||
|
||||
#ifndef DEFAULT_LOADER_NVRAM
|
||||
# define DEFAULT_LOADER_NVRAM \
|
||||
@ -36,11 +36,11 @@ Index: libvirt-4.10.0/src/qemu/qemu_conf.c
|
||||
#endif
|
||||
|
||||
|
||||
Index: libvirt-4.10.0/src/security/virt-aa-helper.c
|
||||
Index: libvirt-5.0.0/src/security/virt-aa-helper.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/security/virt-aa-helper.c
|
||||
+++ libvirt-4.10.0/src/security/virt-aa-helper.c
|
||||
@@ -511,7 +511,8 @@ valid_path(const char *path, const bool
|
||||
--- libvirt-5.0.0.orig/src/security/virt-aa-helper.c
|
||||
+++ libvirt-5.0.0/src/security/virt-aa-helper.c
|
||||
@@ -507,7 +507,8 @@ valid_path(const char *path, const bool
|
||||
"/usr/share/ovmf/", /* for OVMF images */
|
||||
"/usr/share/AAVMF/", /* for AAVMF images */
|
||||
"/usr/share/qemu-efi/", /* for AAVMF images */
|
||||
|
@ -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-4.10.0/src/qemu/qemu.conf
|
||||
Index: libvirt-5.0.0/src/qemu/qemu.conf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-4.10.0/src/qemu/qemu.conf
|
||||
--- libvirt-5.0.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-5.0.0/src/qemu/qemu.conf
|
||||
@@ -414,11 +414,20 @@
|
||||
# isolation, but it cannot appear in a list of drivers.
|
||||
#
|
||||
@ -34,7 +34,7 @@ Index: libvirt-4.10.0/src/qemu/qemu.conf
|
||||
|
||||
# If set to non-zero, then attempts to create unconfined
|
||||
# guests will be blocked. Defaults to 0.
|
||||
@@ -650,11 +659,22 @@
|
||||
@@ -649,11 +658,22 @@
|
||||
#relaxed_acs_check = 1
|
||||
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
Adjust virtlockd sysconfig file to conform to SUSE standards
|
||||
|
||||
Index: libvirt-4.10.0/src/locking/virtlockd.sysconf
|
||||
Index: libvirt-5.0.0/src/locking/virtlockd.sysconf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/locking/virtlockd.sysconf
|
||||
+++ libvirt-4.10.0/src/locking/virtlockd.sysconf
|
||||
--- libvirt-5.0.0.orig/src/locking/virtlockd.sysconf
|
||||
+++ libvirt-5.0.0/src/locking/virtlockd.sysconf
|
||||
@@ -1,3 +1,7 @@
|
||||
+## Path: System/Virtualization/virtlockd
|
||||
+
|
||||
|
@ -1,9 +1,9 @@
|
||||
Adjust virtlogd sysconfig file to conform to SUSE standards
|
||||
|
||||
Index: libvirt-4.10.0/src/logging/virtlogd.sysconf
|
||||
Index: libvirt-5.0.0/src/logging/virtlogd.sysconf
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/logging/virtlogd.sysconf
|
||||
+++ libvirt-4.10.0/src/logging/virtlogd.sysconf
|
||||
--- libvirt-5.0.0.orig/src/logging/virtlogd.sysconf
|
||||
+++ libvirt-5.0.0/src/logging/virtlogd.sysconf
|
||||
@@ -1,3 +1,7 @@
|
||||
+## Path: System/Virtualization/virtlogd
|
||||
+
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: libvirt-4.10.0/tools/Makefile.am
|
||||
Index: libvirt-5.0.0/tools/Makefile.am
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/tools/Makefile.am
|
||||
+++ libvirt-4.10.0/tools/Makefile.am
|
||||
--- libvirt-5.0.0.orig/tools/Makefile.am
|
||||
+++ libvirt-5.0.0/tools/Makefile.am
|
||||
@@ -53,6 +53,7 @@ PODFILES = \
|
||||
virt-sanlock-cleanup.pod \
|
||||
virt-xml-validate.pod \
|
||||
@ -10,7 +10,7 @@ Index: libvirt-4.10.0/tools/Makefile.am
|
||||
$(NULL)
|
||||
|
||||
MANINFILES = \
|
||||
@@ -87,7 +88,7 @@ MAINTAINERCLEANFILES =
|
||||
@@ -88,7 +89,7 @@ MAINTAINERCLEANFILES =
|
||||
confdir = $(sysconfdir)/libvirt
|
||||
conf_DATA =
|
||||
|
||||
@ -19,7 +19,7 @@ Index: libvirt-4.10.0/tools/Makefile.am
|
||||
bin_PROGRAMS = virsh virt-admin
|
||||
libexec_SCRIPTS = libvirt-guests.sh
|
||||
man1_MANS = \
|
||||
@@ -113,6 +114,8 @@ bin_PROGRAMS += virt-host-validate
|
||||
@@ -114,6 +115,8 @@ bin_PROGRAMS += virt-host-validate
|
||||
man1_MANS += virt-host-validate.1
|
||||
endif WITH_HOST_VALIDATE
|
||||
|
||||
@ -28,10 +28,10 @@ Index: libvirt-4.10.0/tools/Makefile.am
|
||||
virt-xml-validate: virt-xml-validate.in Makefile
|
||||
$(AM_V_GEN)sed -e 's|[@]schemadir@|$(pkgdatadir)/schemas|g' \
|
||||
-e 's|[@]VERSION@|$(VERSION)|g' \
|
||||
Index: libvirt-4.10.0/tools/virt-create-rootfs
|
||||
Index: libvirt-5.0.0/tools/virt-create-rootfs
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/tools/virt-create-rootfs
|
||||
+++ libvirt-5.0.0/tools/virt-create-rootfs
|
||||
@@ -0,0 +1,214 @@
|
||||
+#!/bin/sh
|
||||
+set -e
|
||||
@ -247,10 +247,10 @@ Index: libvirt-4.10.0/tools/virt-create-rootfs
|
||||
+ echo "pts/0" >> "$ROOT/etc/securetty"
|
||||
+ chroot "$ROOT" /usr/bin/passwd
|
||||
+fi
|
||||
Index: libvirt-4.10.0/tools/virt-create-rootfs.pod
|
||||
Index: libvirt-5.0.0/tools/virt-create-rootfs.pod
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-4.10.0/tools/virt-create-rootfs.pod
|
||||
+++ libvirt-5.0.0/tools/virt-create-rootfs.pod
|
||||
@@ -0,0 +1,77 @@
|
||||
+=head1 NAME
|
||||
+
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
Index: libvirt-5.0.0/src/xenconfig/xen_sxpr.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/xenconfig/xen_sxpr.c
|
||||
+++ libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
@@ -387,7 +387,7 @@ xenParseSxprVifRate(const char *rate, un
|
||||
--- libvirt-5.0.0.orig/src/xenconfig/xen_sxpr.c
|
||||
+++ libvirt-5.0.0/src/xenconfig/xen_sxpr.c
|
||||
@@ -383,7 +383,7 @@ xenParseSxprVifRate(const char *rate, un
|
||||
static int
|
||||
xenParseSxprDisks(virDomainDefPtr def,
|
||||
const struct sexpr *root,
|
||||
@ -11,7 +11,7 @@ Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
{
|
||||
const struct sexpr *cur, *node;
|
||||
virDomainDiskDefPtr disk = NULL;
|
||||
@@ -437,7 +437,6 @@ xenParseSxprDisks(virDomainDefPtr def,
|
||||
@@ -433,7 +433,6 @@ xenParseSxprDisks(virDomainDefPtr def,
|
||||
/* There is a case without the uname to the CD-ROM device */
|
||||
offset = strchr(dst, ':');
|
||||
if (!offset ||
|
||||
|
@ -6,11 +6,11 @@ and 'file'. This was implicitly done prior to commit 9673418c.
|
||||
|
||||
https://bugzilla.suse.com/show_bug.cgi?id=938228
|
||||
|
||||
Index: libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
Index: libvirt-5.0.0/src/xenconfig/xen_sxpr.c
|
||||
===================================================================
|
||||
--- libvirt-4.10.0.orig/src/xenconfig/xen_sxpr.c
|
||||
+++ libvirt-4.10.0/src/xenconfig/xen_sxpr.c
|
||||
@@ -501,10 +501,11 @@ xenParseSxprDisks(virDomainDefPtr def,
|
||||
--- libvirt-5.0.0.orig/src/xenconfig/xen_sxpr.c
|
||||
+++ libvirt-5.0.0/src/xenconfig/xen_sxpr.c
|
||||
@@ -497,10 +497,11 @@ xenParseSxprDisks(virDomainDefPtr def,
|
||||
omnipotent, we can revisit this, perhaps stat()'ing
|
||||
the src file in question */
|
||||
virDomainDiskSetType(disk, VIR_STORAGE_TYPE_FILE);
|
||||
|
Loading…
Reference in New Issue
Block a user