Hello community, here is the log from the commit of package libvirt for openSUSE:Factory checked in at 2019-10-22 15:38:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libvirt (Old) and /work/SRC/openSUSE:Factory/.libvirt.new.2352 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libvirt" Tue Oct 22 15:38:11 2019 rev:290 rq:737172 version:5.8.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libvirt/libvirt.changes 2019-09-11 10:23:39.559486448 +0200 +++ /work/SRC/openSUSE:Factory/.libvirt.new.2352/libvirt.changes 2019-10-22 15:38:17.329227308 +0200 @@ -1,0 +2,8 @@ +Tue Oct 8 17:07:03 UTC 2019 - James Fehlig <jfeh...@suse.com> + +- Update to libvirt 5.8.0 + - bsc#1149100 + - Many incremental improvements and bug fixes, see + https://libvirt.org/news.html + +------------------------------------------------------------------- Old: ---- libvirt-5.7.0.tar.xz libvirt-5.7.0.tar.xz.asc New: ---- libvirt-5.8.0.tar.xz libvirt-5.8.0.tar.xz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libvirt.spec ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.541229829 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.545229832 +0200 @@ -183,7 +183,7 @@ Name: libvirt Url: http://libvirt.org/ -Version: 5.7.0 +Version: 5.8.0 Release: 0 Summary: Library providing a virtualization API License: LGPL-2.1-or-later @@ -1034,7 +1034,6 @@ %{?arg_esx} \ %{?arg_hyperv} \ %{?arg_vmware} \ - --without-xenapi \ --without-vz \ --without-bhyve \ --with-remote-default-mode=legacy \ @@ -1898,10 +1897,6 @@ %dir %{_datadir}/doc/%{name}/examples %doc %{_datadir}/doc/%{name}/examples/* -# API docs -%dir %{_datadir}/gtk-doc/html/%{name}/ -%doc %{_datadir}/gtk-doc/html/%{name}/* - %if %{with_sanlock} %files lock-sanlock ++++++ 0001-Extract-stats-functions-from-the-qemu-driver.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.585229879 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.585229879 +0200 @@ -18,11 +18,11 @@ create mode 100644 src/conf/domain_stats.c create mode 100644 src/conf/domain_stats.h -Index: libvirt-5.7.0/src/conf/domain_stats.c +Index: libvirt-5.8.0/src/conf/domain_stats.c =================================================================== --- /dev/null -+++ libvirt-5.7.0/src/conf/domain_stats.c -@@ -0,0 +1,139 @@ ++++ libvirt-5.8.0/src/conf/domain_stats.c +@@ -0,0 +1,119 @@ +/* + * domain_stats.c: domain stats extraction helpers + * @@ -63,52 +63,34 @@ + +int +virDomainStatsGetState(virDomainObjPtr dom, -+ virDomainStatsRecordPtr record, -+ int *maxparams) ++ virTypedParamListPtr params) +{ -+ if (virTypedParamsAddInt(&record->params, -+ &record->nparams, -+ maxparams, -+ "state.state", -+ dom->state.state) < 0) ++ if (virTypedParamListAddInt(params, dom->state.state, "state.state") < 0) + return -1; + -+ if (virTypedParamsAddInt(&record->params, -+ &record->nparams, -+ maxparams, -+ "state.reason", -+ dom->state.reason) < 0) ++ if (virTypedParamListAddInt(params, dom->state.reason, "state.reason") < 0) + return -1; + + return 0; +} + -+#define STATS_ADD_NET_PARAM(record, maxparams, num, name, value) \ -+do { \ -+ char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \ -+ snprintf(param_name, VIR_TYPED_PARAM_FIELD_LENGTH, \ -+ "net.%zu.%s", num, name); \ -+ if (value >= 0 && virTypedParamsAddULLong(&(record)->params, \ -+ &(record)->nparams, \ -+ maxparams, \ -+ param_name, \ -+ value) < 0) \ -+ return -1; \ -+} while (0) ++#define STATS_ADD_NET_PARAM(params, num, name, value) \ ++ if (value >= 0 && \ ++ virTypedParamListAddULLong((params), (value), "net.%zu.%s", (num), (name)) < 0) \ ++ return -1; + +int +virDomainStatsGetInterface(virDomainObjPtr dom, -+ virDomainStatsRecordPtr record, -+ int *maxparams) ++ virTypedParamListPtr params) +{ + size_t i; + struct _virDomainInterfaceStats tmp; -+ int ret = -1; + + if (!virDomainObjIsActive(dom)) + return 0; + -+ VIR_DOMAIN_STATS_ADD_COUNT_PARAM(record, maxparams, "net", dom->def->nnets); ++ if (virTypedParamListAddUInt(params, dom->def->nnets, "net.count") < 0) ++ return -1; + + /* Check the path is one of the domain's network interfaces. */ + for (i = 0; i < dom->def->nnets; i++) { @@ -122,8 +104,8 @@ + + actualType = virDomainNetGetActualType(net); + -+ VIR_DOMAIN_STATS_ADD_NAME_PARAM(record, maxparams, -+ "net", "name", i, net->ifname); ++ if (virTypedParamListAddString(params, net->ifname, "net.%zu.name", i) < 0) ++ return -1; + + if (actualType == VIR_DOMAIN_NET_TYPE_VHOSTUSER) { + if (virNetDevOpenvswitchInterfaceStats(net->ifname, &tmp) < 0) { @@ -138,35 +120,33 @@ + } + } + -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "rx.bytes", tmp.rx_bytes); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "rx.pkts", tmp.rx_packets); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "rx.errs", tmp.rx_errs); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "rx.drop", tmp.rx_drop); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "tx.bytes", tmp.tx_bytes); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "tx.pkts", tmp.tx_packets); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "tx.errs", tmp.tx_errs); -+ STATS_ADD_NET_PARAM(record, maxparams, i, -+ "tx.drop", tmp.tx_drop); ++ STATS_ADD_NET_PARAM(params, i, ++ "rx.bytes", tmp.rx_bytes); ++ STATS_ADD_NET_PARAM(params, i, ++ "rx.pkts", tmp.rx_packets); ++ STATS_ADD_NET_PARAM(params, i, ++ "rx.errs", tmp.rx_errs); ++ STATS_ADD_NET_PARAM(params, i, ++ "rx.drop", tmp.rx_drop); ++ STATS_ADD_NET_PARAM(params, i, ++ "tx.bytes", tmp.tx_bytes); ++ STATS_ADD_NET_PARAM(params, i, ++ "tx.pkts", tmp.tx_packets); ++ STATS_ADD_NET_PARAM(params, i, ++ "tx.errs", tmp.tx_errs); ++ STATS_ADD_NET_PARAM(params, i, ++ "tx.drop", tmp.tx_drop); + } + -+ ret = 0; -+ cleanup: -+ return ret; ++ return 0; +} + +#undef STATS_ADD_NET_PARAM -Index: libvirt-5.7.0/src/conf/domain_stats.h +Index: libvirt-5.8.0/src/conf/domain_stats.h =================================================================== --- /dev/null -+++ libvirt-5.7.0/src/conf/domain_stats.h -@@ -0,0 +1,64 @@ ++++ libvirt-5.8.0/src/conf/domain_stats.h +@@ -0,0 +1,62 @@ +/* + * domain_stats.h: domain stats extraction helpers + * @@ -223,19 +203,17 @@ +} while (0) + +int virDomainStatsGetState(virDomainObjPtr dom, -+ virDomainStatsRecordPtr record, -+ int *maxparams); ++ virTypedParamListPtr params); + +int virDomainStatsGetInterface(virDomainObjPtr dom, -+ virDomainStatsRecordPtr record, -+ int *maxparams); ++ virTypedParamListPtr params); + +#endif /* __DOMAIN_STATS_H */ -Index: libvirt-5.7.0/src/libvirt_private.syms +Index: libvirt-5.8.0/src/libvirt_private.syms =================================================================== ---- libvirt-5.7.0.orig/src/libvirt_private.syms -+++ libvirt-5.7.0/src/libvirt_private.syms -@@ -695,6 +695,9 @@ virDomainConfNWFilterInstantiate; +--- libvirt-5.8.0.orig/src/libvirt_private.syms ++++ libvirt-5.8.0/src/libvirt_private.syms +@@ -697,6 +697,9 @@ virDomainConfNWFilterInstantiate; virDomainConfNWFilterTeardown; virDomainConfVMNWFilterTeardown; @@ -253,10 +231,10 @@ virCgroupHasController; virCgroupHasEmptyTasks; virCgroupKillPainfully; -Index: libvirt-5.7.0/src/qemu/qemu_driver.c +Index: libvirt-5.8.0/src/qemu/qemu_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/qemu/qemu_driver.c -+++ libvirt-5.7.0/src/qemu/qemu_driver.c +--- libvirt-5.8.0.orig/src/qemu/qemu_driver.c ++++ libvirt-5.8.0/src/qemu/qemu_driver.c @@ -67,6 +67,7 @@ #include "virarptable.h" #include "viruuid.h" @@ -265,115 +243,53 @@ #include "domain_audit.h" #include "node_device_conf.h" #include "virpci.h" -@@ -20767,21 +20768,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr - int *maxparams, +@@ -20451,13 +20452,7 @@ qemuDomainGetStatsState(virQEMUDriverPtr + virTypedParamListPtr params, unsigned int privflags ATTRIBUTE_UNUSED) { -- if (virTypedParamsAddInt(&record->params, -- &record->nparams, -- maxparams, -- "state.state", -- dom->state.state) < 0) +- if (virTypedParamListAddInt(params, dom->state.state, "state.state") < 0) - return -1; - -- if (virTypedParamsAddInt(&record->params, -- &record->nparams, -- maxparams, -- "state.reason", -- dom->state.reason) < 0) +- if (virTypedParamListAddInt(params, dom->state.reason, "state.reason") < 0) - return -1; - - return 0; -+ return virDomainStatsGetState(dom, record, maxparams); ++ return virDomainStatsGetState(dom, params); } -@@ -20998,37 +20985,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj - int *maxparams) - { - qemuDomainObjPrivatePtr priv = dom->privateData; -- unsigned long long cpu_time = 0; -- unsigned long long user_time = 0; -- unsigned long long sys_time = 0; -- int err = 0; -- -- if (!priv->cgroup) -- return 0; -- +@@ -20659,17 +20654,7 @@ qemuDomainGetStatsCpuCgroup(virDomainObj + if (!priv->cgroup) + return 0; + - err = virCgroupGetCpuacctUsage(priv->cgroup, &cpu_time); -- if (!err && virTypedParamsAddULLong(&record->params, -- &record->nparams, -- maxparams, -- "cpu.time", -- cpu_time) < 0) +- if (!err && virTypedParamListAddULLong(params, cpu_time, "cpu.time") < 0) - return -1; - - err = virCgroupGetCpuacctStat(priv->cgroup, &user_time, &sys_time); -- if (!err && virTypedParamsAddULLong(&record->params, -- &record->nparams, -- maxparams, -- "cpu.user", -- user_time) < 0) +- if (!err && virTypedParamListAddULLong(params, user_time, "cpu.user") < 0) - return -1; -- if (!err && virTypedParamsAddULLong(&record->params, -- &record->nparams, -- maxparams, -- "cpu.system", -- sys_time) < 0) +- if (!err && virTypedParamListAddULLong(params, sys_time, "cpu.system") < 0) - return -1; - - return 0; -+ return virCgroupGetStatsCpu(priv->cgroup, record, maxparams); ++ return virCgroupGetStatsCpu(priv->cgroup, params); } -@@ -21224,44 +21181,6 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr +@@ -20827,79 +20812,15 @@ qemuDomainGetStatsVcpu(virQEMUDriverPtr return ret; } --#define QEMU_ADD_COUNT_PARAM(record, maxparams, type, count) \ --do { \ -- char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \ -- snprintf(param_name, VIR_TYPED_PARAM_FIELD_LENGTH, "%s.count", type); \ -- if (virTypedParamsAddUInt(&(record)->params, \ -- &(record)->nparams, \ -- maxparams, \ -- param_name, \ -- count) < 0) \ -- goto cleanup; \ --} while (0) -- --#define QEMU_ADD_NAME_PARAM(record, maxparams, type, subtype, num, name) \ --do { \ -- char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \ -- snprintf(param_name, VIR_TYPED_PARAM_FIELD_LENGTH, \ -- "%s.%zu.%s", type, num, subtype); \ -- if (virTypedParamsAddString(&(record)->params, \ -- &(record)->nparams, \ -- maxparams, \ -- param_name, \ -- name) < 0) \ -- goto cleanup; \ --} while (0) -- --#define QEMU_ADD_NET_PARAM(record, maxparams, num, name, value) \ --do { \ -- char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \ -- snprintf(param_name, VIR_TYPED_PARAM_FIELD_LENGTH, \ -- "net.%zu.%s", num, name); \ -- if (value >= 0 && virTypedParamsAddULLong(&(record)->params, \ -- &(record)->nparams, \ -- maxparams, \ -- param_name, \ -- value) < 0) \ -- return -1; \ --} while (0) +-#define QEMU_ADD_NET_PARAM(params, num, name, value) \ +- if (value >= 0 && \ +- virTypedParamListAddULLong((params), (value), "net.%zu.%s", (num), (name)) < 0) \ +- return -1; - static int qemuDomainGetStatsInterface(virQEMUDriverPtr driver ATTRIBUTE_UNUSED, virDomainObjPtr dom, -@@ -21269,68 +21188,9 @@ qemuDomainGetStatsInterface(virQEMUDrive - int *maxparams, + virTypedParamListPtr params, unsigned int privflags ATTRIBUTE_UNUSED) { - size_t i; @@ -383,7 +299,8 @@ - if (!virDomainObjIsActive(dom)) - return 0; - -- QEMU_ADD_COUNT_PARAM(record, maxparams, "net", dom->def->nnets); +- if (virTypedParamListAddUInt(params, dom->def->nnets, "net.count") < 0) +- goto cleanup; - - /* Check the path is one of the domain's network interfaces. */ - for (i = 0; i < dom->def->nnets; i++) { @@ -397,8 +314,8 @@ - - actualType = virDomainNetGetActualType(net); - -- QEMU_ADD_NAME_PARAM(record, maxparams, -- "net", "name", i, net->ifname); +- if (virTypedParamListAddString(params, net->ifname, "net.%zu.name", i) < 0) +- goto cleanup; - - if (actualType == VIR_DOMAIN_NET_TYPE_VHOSTUSER) { - if (virNetDevOpenvswitchInterfaceStats(net->ifname, &tmp) < 0) { @@ -413,96 +330,45 @@ - } - } - -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "rx.bytes", tmp.rx_bytes); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "rx.pkts", tmp.rx_packets); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "rx.errs", tmp.rx_errs); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "rx.drop", tmp.rx_drop); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "tx.bytes", tmp.tx_bytes); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "tx.pkts", tmp.tx_packets); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "tx.errs", tmp.tx_errs); -- QEMU_ADD_NET_PARAM(record, maxparams, i, +- QEMU_ADD_NET_PARAM(params, i, - "tx.drop", tmp.tx_drop); - } - - ret = 0; - cleanup: - return ret; -+ return virDomainStatsGetInterface(dom, record, maxparams); ++ return virDomainStatsGetInterface(dom,params); } -#undef QEMU_ADD_NET_PARAM -- - #define QEMU_ADD_BLOCK_PARAM_UI(record, maxparams, num, name, value) \ - do { \ - char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \ -@@ -21560,10 +21420,10 @@ qemuDomainGetStatsBlockExportHeader(virD - { - int ret = -1; - -- QEMU_ADD_NAME_PARAM(records, nrecords, "block", "name", recordnr, disk->dst); -+ VIR_DOMAIN_STATS_ADD_NAME_PARAM(records, nrecords, "block", "name", recordnr, disk->dst); - - if (virStorageSourceIsLocalStorage(src) && src->path) -- QEMU_ADD_NAME_PARAM(records, nrecords, "block", "path", recordnr, src->path); -+ VIR_DOMAIN_STATS_ADD_NAME_PARAM(records, nrecords, "block", "path", recordnr, src->path); - if (src->id) - QEMU_ADD_BLOCK_PARAM_UI(records, nrecords, recordnr, "backingIndex", - src->id); -@@ -21717,7 +21577,7 @@ qemuDomainGetStatsBlock(virQEMUDriverPtr - * after the iteration than it is to iterate twice; but we still - * want count listed first. */ - count_index = record->nparams; -- QEMU_ADD_COUNT_PARAM(record, maxparams, "block", 0); -+ VIR_DOMAIN_STATS_ADD_COUNT_PARAM(record, maxparams, "block", 0); - - for (i = 0; i < dom->def->ndisks; i++) { - if (qemuDomainGetStatsBlockExportDisk(dom->def->disks[i], stats, nodestats, -@@ -21742,8 +21602,6 @@ qemuDomainGetStatsBlock(virQEMUDriverPtr - - #undef QEMU_ADD_BLOCK_PARAM_ULL - --#undef QEMU_ADD_NAME_PARAM -- - #define QEMU_ADD_IOTHREAD_PARAM_UI(record, maxparams, id, name, value) \ - do { \ - char param_name[VIR_TYPED_PARAM_FIELD_LENGTH]; \ -@@ -21795,7 +21653,7 @@ qemuDomainGetStatsIOThread(virQEMUDriver - if (niothreads == 0) - return 0; -- QEMU_ADD_COUNT_PARAM(record, maxparams, "iothread", niothreads); -+ VIR_DOMAIN_STATS_ADD_COUNT_PARAM(record, maxparams, "iothread", niothreads); - - for (i = 0; i < niothreads; i++) { - if (iothreads[i]->poll_valid) { -@@ -21828,8 +21686,6 @@ qemuDomainGetStatsIOThread(virQEMUDriver - - #undef QEMU_ADD_IOTHREAD_PARAM_ULL - --#undef QEMU_ADD_COUNT_PARAM -- + /* refresh information by opening images on the disk */ static int - qemuDomainGetStatsPerfOneEvent(virPerfPtr perf, - virPerfEventType type, -Index: libvirt-5.7.0/src/util/vircgroup.c +Index: libvirt-5.8.0/src/util/vircgroup.c =================================================================== ---- libvirt-5.7.0.orig/src/util/vircgroup.c -+++ libvirt-5.7.0/src/util/vircgroup.c -@@ -2791,6 +2791,44 @@ virCgroupControllerAvailable(int control +--- libvirt-5.8.0.orig/src/util/vircgroup.c ++++ libvirt-5.8.0/src/util/vircgroup.c +@@ -2792,6 +2792,31 @@ virCgroupControllerAvailable(int control return ret; } +int +virCgroupGetStatsCpu(virCgroupPtr cgroup, -+ virDomainStatsRecordPtr record, -+ int *maxparams) ++ virTypedParamListPtr params) +{ + unsigned long long cpu_time = 0; + unsigned long long user_time = 0; @@ -513,25 +379,13 @@ + return 0; + + err = virCgroupGetCpuacctUsage(cgroup, &cpu_time); -+ if (!err && virTypedParamsAddULLong(&record->params, -+ &record->nparams, -+ maxparams, -+ "cpu.time", -+ cpu_time) < 0) ++ if (!err && virTypedParamListAddULLong(params, cpu_time, "cpu.time") < 0) + return -1; + + err = virCgroupGetCpuacctStat(cgroup, &user_time, &sys_time); -+ if (!err && virTypedParamsAddULLong(&record->params, -+ &record->nparams, -+ maxparams, -+ "cpu.user", -+ user_time) < 0) ++ if (!err && virTypedParamListAddULLong(params, user_time, "cpu.user") < 0) + return -1; -+ if (!err && virTypedParamsAddULLong(&record->params, -+ &record->nparams, -+ maxparams, -+ "cpu.system", -+ sys_time) < 0) ++ if (!err && virTypedParamListAddULLong(params, sys_time, "cpu.system") < 0) + return -1; + + return 0; @@ -540,14 +394,13 @@ #else /* !__linux__ */ bool -@@ -2800,6 +2838,15 @@ virCgroupAvailable(void) +@@ -2801,6 +2826,14 @@ virCgroupAvailable(void) } +int +virCgroupGetStatsCpu(virCgroupPtr cgroup, -+ virDomainStatsRecordPtr record, -+ int *maxparams) ++ virTypedParamListPtr params) +{ + return 0; +} @@ -556,22 +409,29 @@ int virCgroupNewPartition(const char *path ATTRIBUTE_UNUSED, bool create ATTRIBUTE_UNUSED, -Index: libvirt-5.7.0/src/util/vircgroup.h +Index: libvirt-5.8.0/src/util/vircgroup.h =================================================================== ---- libvirt-5.7.0.orig/src/util/vircgroup.h -+++ libvirt-5.7.0/src/util/vircgroup.h -@@ -285,3 +285,7 @@ int virCgroupSetOwner(virCgroupPtr cgrou +--- libvirt-5.8.0.orig/src/util/vircgroup.h ++++ libvirt-5.8.0/src/util/vircgroup.h +@@ -24,6 +24,7 @@ + #include "virutil.h" + #include "virbitmap.h" + #include "virenum.h" ++#include "virtypedparam.h" + + struct _virCgroup; + typedef struct _virCgroup virCgroup; +@@ -285,3 +286,6 @@ int virCgroupSetOwner(virCgroupPtr cgrou int virCgroupHasEmptyTasks(virCgroupPtr cgroup, int controller); bool virCgroupControllerAvailable(int controller); + +int virCgroupGetStatsCpu(virCgroupPtr cgroup, -+ virDomainStatsRecordPtr record, -+ int *maxparams); -Index: libvirt-5.7.0/src/conf/Makefile.inc.am ++ virTypedParamListPtr params); +Index: libvirt-5.8.0/src/conf/Makefile.inc.am =================================================================== ---- libvirt-5.7.0.orig/src/conf/Makefile.inc.am -+++ libvirt-5.7.0/src/conf/Makefile.inc.am +--- libvirt-5.8.0.orig/src/conf/Makefile.inc.am ++++ libvirt-5.8.0/src/conf/Makefile.inc.am @@ -26,6 +26,8 @@ DOMAIN_CONF_SOURCES = \ conf/domain_audit.h \ conf/domain_nwfilter.c \ ++++++ 0001-libxl-add-support-for-BlockResize-API.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.597229892 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.597229892 +0200 @@ -19,11 +19,11 @@ src/libxl/libxl_driver.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) -Index: libvirt-5.7.0/src/libxl/libxl_driver.c +Index: libvirt-5.8.0/src/libxl/libxl_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_driver.c -+++ libvirt-5.7.0/src/libxl/libxl_driver.c -@@ -5290,6 +5290,97 @@ libxlDomainMemoryStats(virDomainPtr dom, +--- libvirt-5.8.0.orig/src/libxl/libxl_driver.c ++++ libvirt-5.8.0/src/libxl/libxl_driver.c +@@ -5289,6 +5289,97 @@ libxlDomainMemoryStats(virDomainPtr dom, #undef LIBXL_SET_MEMSTAT @@ -121,7 +121,7 @@ static int libxlDomainGetJobInfo(virDomainPtr dom, virDomainJobInfoPtr info) -@@ -6738,6 +6829,7 @@ static virHypervisorDriver libxlHypervis +@@ -6737,6 +6828,7 @@ static virHypervisorDriver libxlHypervis #endif .nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */ .nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */ ++++++ 0002-lxc-implement-connectGetAllDomainStats.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.605229902 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.609229905 +0200 @@ -9,10 +9,10 @@ src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) -Index: libvirt-5.7.0/src/lxc/lxc_driver.c +Index: libvirt-5.8.0/src/lxc/lxc_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/lxc/lxc_driver.c -+++ libvirt-5.7.0/src/lxc/lxc_driver.c +--- libvirt-5.8.0.orig/src/lxc/lxc_driver.c ++++ libvirt-5.8.0/src/lxc/lxc_driver.c @@ -75,6 +75,7 @@ #include "viraccessapichecklxc.h" #include "virhostdev.h" @@ -21,23 +21,22 @@ #define VIR_FROM_THIS VIR_FROM_LXC -@@ -5402,6 +5403,142 @@ lxcDomainHasManagedSaveImage(virDomainPt +@@ -5404,6 +5405,135 @@ lxcDomainHasManagedSaveImage(virDomainPt return ret; } +static int +lxcDomainGetStatsCpu(virDomainObjPtr dom, -+ virDomainStatsRecordPtr record, -+ int *maxparams) ++ virTypedParamListPtr params) +{ + virLXCDomainObjPrivatePtr priv = dom->privateData; -+ return virCgroupGetStatsCpu(priv->cgroup, record, maxparams); ++ return virCgroupGetStatsCpu(priv->cgroup, params); +} + +typedef int +(*lxcDomainGetStatsFunc)(virDomainObjPtr dom, -+ virDomainStatsRecordPtr record, -+ int *maxparams); ++ virTypedParamListPtr params); ++ + +struct lxcDomainGetStatsWorker { + lxcDomainGetStatsFunc func; @@ -57,36 +56,30 @@ + unsigned int stats, + virDomainStatsRecordPtr *record) +{ -+ int maxparams = 0; -+ virDomainStatsRecordPtr tmp; ++ VIR_AUTOFREE(virDomainStatsRecordPtr) tmp = NULL; ++ VIR_AUTOPTR(virTypedParamList) params = NULL; + size_t i; -+ int ret = -1; + -+ if (VIR_ALLOC(tmp) < 0) -+ goto cleanup; ++ if (VIR_ALLOC(params) < 0) ++ return -1; + + for (i = 0; lxcDomainGetStatsWorkers[i].func; i++) { + if (stats & lxcDomainGetStatsWorkers[i].stats) { -+ if (lxcDomainGetStatsWorkers[i].func(dom, tmp, &maxparams) < 0) -+ goto cleanup; ++ if (lxcDomainGetStatsWorkers[i].func(dom, params) < 0) ++ return -1; + } + } + ++ if (VIR_ALLOC(tmp) < 0) ++ return -1; ++ + if (!(tmp->dom = virGetDomain(conn, dom->def->name, + dom->def->uuid, dom->def->id))) -+ goto cleanup; -+ -+ *record = tmp; -+ tmp = NULL; -+ ret = 0; -+ -+ cleanup: -+ if (tmp) { -+ virTypedParamsFree(tmp->params, tmp->nparams); -+ VIR_FREE(tmp); -+ } ++ return -1; + -+ return ret; ++ tmp->nparams = virTypedParamListStealParams(params, &tmp->params); ++ VIR_STEAL_PTR(*record, tmp); ++ return 0; +} + +static int @@ -164,7 +157,7 @@ /* Function Tables */ static virHypervisorDriver lxcHypervisorDriver = { -@@ -5497,6 +5634,7 @@ static virHypervisorDriver lxcHypervisor +@@ -5499,6 +5629,7 @@ static virHypervisorDriver lxcHypervisor .nodeGetFreePages = lxcNodeGetFreePages, /* 1.2.6 */ .nodeAllocPages = lxcNodeAllocPages, /* 1.2.9 */ .domainHasManagedSaveImage = lxcDomainHasManagedSaveImage, /* 1.2.13 */ ++++++ libvirt-5.7.0.tar.xz -> libvirt-5.8.0.tar.xz ++++++ /work/SRC/openSUSE:Factory/libvirt/libvirt-5.7.0.tar.xz /work/SRC/openSUSE:Factory/.libvirt.new.2352/libvirt-5.8.0.tar.xz differ: char 15, line 1 ++++++ libvirt-power8-models.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.649229952 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.649229952 +0200 @@ -2,10 +2,10 @@ From: <r...@suse.de> -Index: libvirt-5.7.0/src/cpu_map/ppc64_POWER8.xml +Index: libvirt-5.8.0/src/cpu_map/ppc64_POWER8.xml =================================================================== ---- libvirt-5.7.0.orig/src/cpu_map/ppc64_POWER8.xml -+++ libvirt-5.7.0/src/cpu_map/ppc64_POWER8.xml +--- libvirt-5.8.0.orig/src/cpu_map/ppc64_POWER8.xml ++++ libvirt-5.8.0/src/cpu_map/ppc64_POWER8.xml @@ -4,5 +4,7 @@ <pvr value='0x004b0000' mask='0xffff0000'/> <pvr value='0x004c0000' mask='0xffff0000'/> ++++++ libvirt-suse-netcontrol.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.669229975 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.669229975 +0200 @@ -1,7 +1,7 @@ -Index: libvirt-5.7.0/configure.ac +Index: libvirt-5.8.0/configure.ac =================================================================== ---- libvirt-5.7.0.orig/configure.ac -+++ libvirt-5.7.0/configure.ac +--- libvirt-5.8.0.orig/configure.ac ++++ libvirt-5.8.0/configure.ac @@ -285,6 +285,7 @@ LIBVIRT_ARG_LIBSSH LIBVIRT_ARG_LIBXML LIBVIRT_ARG_MACVTAP @@ -18,7 +18,7 @@ LIBVIRT_CHECK_NLS LIBVIRT_CHECK_NUMACTL LIBVIRT_CHECK_NWFILTER -@@ -1025,6 +1027,7 @@ LIBVIRT_RESULT_LIBXL +@@ -1018,6 +1020,7 @@ LIBVIRT_RESULT_LIBXL LIBVIRT_RESULT_LIBXML LIBVIRT_RESULT_MACVTAP LIBVIRT_RESULT_NETCF @@ -26,11 +26,11 @@ LIBVIRT_RESULT_NLS LIBVIRT_RESULT_NSS LIBVIRT_RESULT_NUMACTL -Index: libvirt-5.7.0/tools/virsh.c +Index: libvirt-5.8.0/tools/virsh.c =================================================================== ---- libvirt-5.7.0.orig/tools/virsh.c -+++ libvirt-5.7.0/tools/virsh.c -@@ -561,6 +561,8 @@ virshShowVersion(vshControl *ctl ATTRIBU +--- libvirt-5.8.0.orig/tools/virsh.c ++++ libvirt-5.8.0/tools/virsh.c +@@ -558,6 +558,8 @@ virshShowVersion(vshControl *ctl ATTRIBU vshPrint(ctl, " Interface"); # if defined(WITH_NETCF) vshPrint(ctl, " netcf"); @@ -39,10 +39,10 @@ # elif defined(WITH_UDEV) vshPrint(ctl, " udev"); # endif -Index: libvirt-5.7.0/src/interface/interface_backend_netcf.c +Index: libvirt-5.8.0/src/interface/interface_backend_netcf.c =================================================================== ---- libvirt-5.7.0.orig/src/interface/interface_backend_netcf.c -+++ libvirt-5.7.0/src/interface/interface_backend_netcf.c +--- libvirt-5.8.0.orig/src/interface/interface_backend_netcf.c ++++ libvirt-5.8.0/src/interface/interface_backend_netcf.c @@ -21,7 +21,12 @@ #include <config.h> @@ -106,7 +106,7 @@ /* open netcf */ if (ncf_init(&driver->netcf, NULL) != 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", -@@ -1262,6 +1302,19 @@ static virStateDriver interfaceStateDriv +@@ -1251,6 +1291,19 @@ static virStateDriver interfaceStateDriv int netcfIfaceRegister(void) { @@ -126,10 +126,10 @@ if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0) return -1; if (virSetSharedInterfaceDriver(&interfaceDriver) < 0) -Index: libvirt-5.7.0/src/interface/interface_driver.c +Index: libvirt-5.8.0/src/interface/interface_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/interface/interface_driver.c -+++ libvirt-5.7.0/src/interface/interface_driver.c +--- libvirt-5.8.0.orig/src/interface/interface_driver.c ++++ libvirt-5.8.0/src/interface/interface_driver.c @@ -30,8 +30,15 @@ interfaceRegister(void) if (netcfIfaceRegister() == 0) return 0; @@ -147,10 +147,10 @@ if (udevIfaceRegister() == 0) return 0; #endif /* WITH_UDEV */ -Index: libvirt-5.7.0/m4/virt-netcontrol.m4 +Index: libvirt-5.8.0/m4/virt-netcontrol.m4 =================================================================== --- /dev/null -+++ libvirt-5.7.0/m4/virt-netcontrol.m4 ++++ libvirt-5.8.0/m4/virt-netcontrol.m4 @@ -0,0 +1,39 @@ +dnl The libnetcontrol library +dnl @@ -191,10 +191,10 @@ +AC_DEFUN([LIBVIRT_RESULT_NETCONTROL],[ + LIBVIRT_RESULT_LIB([NETCONTROL]) +]) -Index: libvirt-5.7.0/src/interface/Makefile.inc.am +Index: libvirt-5.8.0/src/interface/Makefile.inc.am =================================================================== ---- libvirt-5.7.0.orig/src/interface/Makefile.inc.am -+++ libvirt-5.7.0/src/interface/Makefile.inc.am +--- libvirt-5.8.0.orig/src/interface/Makefile.inc.am ++++ libvirt-5.8.0/src/interface/Makefile.inc.am @@ -6,6 +6,7 @@ INTERFACE_DRIVER_SOURCES = \ $(NULL) ++++++ libxl-dom-reset.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.709230019 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.709230019 +0200 @@ -8,11 +8,11 @@ option, but domainReset can be implemented in the libxl driver by forcibly destroying the domain and starting it again. -Index: libvirt-5.7.0/src/libxl/libxl_driver.c +Index: libvirt-5.8.0/src/libxl/libxl_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_driver.c -+++ libvirt-5.7.0/src/libxl/libxl_driver.c -@@ -1364,6 +1364,61 @@ libxlDomainReboot(virDomainPtr dom, unsi +--- libvirt-5.8.0.orig/src/libxl/libxl_driver.c ++++ libvirt-5.8.0/src/libxl/libxl_driver.c +@@ -1367,6 +1367,61 @@ libxlDomainReboot(virDomainPtr dom, unsi } static int @@ -74,7 +74,7 @@ libxlDomainDestroyFlags(virDomainPtr dom, unsigned int flags) { -@@ -6613,6 +6668,7 @@ static virHypervisorDriver libxlHypervis +@@ -6612,6 +6667,7 @@ static virHypervisorDriver libxlHypervis .domainShutdown = libxlDomainShutdown, /* 0.9.0 */ .domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */ .domainReboot = libxlDomainReboot, /* 0.9.0 */ ++++++ libxl-set-cach-mode.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.721230034 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.721230034 +0200 @@ -3,10 +3,10 @@ src/libxl/libxl_conf.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) -Index: libvirt-5.7.0/src/libxl/libxl_conf.c +Index: libvirt-5.8.0/src/libxl/libxl_conf.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_conf.c -+++ libvirt-5.7.0/src/libxl/libxl_conf.c +--- libvirt-5.8.0.orig/src/libxl/libxl_conf.c ++++ libvirt-5.8.0/src/libxl/libxl_conf.c @@ -897,6 +897,30 @@ libxlDiskSetDiscard(libxl_device_disk *x #endif } ++++++ libxl-set-migration-constraints.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.725230038 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.725230038 +0200 @@ -16,10 +16,10 @@ tools/virsh.pod | 8 ++++++++ 6 files changed, 125 insertions(+), 6 deletions(-) -Index: libvirt-5.7.0/include/libvirt/libvirt-domain.h +Index: libvirt-5.8.0/include/libvirt/libvirt-domain.h =================================================================== ---- libvirt-5.7.0.orig/include/libvirt/libvirt-domain.h -+++ libvirt-5.7.0/include/libvirt/libvirt-domain.h +--- libvirt-5.8.0.orig/include/libvirt/libvirt-domain.h ++++ libvirt-5.8.0/include/libvirt/libvirt-domain.h @@ -1051,6 +1051,31 @@ typedef enum { */ # define VIR_MIGRATE_PARAM_PARALLEL_CONNECTIONS "parallel.connections" @@ -52,11 +52,11 @@ /* Domain migration. */ virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn, unsigned long flags, const char *dname, -Index: libvirt-5.7.0/src/libxl/libxl_driver.c +Index: libvirt-5.8.0/src/libxl/libxl_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_driver.c -+++ libvirt-5.7.0/src/libxl/libxl_driver.c -@@ -6156,6 +6156,9 @@ libxlDomainMigratePerform3Params(virDoma +--- libvirt-5.8.0.orig/src/libxl/libxl_driver.c ++++ libvirt-5.8.0/src/libxl/libxl_driver.c +@@ -6155,6 +6155,9 @@ libxlDomainMigratePerform3Params(virDoma const char *dname = NULL; const char *uri = NULL; int ret = -1; @@ -66,7 +66,7 @@ #ifdef LIBXL_HAVE_NO_SUSPEND_RESUME virReportUnsupportedError(); -@@ -6172,6 +6175,18 @@ libxlDomainMigratePerform3Params(virDoma +@@ -6171,6 +6174,18 @@ libxlDomainMigratePerform3Params(virDoma virTypedParamsGetString(params, nparams, VIR_MIGRATE_PARAM_DEST_NAME, &dname) < 0 || @@ -85,7 +85,7 @@ virTypedParamsGetString(params, nparams, VIR_MIGRATE_PARAM_URI, &uri) < 0) -@@ -6186,11 +6201,11 @@ libxlDomainMigratePerform3Params(virDoma +@@ -6185,11 +6200,11 @@ libxlDomainMigratePerform3Params(virDoma if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) { if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml, @@ -99,10 +99,10 @@ goto cleanup; } -Index: libvirt-5.7.0/src/libxl/libxl_migration.c +Index: libvirt-5.8.0/src/libxl/libxl_migration.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_migration.c -+++ libvirt-5.7.0/src/libxl/libxl_migration.c +--- libvirt-5.8.0.orig/src/libxl/libxl_migration.c ++++ libvirt-5.8.0/src/libxl/libxl_migration.c @@ -342,18 +342,39 @@ libxlMigrateDstReceive(virNetSocketPtr s static int libxlDoMigrateSrcSend(libxlDriverPrivatePtr driver, @@ -264,10 +264,10 @@ virObjectLock(vm); if (ret < 0) { -Index: libvirt-5.7.0/src/libxl/libxl_migration.h +Index: libvirt-5.8.0/src/libxl/libxl_migration.h =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_migration.h -+++ libvirt-5.7.0/src/libxl/libxl_migration.h +--- libvirt-5.8.0.orig/src/libxl/libxl_migration.h ++++ libvirt-5.8.0/src/libxl/libxl_migration.h @@ -35,6 +35,10 @@ VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \ VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \ @@ -312,11 +312,11 @@ virDomainPtr libxlDomainMigrationDstFinish(virConnectPtr dconn, -Index: libvirt-5.7.0/tools/virsh-domain.c +Index: libvirt-5.8.0/tools/virsh-domain.c =================================================================== ---- libvirt-5.7.0.orig/tools/virsh-domain.c -+++ libvirt-5.7.0/tools/virsh-domain.c -@@ -10591,6 +10591,22 @@ static const vshCmdOptDef opts_migrate[] +--- libvirt-5.8.0.orig/tools/virsh-domain.c ++++ libvirt-5.8.0/tools/virsh-domain.c +@@ -10572,6 +10572,22 @@ static const vshCmdOptDef opts_migrate[] .type = VSH_OT_INT, .help = N_("migration bandwidth limit in MiB/s") }, @@ -339,7 +339,7 @@ {.name = NULL} }; -@@ -10614,6 +10630,7 @@ doMigrate(void *opaque) +@@ -10595,6 +10611,7 @@ doMigrate(void *opaque) unsigned long long ullOpt = 0; int rv; virConnectPtr dconn = data->dconn; @@ -347,7 +347,7 @@ sigemptyset(&sigmask); sigaddset(&sigmask, SIGINT); -@@ -10733,6 +10750,27 @@ doMigrate(void *opaque) +@@ -10714,6 +10731,27 @@ doMigrate(void *opaque) goto save_error; } @@ -375,10 +375,10 @@ if (vshCommandOptStringReq(ctl, cmd, "xml", &opt) < 0) goto out; if (opt) { -Index: libvirt-5.7.0/tools/virsh.pod +Index: libvirt-5.8.0/tools/virsh.pod =================================================================== ---- libvirt-5.7.0.orig/tools/virsh.pod -+++ libvirt-5.7.0/tools/virsh.pod +--- libvirt-5.8.0.orig/tools/virsh.pod ++++ libvirt-5.8.0/tools/virsh.pod @@ -2254,6 +2254,14 @@ I<--parallel-connections>. Parallel conn network link between the source and the target and thus speeding up the migration. ++++++ libxl-support-block-script.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.737230051 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.737230051 +0200 @@ -7,10 +7,10 @@ For more details, see bsc#954872 and FATE#319810 -Index: libvirt-5.7.0/src/libxl/libxl_conf.c +Index: libvirt-5.8.0/src/libxl/libxl_conf.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_conf.c -+++ libvirt-5.7.0/src/libxl/libxl_conf.c +--- libvirt-5.8.0.orig/src/libxl/libxl_conf.c ++++ libvirt-5.8.0/src/libxl/libxl_conf.c @@ -897,6 +897,25 @@ libxlDiskSetDiscard(libxl_device_disk *x #endif } ++++++ lxc-wait-after-eth-del.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.741230057 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.741230057 +0200 @@ -13,10 +13,10 @@ src/lxc/lxc_process.c | 1 + 3 files changed, 4 insertions(+) -Index: libvirt-5.7.0/src/lxc/lxc_controller.c +Index: libvirt-5.8.0/src/lxc/lxc_controller.c =================================================================== ---- libvirt-5.7.0.orig/src/lxc/lxc_controller.c -+++ libvirt-5.7.0/src/lxc/lxc_controller.c +--- libvirt-5.8.0.orig/src/lxc/lxc_controller.c ++++ libvirt-5.8.0/src/lxc/lxc_controller.c @@ -69,6 +69,7 @@ #include "rpc/virnetdaemon.h" #include "virstring.h" @@ -33,10 +33,10 @@ return ret; } -Index: libvirt-5.7.0/src/lxc/lxc_driver.c +Index: libvirt-5.8.0/src/lxc/lxc_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/lxc/lxc_driver.c -+++ libvirt-5.7.0/src/lxc/lxc_driver.c +--- libvirt-5.8.0.orig/src/lxc/lxc_driver.c ++++ libvirt-5.8.0/src/lxc/lxc_driver.c @@ -70,6 +70,7 @@ #include "virtime.h" #include "virtypedparam.h" @@ -45,7 +45,7 @@ #include "virstring.h" #include "viraccessapicheck.h" #include "viraccessapichecklxc.h" -@@ -3925,6 +3926,7 @@ lxcDomainAttachDeviceNetLive(virConnectP +@@ -3927,6 +3928,7 @@ lxcDomainAttachDeviceNetLive(virConnectP case VIR_DOMAIN_NET_TYPE_NETWORK: case VIR_DOMAIN_NET_TYPE_ETHERNET: ignore_value(virNetDevVethDelete(veth)); @@ -53,7 +53,7 @@ break; case VIR_DOMAIN_NET_TYPE_DIRECT: -@@ -4369,6 +4371,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb +@@ -4371,6 +4373,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb virDomainAuditNet(vm, detach, NULL, "detach", false); goto cleanup; } @@ -61,10 +61,10 @@ break; /* It'd be nice to support this, but with macvlan -Index: libvirt-5.7.0/src/lxc/lxc_process.c +Index: libvirt-5.8.0/src/lxc/lxc_process.c =================================================================== ---- libvirt-5.7.0.orig/src/lxc/lxc_process.c -+++ libvirt-5.7.0/src/lxc/lxc_process.c +--- libvirt-5.8.0.orig/src/lxc/lxc_process.c ++++ libvirt-5.8.0/src/lxc/lxc_process.c @@ -51,6 +51,7 @@ #include "viratomic.h" #include "virprocess.h" ++++++ network-don-t-use-dhcp-authoritative-on-static-netwo.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.749230066 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.753230069 +0200 @@ -17,11 +17,11 @@ tests/networkxml2confdata/dhcp6host-routed-network.conf | 1 - 2 files changed, 8 insertions(+), 2 deletions(-) -Index: libvirt-5.7.0/src/network/bridge_driver.c +Index: libvirt-5.8.0/src/network/bridge_driver.c =================================================================== ---- libvirt-5.7.0.orig/src/network/bridge_driver.c -+++ libvirt-5.7.0/src/network/bridge_driver.c -@@ -1510,7 +1510,14 @@ networkDnsmasqConfContents(virNetworkObj +--- libvirt-5.8.0.orig/src/network/bridge_driver.c ++++ libvirt-5.8.0/src/network/bridge_driver.c +@@ -1516,7 +1516,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 @@ } if (ipdef->tftproot) { -Index: libvirt-5.7.0/tests/networkxml2confdata/dhcp6host-routed-network.conf +Index: libvirt-5.8.0/tests/networkxml2confdata/dhcp6host-routed-network.conf =================================================================== ---- libvirt-5.7.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf -+++ libvirt-5.7.0/tests/networkxml2confdata/dhcp6host-routed-network.conf +--- libvirt-5.8.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf ++++ libvirt-5.8.0/tests/networkxml2confdata/dhcp6host-routed-network.conf @@ -10,7 +10,6 @@ bind-dynamic interface=virbr1 dhcp-range=192.168.122.1,static ++++++ ppc64le-canonical-name.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.761230079 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.761230079 +0200 @@ -2,10 +2,10 @@ See bnc#894956 -Index: libvirt-5.7.0/src/util/virarch.c +Index: libvirt-5.8.0/src/util/virarch.c =================================================================== ---- libvirt-5.7.0.orig/src/util/virarch.c -+++ libvirt-5.7.0/src/util/virarch.c +--- libvirt-5.8.0.orig/src/util/virarch.c ++++ libvirt-5.8.0/src/util/virarch.c @@ -172,6 +172,8 @@ virArch virArchFromHost(void) arch = VIR_ARCH_I686; } else if (STREQ(ut.machine, "amd64")) { ++++++ qemu-apparmor-screenshot.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.769230088 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.773230092 +0200 @@ -1,7 +1,7 @@ -Index: libvirt-5.7.0/src/security/apparmor/libvirt-qemu +Index: libvirt-5.8.0/src/security/apparmor/libvirt-qemu =================================================================== ---- libvirt-5.7.0.orig/src/security/apparmor/libvirt-qemu -+++ libvirt-5.7.0/src/security/apparmor/libvirt-qemu +--- libvirt-5.8.0.orig/src/security/apparmor/libvirt-qemu ++++ libvirt-5.8.0/src/security/apparmor/libvirt-qemu @@ -228,3 +228,6 @@ # required for sasl GSSAPI plugin /etc/gss/mech.d/ r, ++++++ support-managed-pci-xen-driver.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.785230107 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.785230107 +0200 @@ -8,10 +8,10 @@ src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++- 2 files changed, 35 insertions(+), 15 deletions(-) -Index: libvirt-5.7.0/src/libxl/xen_common.c +Index: libvirt-5.8.0/src/libxl/xen_common.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/xen_common.c -+++ libvirt-5.7.0/src/libxl/xen_common.c +--- libvirt-5.8.0.orig/src/libxl/xen_common.c ++++ libvirt-5.8.0/src/libxl/xen_common.c @@ -388,12 +388,19 @@ xenParsePCI(char *entry) int busID; int slotID; ++++++ suse-apparmor-libnl-paths.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.793230115 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.797230120 +0200 @@ -8,10 +8,10 @@ to squelch a denial when starting confined domains. Found while investigating bsc#1058847 -Index: libvirt-5.7.0/src/security/apparmor/libvirt-qemu +Index: libvirt-5.8.0/src/security/apparmor/libvirt-qemu =================================================================== ---- libvirt-5.7.0.orig/src/security/apparmor/libvirt-qemu -+++ libvirt-5.7.0/src/security/apparmor/libvirt-qemu +--- libvirt-5.8.0.orig/src/security/apparmor/libvirt-qemu ++++ libvirt-5.8.0/src/security/apparmor/libvirt-qemu @@ -63,6 +63,7 @@ #/dev/fb* rw, @@ -20,10 +20,10 @@ @{HOME}/.pulse-cookie rwk, owner /root/.pulse-cookie rwk, owner /root/.pulse/ rw, -Index: libvirt-5.7.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper +Index: libvirt-5.8.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper =================================================================== ---- libvirt-5.7.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper -+++ libvirt-5.7.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper +--- libvirt-5.8.0.orig/src/security/apparmor/usr.lib.libvirt.virt-aa-helper ++++ libvirt-5.8.0/src/security/apparmor/usr.lib.libvirt.virt-aa-helper @@ -20,7 +20,7 @@ profile virt-aa-helper /usr/{lib,lib64}/ # Used when internally running another command (namely apparmor_parser) @{PROC}/@{pid}/fd/ r, ++++++ suse-libvirt-guests-service.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.805230129 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.805230129 +0200 @@ -1,9 +1,9 @@ Adjust libvirt-guests service to conform to SUSE standards -Index: libvirt-5.7.0/tools/libvirt-guests.sh.in +Index: libvirt-5.8.0/tools/libvirt-guests.sh.in =================================================================== ---- libvirt-5.7.0.orig/tools/libvirt-guests.sh.in -+++ libvirt-5.7.0/tools/libvirt-guests.sh.in +--- libvirt-5.8.0.orig/tools/libvirt-guests.sh.in ++++ libvirt-5.8.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 @@ esac -exit $RETVAL +rc_exit -Index: libvirt-5.7.0/tools/libvirt-guests.sysconf +Index: libvirt-5.8.0/tools/libvirt-guests.sysconf =================================================================== ---- libvirt-5.7.0.orig/tools/libvirt-guests.sysconf -+++ libvirt-5.7.0/tools/libvirt-guests.sysconf +--- libvirt-5.8.0.orig/tools/libvirt-guests.sysconf ++++ libvirt-5.8.0/tools/libvirt-guests.sysconf @@ -1,19 +1,29 @@ +## Path: System/Virtualization/libvirt-guests + ++++++ suse-libvirtd-disable-tls.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.809230133 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.813230139 +0200 @@ -3,10 +3,10 @@ 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-5.7.0/src/remote/remote_daemon_config.c +Index: libvirt-5.8.0/src/remote/remote_daemon_config.c =================================================================== ---- libvirt-5.7.0.orig/src/remote/remote_daemon_config.c -+++ libvirt-5.7.0/src/remote/remote_daemon_config.c +--- libvirt-5.8.0.orig/src/remote/remote_daemon_config.c ++++ libvirt-5.8.0/src/remote/remote_daemon_config.c @@ -109,7 +109,7 @@ daemonConfigNew(bool privileged ATTRIBUT #ifdef WITH_IP @@ -16,10 +16,10 @@ # else /* ! LIBVIRTD */ data->listen_tls = 0; /* Always honoured, --listen doesn't exist. */ # endif /* ! LIBVIRTD */ -Index: libvirt-5.7.0/src/remote/libvirtd.conf.in +Index: libvirt-5.8.0/src/remote/libvirtd.conf.in =================================================================== ---- libvirt-5.7.0.orig/src/remote/libvirtd.conf.in -+++ libvirt-5.7.0/src/remote/libvirtd.conf.in +--- libvirt-5.8.0.orig/src/remote/libvirtd.conf.in ++++ libvirt-5.8.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. ++++++ suse-libvirtd-sysconfig-settings.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.821230148 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.821230148 +0200 @@ -1,9 +1,9 @@ Adjust libvirtd sysconfig file to conform to SUSE standards -Index: libvirt-5.7.0/src/remote/libvirtd.sysconf +Index: libvirt-5.8.0/src/remote/libvirtd.sysconf =================================================================== ---- libvirt-5.7.0.orig/src/remote/libvirtd.sysconf -+++ libvirt-5.7.0/src/remote/libvirtd.sysconf +--- libvirt-5.8.0.orig/src/remote/libvirtd.sysconf ++++ libvirt-5.8.0/src/remote/libvirtd.sysconf @@ -1,5 +1,9 @@ +## Path: System/Virtualization/libvirt # Customizations for the libvirtd.service systemd unit ++++++ suse-libxl-disable-autoballoon.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.829230156 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.833230161 +0200 @@ -6,10 +6,10 @@ by default. It can only be enabled with the 'autoballoon' setting in libxl.conf. See jsc#SLE-3059 for more details. -Index: libvirt-5.7.0/src/libxl/libxl.conf +Index: libvirt-5.8.0/src/libxl/libxl.conf =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl.conf -+++ libvirt-5.7.0/src/libxl/libxl.conf +--- libvirt-5.8.0.orig/src/libxl/libxl.conf ++++ libvirt-5.8.0/src/libxl/libxl.conf @@ -4,12 +4,11 @@ # Enable autoballooning of domain0 @@ -27,10 +27,10 @@ # In order to prevent accidentally starting two domains that -Index: libvirt-5.7.0/src/libxl/libxl_conf.c +Index: libvirt-5.8.0/src/libxl/libxl_conf.c =================================================================== ---- libvirt-5.7.0.orig/src/libxl/libxl_conf.c -+++ libvirt-5.7.0/src/libxl/libxl_conf.c +--- libvirt-5.8.0.orig/src/libxl/libxl_conf.c ++++ libvirt-5.8.0/src/libxl/libxl_conf.c @@ -22,7 +22,6 @@ #include <config.h> ++++++ suse-ovmf-paths.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.841230170 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.841230170 +0200 @@ -1,9 +1,9 @@ Adjust paths of OVMF firmwares on SUSE distros -Index: libvirt-5.7.0/src/qemu/qemu.conf +Index: libvirt-5.8.0/src/qemu/qemu.conf =================================================================== ---- libvirt-5.7.0.orig/src/qemu/qemu.conf -+++ libvirt-5.7.0/src/qemu/qemu.conf +--- libvirt-5.8.0.orig/src/qemu/qemu.conf ++++ libvirt-5.8.0/src/qemu/qemu.conf @@ -796,10 +796,9 @@ # for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default # follows this scheme. @@ -18,10 +18,10 @@ #] # The backend to use for handling stdout/stderr output from -Index: libvirt-5.7.0/src/qemu/qemu_conf.c +Index: libvirt-5.8.0/src/qemu/qemu_conf.c =================================================================== ---- libvirt-5.7.0.orig/src/qemu/qemu_conf.c -+++ libvirt-5.7.0/src/qemu/qemu_conf.c +--- libvirt-5.8.0.orig/src/qemu/qemu_conf.c ++++ libvirt-5.8.0/src/qemu/qemu_conf.c @@ -96,10 +96,9 @@ qemuDriverUnlock(virQEMUDriverPtr driver #ifndef DEFAULT_LOADER_NVRAM @@ -36,10 +36,10 @@ #endif -Index: libvirt-5.7.0/src/security/virt-aa-helper.c +Index: libvirt-5.8.0/src/security/virt-aa-helper.c =================================================================== ---- libvirt-5.7.0.orig/src/security/virt-aa-helper.c -+++ libvirt-5.7.0/src/security/virt-aa-helper.c +--- libvirt-5.8.0.orig/src/security/virt-aa-helper.c ++++ libvirt-5.8.0/src/security/virt-aa-helper.c @@ -509,7 +509,8 @@ valid_path(const char *path, const bool "/usr/share/ovmf/", /* for OVMF images */ "/usr/share/AAVMF/", /* for AAVMF images */ ++++++ suse-qemu-conf.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.849230180 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.849230180 +0200 @@ -7,10 +7,10 @@ etc.), but for now they are all lumped together in this single patch. -Index: libvirt-5.7.0/src/qemu/qemu.conf +Index: libvirt-5.8.0/src/qemu/qemu.conf =================================================================== ---- libvirt-5.7.0.orig/src/qemu/qemu.conf -+++ libvirt-5.7.0/src/qemu/qemu.conf +--- libvirt-5.8.0.orig/src/qemu/qemu.conf ++++ libvirt-5.8.0/src/qemu/qemu.conf @@ -420,10 +420,19 @@ # isolation, but it cannot appear in a list of drivers. # @@ -60,11 +60,11 @@ # #lock_manager = "lockd" -Index: libvirt-5.7.0/src/qemu/qemu_conf.c +Index: libvirt-5.8.0/src/qemu/qemu_conf.c =================================================================== ---- libvirt-5.7.0.orig/src/qemu/qemu_conf.c -+++ libvirt-5.7.0/src/qemu/qemu_conf.c -@@ -287,7 +287,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf +--- libvirt-5.8.0.orig/src/qemu/qemu_conf.c ++++ libvirt-5.8.0/src/qemu/qemu_conf.c +@@ -278,7 +278,7 @@ virQEMUDriverConfigPtr virQEMUDriverConf cfg->clearEmulatorCapabilities = true; ++++++ suse-virtlockd-sysconfig-settings.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.865230197 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.865230197 +0200 @@ -1,9 +1,9 @@ Adjust virtlockd sysconfig file to conform to SUSE standards -Index: libvirt-5.7.0/src/locking/virtlockd.sysconf +Index: libvirt-5.8.0/src/locking/virtlockd.sysconf =================================================================== ---- libvirt-5.7.0.orig/src/locking/virtlockd.sysconf -+++ libvirt-5.7.0/src/locking/virtlockd.sysconf +--- libvirt-5.8.0.orig/src/locking/virtlockd.sysconf ++++ libvirt-5.8.0/src/locking/virtlockd.sysconf @@ -1,3 +1,7 @@ +## Path: System/Virtualization/virtlockd + ++++++ suse-virtlogd-sysconfig-settings.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.869230202 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.873230206 +0200 @@ -1,9 +1,9 @@ Adjust virtlogd sysconfig file to conform to SUSE standards -Index: libvirt-5.7.0/src/logging/virtlogd.sysconf +Index: libvirt-5.8.0/src/logging/virtlogd.sysconf =================================================================== ---- libvirt-5.7.0.orig/src/logging/virtlogd.sysconf -+++ libvirt-5.7.0/src/logging/virtlogd.sysconf +--- libvirt-5.8.0.orig/src/logging/virtlogd.sysconf ++++ libvirt-5.8.0/src/logging/virtlogd.sysconf @@ -1,3 +1,7 @@ +## Path: System/Virtualization/virtlogd + ++++++ virt-create-rootfs.patch ++++++ --- /var/tmp/diff_new_pack.5AeeOE/_old 2019-10-22 15:38:19.881230215 +0200 +++ /var/tmp/diff_new_pack.5AeeOE/_new 2019-10-22 15:38:19.881230215 +0200 @@ -1,7 +1,7 @@ -Index: libvirt-5.7.0/tools/Makefile.am +Index: libvirt-5.8.0/tools/Makefile.am =================================================================== ---- libvirt-5.7.0.orig/tools/Makefile.am -+++ libvirt-5.7.0/tools/Makefile.am +--- libvirt-5.8.0.orig/tools/Makefile.am ++++ libvirt-5.8.0/tools/Makefile.am @@ -59,6 +59,7 @@ PODFILES = \ virt-sanlock-cleanup.pod \ virt-xml-validate.pod \ @@ -28,10 +28,10 @@ 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-5.7.0/tools/virt-create-rootfs +Index: libvirt-5.8.0/tools/virt-create-rootfs =================================================================== --- /dev/null -+++ libvirt-5.7.0/tools/virt-create-rootfs ++++ libvirt-5.8.0/tools/virt-create-rootfs @@ -0,0 +1,214 @@ +#!/bin/sh +set -e @@ -247,10 +247,10 @@ + echo "pts/0" >> "$ROOT/etc/securetty" + chroot "$ROOT" /usr/bin/passwd +fi -Index: libvirt-5.7.0/tools/virt-create-rootfs.pod +Index: libvirt-5.8.0/tools/virt-create-rootfs.pod =================================================================== --- /dev/null -+++ libvirt-5.7.0/tools/virt-create-rootfs.pod ++++ libvirt-5.8.0/tools/virt-create-rootfs.pod @@ -0,0 +1,77 @@ +=head1 NAME +