Accepting request 919014 from Virtualization
OBS-URL: https://build.opensuse.org/request/show/919014 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=339
This commit is contained in:
commit
867ebdcbe2
@ -23,7 +23,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
||||||
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
@@ -5269,6 +5269,95 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
@@ -5265,6 +5265,95 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
||||||
|
|
||||||
#undef LIBXL_SET_MEMSTAT
|
#undef LIBXL_SET_MEMSTAT
|
||||||
|
|
||||||
@ -119,7 +119,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
static int
|
static int
|
||||||
libxlDomainGetJobInfo(virDomainPtr dom,
|
libxlDomainGetJobInfo(virDomainPtr dom,
|
||||||
virDomainJobInfoPtr info)
|
virDomainJobInfoPtr info)
|
||||||
@@ -6567,6 +6656,7 @@ static virHypervisorDriver libxlHypervis
|
@@ -6563,6 +6652,7 @@ static virHypervisorDriver libxlHypervis
|
||||||
.domainGetNumaParameters = libxlDomainGetNumaParameters, /* 1.1.1 */
|
.domainGetNumaParameters = libxlDomainGetNumaParameters, /* 1.1.1 */
|
||||||
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
|
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
|
||||||
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */
|
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */
|
||||||
|
28
51eb680b-libxl-dont-autostart-on-reload.patch
Normal file
28
51eb680b-libxl-dont-autostart-on-reload.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
commit 51eb680b2647a8c0520ec5da3bb32d711d59f81b
|
||||||
|
Author: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Date: Tue Sep 14 11:11:11 2021 -0600
|
||||||
|
|
||||||
|
libxl: Don't autostart domains on driver reload
|
||||||
|
|
||||||
|
When libxlAutostartDomain was introduced with commit fb92307f0d, one hunk
|
||||||
|
mistakenly added a call site in libxlStateReload. Domains should not be
|
||||||
|
autostarted when reloading the driver, so remove the offending hunk.
|
||||||
|
|
||||||
|
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
||||||
|
|
||||||
|
Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
|
===================================================================
|
||||||
|
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
||||||
|
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
|
@@ -825,10 +825,6 @@ libxlStateReload(void)
|
||||||
|
libxl_driver->xmlopt,
|
||||||
|
NULL, libxl_driver);
|
||||||
|
|
||||||
|
- virDomainObjListForEach(libxl_driver->domains, false,
|
||||||
|
- libxlAutostartDomain,
|
||||||
|
- libxl_driver);
|
||||||
|
-
|
||||||
|
virObjectUnref(cfg);
|
||||||
|
return 0;
|
||||||
|
}
|
32
65fab900-libxl-fix-driver-reload.patch
Normal file
32
65fab900-libxl-fix-driver-reload.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
commit 65fab900c5206700f728de5dec72886832b5328f
|
||||||
|
Author: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Date: Mon Sep 13 16:04:41 2021 -0600
|
||||||
|
|
||||||
|
libxl: Fix driver reload
|
||||||
|
|
||||||
|
On reload, the libxl driver calls virDomainObjListLoadAllConfigs to load
|
||||||
|
all configs from /etc/libvirt/libxl/ but incorrectly passes 'true' for
|
||||||
|
the liveStatus parameter, resulting in error messages such as
|
||||||
|
|
||||||
|
libvirtd[21053]: XML error: unexpected root element <domain>, expecting <domstatus>
|
||||||
|
libvirtd[21053]: Failed to load config for domain 'sles15sp3'
|
||||||
|
|
||||||
|
Fix by not requesting live status when re-reading the persistent VM config
|
||||||
|
files.
|
||||||
|
|
||||||
|
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
|
||||||
|
Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
|
===================================================================
|
||||||
|
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
||||||
|
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
|
@@ -821,7 +821,7 @@ libxlStateReload(void)
|
||||||
|
virDomainObjListLoadAllConfigs(libxl_driver->domains,
|
||||||
|
cfg->configDir,
|
||||||
|
cfg->autostartDir,
|
||||||
|
- true,
|
||||||
|
+ false,
|
||||||
|
libxl_driver->xmlopt,
|
||||||
|
NULL, libxl_driver);
|
||||||
|
|
35
b75a16ae-libxl-improve-die-id.patch
Normal file
35
b75a16ae-libxl-improve-die-id.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
commit b75a16ae5e8d9bc9d1b917e20a6d85db3cbc7b82
|
||||||
|
Author: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Date: Fri Sep 10 14:34:09 2021 -0600
|
||||||
|
|
||||||
|
libxl: Improve reporting of die_id in capabilities
|
||||||
|
|
||||||
|
On Xen, libvirt runs in a VM (typically dom0) and does not have an accurate
|
||||||
|
picture of numa and cpu topology of the underlying physical machine using
|
||||||
|
the "usual" mechanisms. numa info and cpu toplogy are retrieved from libxl
|
||||||
|
and used to populate the libvirt conterparts. Commit 7b79ee2f78b introduced
|
||||||
|
support for reporting die_id in capabilities, but did not account for
|
||||||
|
special handling of numa and cpu topology in libxl.
|
||||||
|
|
||||||
|
Currently, Xen does not report die_id in the libxl_cputopology structure.
|
||||||
|
In the meantime, set die_id to 0, which was suggested by the Xen developers
|
||||||
|
and is slightly better than random garbage such as
|
||||||
|
|
||||||
|
<cpu id='1' socket_id='0' die_id='-1073069552' core_id='0' siblings='0-1'/>
|
||||||
|
|
||||||
|
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
|
||||||
|
Index: libvirt-7.7.0/src/libxl/libxl_capabilities.c
|
||||||
|
===================================================================
|
||||||
|
--- libvirt-7.7.0.orig/src/libxl/libxl_capabilities.c
|
||||||
|
+++ libvirt-7.7.0/src/libxl/libxl_capabilities.c
|
||||||
|
@@ -292,6 +292,8 @@ libxlCapsInitNuma(libxl_ctx *ctx, virCap
|
||||||
|
cpus[node][nr_cpus_node[node]-1].id = i;
|
||||||
|
cpus[node][nr_cpus_node[node]-1].socket_id = cpu_topo[i].socket;
|
||||||
|
cpus[node][nr_cpus_node[node]-1].core_id = cpu_topo[i].core;
|
||||||
|
+ /* Until Xen reports die_id, 0 is better than random garbage */
|
||||||
|
+ cpus[node][nr_cpus_node[node]-1].die_id = 0;
|
||||||
|
/* Allocate the siblings maps. We will be filling them later */
|
||||||
|
cpus[node][nr_cpus_node[node]-1].siblings = virBitmapNew(nr_cpus);
|
||||||
|
}
|
@ -1,3 +1,14 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 14 20:16:34 UTC 2021 - James Fehlig <jfehlig@suse.com>
|
||||||
|
|
||||||
|
- libxl: Improve reporting of die_id in capabilities
|
||||||
|
b75a16ae-libxl-improve-die-id.patch
|
||||||
|
boo#1190493
|
||||||
|
- libxl: Fix driver reload
|
||||||
|
65fab900-libxl-fix-driver-reload.patch,
|
||||||
|
51eb680b-libxl-dont-autostart-on-reload.patch
|
||||||
|
bsc#1190420
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Sep 1 14:21:30 UTC 2021 - James Fehlig <jfehlig@suse.com>
|
Wed Sep 1 14:21:30 UTC 2021 - James Fehlig <jfehlig@suse.com>
|
||||||
|
|
||||||
|
@ -285,6 +285,9 @@ Source6: libvirtd-relocation-server.xml
|
|||||||
Source99: baselibs.conf
|
Source99: baselibs.conf
|
||||||
Source100: %{name}-rpmlintrc
|
Source100: %{name}-rpmlintrc
|
||||||
# Upstream patches
|
# Upstream patches
|
||||||
|
Patch0: b75a16ae-libxl-improve-die-id.patch
|
||||||
|
Patch1: 65fab900-libxl-fix-driver-reload.patch
|
||||||
|
Patch2: 51eb680b-libxl-dont-autostart-on-reload.patch
|
||||||
# Patches pending upstream review
|
# Patches pending upstream review
|
||||||
Patch100: libxl-dom-reset.patch
|
Patch100: libxl-dom-reset.patch
|
||||||
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
|
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
|
||||||
|
@ -12,7 +12,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
||||||
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
@@ -1347,6 +1347,63 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
@@ -1343,6 +1343,63 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -76,7 +76,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
libxlDomainDestroyFlags(virDomainPtr dom,
|
libxlDomainDestroyFlags(virDomainPtr dom,
|
||||||
unsigned int flags)
|
unsigned int flags)
|
||||||
{
|
{
|
||||||
@@ -6445,6 +6502,7 @@ static virHypervisorDriver libxlHypervis
|
@@ -6441,6 +6498,7 @@ static virHypervisorDriver libxlHypervis
|
||||||
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
|
.domainShutdown = libxlDomainShutdown, /* 0.9.0 */
|
||||||
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
|
.domainShutdownFlags = libxlDomainShutdownFlags, /* 0.9.10 */
|
||||||
.domainReboot = libxlDomainReboot, /* 0.9.0 */
|
.domainReboot = libxlDomainReboot, /* 0.9.0 */
|
||||||
|
@ -77,7 +77,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
--- libvirt-7.7.0.orig/src/libxl/libxl_driver.c
|
||||||
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
+++ libvirt-7.7.0/src/libxl/libxl_driver.c
|
||||||
@@ -6009,6 +6009,9 @@ libxlDomainMigratePerform3Params(virDoma
|
@@ -6005,6 +6005,9 @@ libxlDomainMigratePerform3Params(virDoma
|
||||||
const char *dname = NULL;
|
const char *dname = NULL;
|
||||||
const char *uri = NULL;
|
const char *uri = NULL;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
@ -87,7 +87,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
|
|
||||||
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
|
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
|
||||||
virReportUnsupportedError();
|
virReportUnsupportedError();
|
||||||
@@ -6025,6 +6028,15 @@ libxlDomainMigratePerform3Params(virDoma
|
@@ -6021,6 +6024,15 @@ libxlDomainMigratePerform3Params(virDoma
|
||||||
virTypedParamsGetString(params, nparams,
|
virTypedParamsGetString(params, nparams,
|
||||||
VIR_MIGRATE_PARAM_DEST_NAME,
|
VIR_MIGRATE_PARAM_DEST_NAME,
|
||||||
&dname) < 0 ||
|
&dname) < 0 ||
|
||||||
@ -103,7 +103,7 @@ Index: libvirt-7.7.0/src/libxl/libxl_driver.c
|
|||||||
virTypedParamsGetString(params, nparams,
|
virTypedParamsGetString(params, nparams,
|
||||||
VIR_MIGRATE_PARAM_URI,
|
VIR_MIGRATE_PARAM_URI,
|
||||||
&uri) < 0)
|
&uri) < 0)
|
||||||
@@ -6039,11 +6051,11 @@ libxlDomainMigratePerform3Params(virDoma
|
@@ -6035,11 +6047,11 @@ libxlDomainMigratePerform3Params(virDoma
|
||||||
|
|
||||||
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
|
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
|
||||||
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
|
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
|
||||||
|
Loading…
Reference in New Issue
Block a user