Accepting request 959273 from Virtualization
OBS-URL: https://build.opensuse.org/request/show/959273 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=350
This commit is contained in:
commit
32d43e5a5d
@ -18,10 +18,10 @@ them.
|
||||
create mode 100644 src/conf/domain_stats.c
|
||||
create mode 100644 src/conf/domain_stats.h
|
||||
|
||||
Index: libvirt-8.0.0/src/conf/domain_stats.c
|
||||
Index: libvirt-8.1.0/src/conf/domain_stats.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-8.0.0/src/conf/domain_stats.c
|
||||
+++ libvirt-8.1.0/src/conf/domain_stats.c
|
||||
@@ -0,0 +1,117 @@
|
||||
+/*
|
||||
+ * domain_stats.c: domain stats extraction helpers
|
||||
@ -140,10 +140,10 @@ Index: libvirt-8.0.0/src/conf/domain_stats.c
|
||||
+}
|
||||
+
|
||||
+#undef STATS_ADD_NET_PARAM
|
||||
Index: libvirt-8.0.0/src/conf/domain_stats.h
|
||||
Index: libvirt-8.1.0/src/conf/domain_stats.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-8.0.0/src/conf/domain_stats.h
|
||||
+++ libvirt-8.1.0/src/conf/domain_stats.h
|
||||
@@ -0,0 +1,60 @@
|
||||
+/*
|
||||
+ * domain_stats.h: domain stats extraction helpers
|
||||
@ -205,10 +205,10 @@ Index: libvirt-8.0.0/src/conf/domain_stats.h
|
||||
+ virTypedParamList *params);
|
||||
+
|
||||
+#endif /* __DOMAIN_STATS_H */
|
||||
Index: libvirt-8.0.0/src/libvirt_private.syms
|
||||
Index: libvirt-8.1.0/src/libvirt_private.syms
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libvirt_private.syms
|
||||
+++ libvirt-8.0.0/src/libvirt_private.syms
|
||||
--- libvirt-8.1.0.orig/src/libvirt_private.syms
|
||||
+++ libvirt-8.1.0/src/libvirt_private.syms
|
||||
@@ -772,6 +772,11 @@ virDomainConfNWFilterTeardown;
|
||||
virDomainConfVMNWFilterTeardown;
|
||||
|
||||
@ -221,7 +221,7 @@ Index: libvirt-8.0.0/src/libvirt_private.syms
|
||||
# conf/domain_validate.h
|
||||
virDomainActualNetDefValidate;
|
||||
virDomainDefValidate;
|
||||
@@ -1942,6 +1947,7 @@ virCgroupGetMemoryUsage;
|
||||
@@ -1963,6 +1968,7 @@ virCgroupGetMemoryUsage;
|
||||
virCgroupGetMemSwapHardLimit;
|
||||
virCgroupGetMemSwapUsage;
|
||||
virCgroupGetPercpuStats;
|
||||
@ -229,10 +229,10 @@ Index: libvirt-8.0.0/src/libvirt_private.syms
|
||||
virCgroupHasController;
|
||||
virCgroupHasEmptyTasks;
|
||||
virCgroupKillPainfully;
|
||||
Index: libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
Index: libvirt-8.1.0/src/qemu/qemu_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
--- libvirt-8.1.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-8.1.0/src/qemu/qemu_driver.c
|
||||
@@ -68,6 +68,7 @@
|
||||
#include "virarptable.h"
|
||||
#include "viruuid.h"
|
||||
@ -241,7 +241,7 @@ Index: libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
#include "domain_audit.h"
|
||||
#include "domain_cgroup.h"
|
||||
#include "domain_driver.h"
|
||||
@@ -17412,13 +17413,7 @@ qemuDomainGetStatsState(virQEMUDriver *d
|
||||
@@ -17422,13 +17423,7 @@ qemuDomainGetStatsState(virQEMUDriver *d
|
||||
virTypedParamList *params,
|
||||
unsigned int privflags G_GNUC_UNUSED)
|
||||
{
|
||||
@ -256,7 +256,7 @@ Index: libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
}
|
||||
|
||||
|
||||
@@ -17710,25 +17705,11 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
|
||||
@@ -17720,25 +17715,11 @@ qemuDomainGetStatsCpuCgroup(virDomainObj
|
||||
virTypedParamList *params)
|
||||
{
|
||||
qemuDomainObjPrivate *priv = dom->privateData;
|
||||
@ -283,7 +283,7 @@ Index: libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -17921,76 +17902,15 @@ qemuDomainGetStatsVcpu(virQEMUDriver *dr
|
||||
@@ -17931,76 +17912,15 @@ qemuDomainGetStatsVcpu(virQEMUDriver *dr
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -361,10 +361,10 @@ Index: libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
|
||||
/* refresh information by opening images on the disk */
|
||||
static int
|
||||
Index: libvirt-8.0.0/src/util/vircgroup.c
|
||||
Index: libvirt-8.1.0/src/util/vircgroup.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/util/vircgroup.c
|
||||
+++ libvirt-8.0.0/src/util/vircgroup.c
|
||||
--- libvirt-8.1.0.orig/src/util/vircgroup.c
|
||||
+++ libvirt-8.1.0/src/util/vircgroup.c
|
||||
@@ -3022,6 +3022,31 @@ virCgroupGetInode(virCgroup *cgroup)
|
||||
return st.st_ino;
|
||||
}
|
||||
@ -412,10 +412,10 @@ Index: libvirt-8.0.0/src/util/vircgroup.c
|
||||
int
|
||||
virCgroupNewPartition(const char *path G_GNUC_UNUSED,
|
||||
bool create G_GNUC_UNUSED,
|
||||
Index: libvirt-8.0.0/src/util/vircgroup.h
|
||||
Index: libvirt-8.1.0/src/util/vircgroup.h
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/util/vircgroup.h
|
||||
+++ libvirt-8.0.0/src/util/vircgroup.h
|
||||
--- libvirt-8.1.0.orig/src/util/vircgroup.h
|
||||
+++ libvirt-8.1.0/src/util/vircgroup.h
|
||||
@@ -23,6 +23,7 @@
|
||||
|
||||
#include "virbitmap.h"
|
||||
@ -432,10 +432,10 @@ Index: libvirt-8.0.0/src/util/vircgroup.h
|
||||
+ virTypedParamList *params);
|
||||
+
|
||||
int virCgroupGetInode(virCgroup *cgroup);
|
||||
Index: libvirt-8.0.0/src/conf/meson.build
|
||||
Index: libvirt-8.1.0/src/conf/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/conf/meson.build
|
||||
+++ libvirt-8.0.0/src/conf/meson.build
|
||||
--- libvirt-8.1.0.orig/src/conf/meson.build
|
||||
+++ libvirt-8.1.0/src/conf/meson.build
|
||||
@@ -15,6 +15,7 @@ domain_conf_sources = [
|
||||
'domain_conf.c',
|
||||
'domain_nwfilter.c',
|
||||
|
@ -19,10 +19,10 @@ reworking this patch and submitting it to upstream libvirt.
|
||||
src/libxl/libxl_driver.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 91 insertions(+)
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_driver.c
|
||||
@@ -5264,6 +5264,95 @@ libxlDomainMemoryStats(virDomainPtr dom,
|
||||
|
||||
#undef LIBXL_SET_MEMSTAT
|
||||
@ -119,7 +119,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
static int
|
||||
libxlDomainGetJobInfo(virDomainPtr dom,
|
||||
virDomainJobInfoPtr info)
|
||||
@@ -6577,6 +6666,7 @@ static virHypervisorDriver libxlHypervis
|
||||
@@ -6586,6 +6675,7 @@ static virHypervisorDriver libxlHypervis
|
||||
.domainGetNumaParameters = libxlDomainGetNumaParameters, /* 1.1.1 */
|
||||
.nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
|
||||
.nodeGetCellsFreeMemory = libxlNodeGetCellsFreeMemory, /* 1.1.1 */
|
||||
@ -127,10 +127,10 @@ Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
.domainGetJobInfo = libxlDomainGetJobInfo, /* 1.3.1 */
|
||||
.domainGetJobStats = libxlDomainGetJobStats, /* 1.3.1 */
|
||||
.domainMemoryStats = libxlDomainMemoryStats, /* 1.3.0 */
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_api_wrapper.h
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_api_wrapper.h
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_api_wrapper.h
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_api_wrapper.h
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_api_wrapper.h
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_api_wrapper.h
|
||||
@@ -215,3 +215,18 @@ libxlSetMemoryTargetWrapper(libxl_ctx *c
|
||||
|
||||
return ret;
|
||||
|
@ -18,10 +18,10 @@ Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
|
||||
src/util/virpolkit.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
Index: libvirt-8.0.0/src/util/virpolkit.c
|
||||
Index: libvirt-8.1.0/src/util/virpolkit.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/util/virpolkit.c
|
||||
+++ libvirt-8.0.0/src/util/virpolkit.c
|
||||
--- libvirt-8.1.0.orig/src/util/virpolkit.c
|
||||
+++ libvirt-8.1.0/src/util/virpolkit.c
|
||||
@@ -237,6 +237,9 @@ virPolkitAgentAvailable(void)
|
||||
const char *termid = ctermid(NULL);
|
||||
VIR_AUTOCLOSE fd = -1;
|
||||
|
@ -9,10 +9,10 @@ them using the existing API.
|
||||
src/lxc/lxc_driver.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 138 insertions(+)
|
||||
|
||||
Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
Index: libvirt-8.1.0/src/lxc/lxc_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
--- libvirt-8.1.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-8.1.0/src/lxc/lxc_driver.c
|
||||
@@ -74,6 +74,8 @@
|
||||
#include "netdev_bandwidth_conf.h"
|
||||
#include "virsocket.h"
|
||||
@ -22,7 +22,7 @@ Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
|
||||
#define VIR_FROM_THIS VIR_FROM_LXC
|
||||
|
||||
@@ -5036,6 +5038,128 @@ lxcDomainHasManagedSaveImage(virDomainPt
|
||||
@@ -5039,6 +5041,128 @@ lxcDomainHasManagedSaveImage(virDomainPt
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -151,7 +151,7 @@ Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
|
||||
/* Function Tables */
|
||||
static virHypervisorDriver lxcHypervisorDriver = {
|
||||
@@ -5133,6 +5257,7 @@ static virHypervisorDriver lxcHypervisor
|
||||
@@ -5136,6 +5260,7 @@ static virHypervisorDriver lxcHypervisor
|
||||
.nodeGetFreePages = lxcNodeGetFreePages, /* 1.2.6 */
|
||||
.nodeAllocPages = lxcNodeAllocPages, /* 1.2.9 */
|
||||
.domainHasManagedSaveImage = lxcDomainHasManagedSaveImage, /* 1.2.13 */
|
||||
|
@ -1,92 +0,0 @@
|
||||
commit 105dace22cc7b5b18d72a4dcad4a2cf386ce5c99
|
||||
Author: Michal Prívozník <mprivozn@redhat.com>
|
||||
Date: Tue Jan 18 12:40:09 2022 +0100
|
||||
|
||||
Revert "report error when virProcessGetStatInfo() is unable to parse data"
|
||||
|
||||
This reverts commit 938382b60ae5bd1f83b5cb09e1ce68b9a88f679a.
|
||||
|
||||
Turns out, the commit did more harm than good. It changed
|
||||
semantics on some public APIs. For instance, while
|
||||
qemuDomainGetInfo() previously did not returned an error it does
|
||||
now. While the calls to virProcessGetStatInfo() is guarded with
|
||||
virDomainObjIsActive() it doesn't necessarily mean that QEMU's
|
||||
PID is still alive. QEMU might be gone but we just haven't
|
||||
realized it (e.g. because the eof handler thread is waiting for a
|
||||
job).
|
||||
|
||||
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2041610
|
||||
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/src/ch/ch_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/ch/ch_driver.c
|
||||
+++ libvirt-8.0.0/src/ch/ch_driver.c
|
||||
@@ -1073,6 +1073,8 @@ chDomainHelperGetVcpus(virDomainObj *vm,
|
||||
if (virProcessGetStatInfo(&vcpuinfo->cpuTime,
|
||||
&vcpuinfo->cpu, NULL,
|
||||
vm->pid, vcpupid) < 0) {
|
||||
+ virReportSystemError(errno, "%s",
|
||||
+ _("cannot get vCPU placement & pCPU time"));
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
Index: libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-8.0.0/src/qemu/qemu_driver.c
|
||||
@@ -1359,6 +1359,8 @@ qemuDomainHelperGetVcpus(virDomainObj *v
|
||||
if (virProcessGetStatInfo(&vcpuinfo->cpuTime,
|
||||
&vcpuinfo->cpu, NULL,
|
||||
vm->pid, vcpupid) < 0) {
|
||||
+ virReportSystemError(errno, "%s",
|
||||
+ _("cannot get vCPU placement & pCPU time"));
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
@@ -2519,6 +2521,8 @@ qemuDomainGetInfo(virDomainPtr dom,
|
||||
if (virDomainObjIsActive(vm)) {
|
||||
if (virProcessGetStatInfo(&(info->cpuTime), NULL, NULL,
|
||||
vm->pid, 0) < 0) {
|
||||
+ virReportError(VIR_ERR_OPERATION_FAILED, "%s",
|
||||
+ _("cannot read cputime for domain"));
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
@@ -10526,7 +10530,8 @@ qemuDomainMemoryStatsInternal(virQEMUDri
|
||||
}
|
||||
|
||||
if (virProcessGetStatInfo(NULL, NULL, &rss, vm->pid, 0) < 0) {
|
||||
- virResetLastError();
|
||||
+ virReportError(VIR_ERR_OPERATION_FAILED, "%s",
|
||||
+ _("cannot get RSS for domain"));
|
||||
} else {
|
||||
stats[ret].tag = VIR_DOMAIN_MEMORY_STAT_RSS;
|
||||
stats[ret].val = rss;
|
||||
Index: libvirt-8.0.0/src/util/virprocess.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/util/virprocess.c
|
||||
+++ libvirt-8.0.0/src/util/virprocess.c
|
||||
@@ -1784,10 +1784,7 @@ virProcessGetStatInfo(unsigned long long
|
||||
virStrToLong_ullp(proc_stat[VIR_PROCESS_STAT_STIME], NULL, 10, &systime) < 0 ||
|
||||
virStrToLong_l(proc_stat[VIR_PROCESS_STAT_RSS], NULL, 10, &rss) < 0 ||
|
||||
virStrToLong_i(proc_stat[VIR_PROCESS_STAT_PROCESSOR], NULL, 10, &cpu) < 0) {
|
||||
- virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||
- _("cannot parse process status data for pid '%d/%d'"),
|
||||
- (int) pid, (int) tid);
|
||||
- return -1;
|
||||
+ VIR_WARN("cannot parse process status data");
|
||||
}
|
||||
|
||||
/* We got jiffies
|
||||
@@ -1884,8 +1881,7 @@ virProcessGetStatInfo(unsigned long long
|
||||
pid_t pid G_GNUC_UNUSED,
|
||||
pid_t tid G_GNUC_UNUSED)
|
||||
{
|
||||
- virReportSystemError(ENOSYS, "%s",
|
||||
- _("Process statistics data is not supported on this platform"));
|
||||
+ errno = ENOSYS;
|
||||
return -1;
|
||||
}
|
||||
|
@ -1,214 +0,0 @@
|
||||
commit 161727417a91bdddf8f3167cf70c3de2829be81c
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Fri Jan 7 14:35:10 2022 -0700
|
||||
|
||||
docs: Add man page for libvirt-guests
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/docs/manpages/index.rst
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/docs/manpages/index.rst
|
||||
+++ libvirt-8.0.0/docs/manpages/index.rst
|
||||
@@ -41,6 +41,7 @@ Tools
|
||||
* `virt-admin(1) <virt-admin.html>`__ - daemon administration interface
|
||||
* `virsh(1) <virsh.html>`__ - management user interface
|
||||
* `virt-qemu-run(1) <virt-qemu-run.html>`__ - run standalone QEMU instances
|
||||
+* `libvirt-guests(8) <libvirt-guests.html>`__ - suspend/resume running libvirt guests
|
||||
|
||||
Key codes
|
||||
=========
|
||||
Index: libvirt-8.0.0/docs/manpages/libvirt-guests.rst
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-8.0.0/docs/manpages/libvirt-guests.rst
|
||||
@@ -0,0 +1,151 @@
|
||||
+==============
|
||||
+libvirt-guests
|
||||
+==============
|
||||
+
|
||||
+-------------------------------------
|
||||
+suspend/resume running libvirt guests
|
||||
+-------------------------------------
|
||||
+
|
||||
+:Manual section: 8
|
||||
+:Manual group: Virtualization Support
|
||||
+
|
||||
+.. contents::
|
||||
+
|
||||
+SYNOPSIS
|
||||
+========
|
||||
+
|
||||
+``libvirt-guests`` *COMMAND*
|
||||
+
|
||||
+
|
||||
+DESCRIPTION
|
||||
+===========
|
||||
+
|
||||
+``libvirt-guests`` is a service that can be used to coordinate guest and host
|
||||
+lifecyle actions. By default, ``libvirt-guests`` will suspend running guests
|
||||
+when the host shuts down, and restore them to their pre-shutdown state when
|
||||
+the host reboots.
|
||||
+
|
||||
+``libvirt-guests`` is typically under control of systemd. When
|
||||
+``libvirt-guests.service`` is enabled, systemd will call ``libvirt-guests``
|
||||
+with the ``start`` *COMMAND* when the host boots. Conversely, systemd will call
|
||||
+``libvirt-guests`` with the ``stop`` *COMMAND* when the host shuts down.
|
||||
+
|
||||
+``libvirt-guests`` can be used directly. In addition to the ``start`` and
|
||||
+``stop`` *COMMAND*\s, it also supports ``status``, ``restart``, ``condrestart``,
|
||||
+``try-restart``, ``reload``, ``force-reload``, ``gueststatus``, and
|
||||
+``shutdown`` *COMMAND*\s.
|
||||
+
|
||||
+
|
||||
+FILES
|
||||
+=====
|
||||
+
|
||||
+``libvirt-guests`` defines several variables to control service behavior.
|
||||
+The default vaule of these variables can be overridden in:
|
||||
+
|
||||
+* ``@SYSCONFDIR@/sysconfig/libvirt-guests``
|
||||
+
|
||||
+The following variables are supported:
|
||||
+
|
||||
+- URIS=default
|
||||
+
|
||||
+ URIs to check for running guests. Example:
|
||||
+ ``URIS='default xen:///system xen+tcp://host/system lxc:///system'``
|
||||
+
|
||||
+- ON_BOOT=start
|
||||
+
|
||||
+ Action taken on host boot
|
||||
+
|
||||
+ * start
|
||||
+
|
||||
+ All guests which were running on shutdown are started on boot regardless
|
||||
+ of their autostart settings
|
||||
+
|
||||
+ * ignore
|
||||
+
|
||||
+ ``libvirt-guests`` won't start any guest on boot, however, guests marked
|
||||
+ as autostart will still be automatically started by libvirtd
|
||||
+
|
||||
+- START_DELAY=0
|
||||
+
|
||||
+ Number of seconds to wait between each guest start. Set to 0 to allow parallel
|
||||
+ startup.
|
||||
+
|
||||
+- ON_SHUTDOWN=suspend
|
||||
+
|
||||
+ Action taken on host shutdown
|
||||
+
|
||||
+ * suspend
|
||||
+
|
||||
+ All running guests are suspended using virsh managedsave
|
||||
+
|
||||
+ * shutdown
|
||||
+
|
||||
+ All running guests are asked to shutdown. Please be careful with this
|
||||
+ settings since there is no way to distinguish between a guest which is
|
||||
+ stuck or ignores shutdown requests and a guest which just needs a long
|
||||
+ time to shutdown. When setting ON_SHUTDOWN=shutdown, you must also set
|
||||
+ SHUTDOWN_TIMEOUT to a value suitable for your guests.
|
||||
+
|
||||
+- PARALLEL_SHUTDOWN=0
|
||||
+
|
||||
+ Number of guests will be shutdown concurrently, taking effect when
|
||||
+ "ON_SHUTDOWN" is set to "shutdown". If Set to 0, guests will be shutdown one
|
||||
+ after another. Number of guests on shutdown at any time will not exceed number
|
||||
+ set in this variable.
|
||||
+
|
||||
+- SHUTDOWN_TIMEOUT=300
|
||||
+
|
||||
+ Number of seconds we're willing to wait for a guest to shut down. If parallel
|
||||
+ shutdown is enabled, this timeout applies as a timeout for shutting down all
|
||||
+ guests on a single URI defined in the variable URIS. If this is 0, then there
|
||||
+ is no time out (use with caution, as guests might not respond to a shutdown
|
||||
+ request). The default value is 300 seconds (5 minutes).
|
||||
+
|
||||
+- BYPASS_CACHE=0
|
||||
+
|
||||
+ If non-zero, try to bypass the file system cache when saving and
|
||||
+ restoring guests, even though this may give slower operation for
|
||||
+ some file systems.
|
||||
+
|
||||
+- SYNC_TIME=0
|
||||
+
|
||||
+ If non-zero, try to sync guest time on domain resume. Be aware, that
|
||||
+ this requires guest agent with support for time synchronization
|
||||
+ running in the guest. By default, this functionality is turned off.
|
||||
+
|
||||
+
|
||||
+BUGS
|
||||
+====
|
||||
+
|
||||
+Please report all bugs you discover. This should be done via either:
|
||||
+
|
||||
+#. the mailing list
|
||||
+
|
||||
+ `https://libvirt.org/contact.html <https://libvirt.org/contact.html>`_
|
||||
+
|
||||
+#. the bug tracker
|
||||
+
|
||||
+ `https://libvirt.org/bugs.html <https://libvirt.org/bugs.html>`_
|
||||
+
|
||||
+Alternatively, you may report bugs to your software distributor / vendor.
|
||||
+
|
||||
+
|
||||
+AUTHORS
|
||||
+=======
|
||||
+
|
||||
+Please refer to the AUTHORS file distributed with libvirt.
|
||||
+
|
||||
+
|
||||
+LICENSE
|
||||
+=======
|
||||
+
|
||||
+``libvirt-guests`` is distributed under the terms of the GNU LGPL v2.1+.
|
||||
+This is free software; see the source for copying conditions. There
|
||||
+is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
+PURPOSE
|
||||
+
|
||||
+
|
||||
+SEE ALSO
|
||||
+========
|
||||
+
|
||||
+libvirtd(8), `https://libvirt.org/ <https://libvirt.org/>`_
|
||||
Index: libvirt-8.0.0/docs/manpages/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/docs/manpages/meson.build
|
||||
+++ libvirt-8.0.0/docs/manpages/meson.build
|
||||
@@ -21,6 +21,7 @@ docs_man_files = [
|
||||
{ 'name': 'virt-qemu-run', 'section': '1', 'install': conf.has('WITH_QEMU') },
|
||||
{ 'name': 'virt-xml-validate', 'section': '1', 'install': true },
|
||||
|
||||
+ { 'name': 'libvirt-guests', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
||||
{ 'name': 'libvirtd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
||||
{ 'name': 'virt-sanlock-cleanup', 'section': '8', 'install': conf.has('WITH_SANLOCK') },
|
||||
{ 'name': 'virt-ssh-helper', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
||||
Index: libvirt-8.0.0/libvirt.spec.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/libvirt.spec.in
|
||||
+++ libvirt-8.0.0/libvirt.spec.in
|
||||
@@ -1694,6 +1694,7 @@ exit 0
|
||||
%{_mandir}/man1/virt-admin.1*
|
||||
%{_mandir}/man1/virt-host-validate.1*
|
||||
%{_mandir}/man8/virt-ssh-helper.8*
|
||||
+%{_mandir}/man8/libvirt-guests.8*
|
||||
%{_mandir}/man8/libvirtd.8*
|
||||
%{_mandir}/man8/virtlogd.8*
|
||||
%{_mandir}/man8/virtlockd.8*
|
||||
Index: libvirt-8.0.0/tools/libvirt-guests.service.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tools/libvirt-guests.service.in
|
||||
+++ libvirt-8.0.0/tools/libvirt-guests.service.in
|
||||
@@ -6,7 +6,7 @@ After=network.target
|
||||
After=time-sync.target
|
||||
After=libvirtd.service
|
||||
After=virt-guest-shutdown.target
|
||||
-Documentation=man:libvirtd(8)
|
||||
+Documentation=man:libvirt-guests(8)
|
||||
Documentation=https://libvirt.org
|
||||
|
||||
[Service]
|
@ -1,69 +0,0 @@
|
||||
commit 18ec405a36e24c86abe1104699c0bffdc91d5169
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Mon Feb 7 13:57:07 2022 -0700
|
||||
|
||||
libxl: Release auto-allocated spice ports
|
||||
|
||||
While VNC ports auto-allocated by the libxl driver are released in
|
||||
libxlDomainCleanup, spice ports are overlooked. Rework the existing
|
||||
logic to release any auto-allocated graphics ports, not just the VNC
|
||||
port of the first graphics device.
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_domain.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_domain.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_domain.c
|
||||
@@ -906,10 +906,10 @@ libxlDomainCleanup(libxlDriverPrivate *d
|
||||
{
|
||||
libxlDomainObjPrivate *priv = vm->privateData;
|
||||
g_autoptr(libxlDriverConfig) cfg = libxlDriverConfigGet(driver);
|
||||
- int vnc_port;
|
||||
char *file;
|
||||
virHostdevManager *hostdev_mgr = driver->hostdevMgr;
|
||||
unsigned int hostdev_flags = VIR_HOSTDEV_SP_PCI;
|
||||
+ size_t i;
|
||||
|
||||
VIR_DEBUG("Cleaning up domain with id '%d' and name '%s'",
|
||||
vm->def->id, vm->def->name);
|
||||
@@ -944,13 +944,31 @@ libxlDomainCleanup(libxlDriverPrivate *d
|
||||
if (!!g_atomic_int_dec_and_test(&driver->nactive) && driver->inhibitCallback)
|
||||
driver->inhibitCallback(false, driver->inhibitOpaque);
|
||||
|
||||
- if ((vm->def->ngraphics == 1) &&
|
||||
- vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
|
||||
- vm->def->graphics[0]->data.vnc.autoport) {
|
||||
- vnc_port = vm->def->graphics[0]->data.vnc.port;
|
||||
- if (vnc_port >= LIBXL_VNC_PORT_MIN) {
|
||||
- if (virPortAllocatorRelease(vnc_port) < 0)
|
||||
- VIR_DEBUG("Could not mark port %d as unused", vnc_port);
|
||||
+ /* Release auto-allocated graphics ports */
|
||||
+ for (i = 0; i < vm->def->ngraphics; i++) {
|
||||
+ virDomainGraphicsDef *graphics = vm->def->graphics[i];
|
||||
+ int gport = -1;
|
||||
+
|
||||
+ switch (graphics->type) {
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_VNC:
|
||||
+ if (graphics->data.vnc.autoport &&
|
||||
+ graphics->data.vnc.port >= LIBXL_VNC_PORT_MIN)
|
||||
+ gport = graphics->data.vnc.port;
|
||||
+ break;
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_SPICE:
|
||||
+ if (graphics->data.spice.autoport)
|
||||
+ gport = graphics->data.spice.port;
|
||||
+ break;
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_SDL:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_RDP:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_LAST:
|
||||
+ break;
|
||||
+ }
|
||||
+ if (gport != -1) {
|
||||
+ if (virPortAllocatorRelease(gport) < 0)
|
||||
+ VIR_DEBUG("Could not mark port %d as unused", gport);
|
||||
}
|
||||
}
|
||||
|
@ -1,42 +0,0 @@
|
||||
commit 31e937fb3b7d0aa040a879394eff700bc1108251
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Mon Jan 24 12:03:20 2022 -0700
|
||||
|
||||
libxl: Add lock process indicator to saved VM state
|
||||
|
||||
Commit fa58f571ee added a lock processes indicator to the
|
||||
libxlDomainObjPrivate struct to note that a lock process was
|
||||
successfully started for the VM. However, the commit neglected to
|
||||
add the indicator to the VM's saved state file. As a result, the
|
||||
indicator is lost on libvirtd restart, along with the knowledge of
|
||||
whether a lock process was started for the VM.
|
||||
|
||||
This change adds support for the indicator in the domainObjPrivate
|
||||
data parse and format callbacks, ensuring its value survives libvirtd
|
||||
restarts.
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_domain.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_domain.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_domain.c
|
||||
@@ -226,6 +226,7 @@ libxlDomainObjPrivateXMLParse(xmlXPathCo
|
||||
libxlDomainObjPrivate *priv = vm->privateData;
|
||||
|
||||
priv->lockState = virXPathString("string(./lockstate)", ctxt);
|
||||
+ priv->lockProcessRunning = virXPathBoolean("boolean(./lockProcessRunning)", ctxt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -239,6 +240,9 @@ libxlDomainObjPrivateXMLFormat(virBuffer
|
||||
if (priv->lockState)
|
||||
virBufferAsprintf(buf, "<lockstate>%s</lockstate>\n", priv->lockState);
|
||||
|
||||
+ if (priv->lockProcessRunning)
|
||||
+ virBufferAddLit(buf, "<lockProcessRunning/>\n");
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
@ -1,66 +0,0 @@
|
||||
commit 3be5ba11a2c6fcb2dfdffa03ab4f847113f36b85
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Mon Jan 10 11:42:58 2022 -0700
|
||||
|
||||
build: Only install libvirt-guests when building libvirtd
|
||||
|
||||
libvirt-guests was already moved to the libvirt daemon package in commit
|
||||
d800c50349. It only needs to be installed when building libvirtd.
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/tools/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tools/meson.build
|
||||
+++ libvirt-8.0.0/tools/meson.build
|
||||
@@ -297,29 +297,31 @@ if conf.has('WITH_SANLOCK')
|
||||
)
|
||||
endif
|
||||
|
||||
-configure_file(
|
||||
- input: 'libvirt-guests.sh.in',
|
||||
- output: '@BASENAME@',
|
||||
- configuration: tools_conf,
|
||||
- install: true,
|
||||
- install_dir: libexecdir,
|
||||
- install_mode: 'rwxrwxr-x',
|
||||
-)
|
||||
-
|
||||
-if init_script == 'systemd'
|
||||
- install_data(
|
||||
- 'libvirt-guests.sysconf',
|
||||
- install_dir: sysconfdir / 'sysconfig',
|
||||
- rename: 'libvirt-guests',
|
||||
- )
|
||||
-
|
||||
+if conf.has('WITH_LIBVIRTD')
|
||||
configure_file(
|
||||
- input: 'libvirt-guests.service.in',
|
||||
+ input: 'libvirt-guests.sh.in',
|
||||
output: '@BASENAME@',
|
||||
configuration: tools_conf,
|
||||
install: true,
|
||||
- install_dir: prefix / 'lib' / 'systemd' / 'system',
|
||||
+ install_dir: libexecdir,
|
||||
+ install_mode: 'rwxrwxr-x',
|
||||
)
|
||||
+
|
||||
+ if init_script == 'systemd'
|
||||
+ install_data(
|
||||
+ 'libvirt-guests.sysconf',
|
||||
+ install_dir: sysconfdir / 'sysconfig',
|
||||
+ rename: 'libvirt-guests',
|
||||
+ )
|
||||
+
|
||||
+ configure_file(
|
||||
+ input: 'libvirt-guests.service.in',
|
||||
+ output: '@BASENAME@',
|
||||
+ configuration: tools_conf,
|
||||
+ install: true,
|
||||
+ install_dir: prefix / 'lib' / 'systemd' / 'system',
|
||||
+ )
|
||||
+ endif
|
||||
endif
|
||||
|
||||
if bash_completion_dep.found()
|
@ -1,27 +0,0 @@
|
||||
commit 454b927d1e33a1fe9dca535db2c97300fdae62cc
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Thu Feb 17 11:48:13 2022 -0700
|
||||
|
||||
libxl: Fix libvirtd crash on domain restore
|
||||
|
||||
Commit cc2a3c2a94 missed one case in the libxl driver where virDomainDef
|
||||
is returned from libxlDomainSaveImageOpen and a g_steal_pointer is needed.
|
||||
Without it, the virDomainDef object is freed and the driver crashes later
|
||||
in the restore process when accessing the object.
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_domain.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_domain.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_domain.c
|
||||
@@ -811,7 +811,7 @@ libxlDomainSaveImageOpen(libxlDriverPriv
|
||||
VIR_DOMAIN_DEF_PARSE_SKIP_VALIDATE)))
|
||||
goto error;
|
||||
|
||||
- *ret_def = def;
|
||||
+ *ret_def = g_steal_pointer(&def);
|
||||
*ret_hdr = hdr;
|
||||
|
||||
return fd;
|
@ -1,30 +0,0 @@
|
||||
commit 76deb656132bb8817ddae4b7f417930c4db824c9
|
||||
Author: Ján Tomko <jtomko@redhat.com>
|
||||
Date: Thu Jan 20 14:53:33 2022 +0100
|
||||
|
||||
qemu: fix inactive snapshot revert
|
||||
|
||||
The commit splitting out the qemuSnapshotRevertInactive function
|
||||
dropped the 'defined = true' line by accident and instead
|
||||
returned -1, leaving the user with a cryptic error:
|
||||
error: An error occurred, but the cause is unknown
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=2039136
|
||||
https://gitlab.com/libvirt/libvirt/-/issues/266
|
||||
|
||||
Fixes: 85e4a13c3f19078fb6af5ffb4a80022c142cbc7e
|
||||
Signed-off-by: Ján Tomko <jtomko@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/src/qemu/qemu_snapshot.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu_snapshot.c
|
||||
+++ libvirt-8.0.0/src/qemu/qemu_snapshot.c
|
||||
@@ -2193,7 +2193,7 @@ qemuSnapshotRevertInactive(virDomainObj
|
||||
|
||||
if (*inactiveConfig) {
|
||||
virDomainObjAssignDef(vm, inactiveConfig, false, NULL);
|
||||
- return -1;
|
||||
+ defined = true;
|
||||
}
|
||||
|
||||
if (flags & (VIR_DOMAIN_SNAPSHOT_REVERT_RUNNING |
|
42
823a62ec-qemu-fix-undefine-crash.patch
Normal file
42
823a62ec-qemu-fix-undefine-crash.patch
Normal file
@ -0,0 +1,42 @@
|
||||
commit 823a62ec8aac4fb75e6e281164f3eb56ae47597c
|
||||
Author: Boris Fiuczynski <fiuczy@linux.ibm.com>
|
||||
Date: Tue Mar 1 18:47:59 2022 +0100
|
||||
|
||||
qemu: segmentation fault in virtqemud executing qemuDomainUndefineFlags
|
||||
|
||||
Commit 5adfb3472342741c443ac91dee0abb18b5a3d038 causes a segmentation fault.
|
||||
|
||||
Stack trace of thread 664419:
|
||||
#0 0x000003ff62ec553c in qemuDomainUndefineFlags (dom=0x3ff6c002810, flags=<optimized out>) at ../src/qemu/qemu_driver.c:6618
|
||||
#1 0x000003ff876a7e5c in virDomainUndefineFlags (domain=domain@entry=0x3ff6c002810, flags=<optimized out>) at ../src/libvirt-domain.c:6519
|
||||
#2 0x000002aa2b64a808 in remoteDispatchDomainUndefineFlags (server=0x2aa2c3d7880, msg=0x2aa2c3d2770, args=<optimized out>, rerr=0x3ff8287b950, client=<optimized out>)
|
||||
at src/remote/remote_daemon_dispatch_stubs.h:13080
|
||||
#3 remoteDispatchDomainUndefineFlagsHelper (server=0x2aa2c3d7880, client=<optimized out>, msg=0x2aa2c3d2770, rerr=0x3ff8287b950, args=<optimized out>, ret=0x0)
|
||||
at src/remote/remote_daemon_dispatch_stubs.h:13059
|
||||
#4 0x000003ff8758bbf4 in virNetServerProgramDispatchCall (msg=0x2aa2c3d2770, client=0x2aa2c3e3050, server=0x2aa2c3d7880, prog=0x2aa2c3d8010)
|
||||
at ../src/rpc/virnetserverprogram.c:428
|
||||
#5 virNetServerProgramDispatch (prog=0x2aa2c3d8010, server=server@entry=0x2aa2c3d7880, client=0x2aa2c3e3050, msg=0x2aa2c3d2770) at ../src/rpc/virnetserverprogram.c:302
|
||||
#6 0x000003ff8758c260 in virNetServerProcessMsg (msg=<optimized out>, prog=<optimized out>, client=<optimized out>, srv=0x2aa2c3d7880) at ../src/rpc/virnetserver.c:140
|
||||
#7 virNetServerHandleJob (jobOpaque=0x2aa2c3e2d30, opaque=0x2aa2c3d7880) at ../src/rpc/virnetserver.c:160
|
||||
#8 0x000003ff874c49aa in virThreadPoolWorker (opaque=<optimized out>) at ../src/util/virthreadpool.c:164
|
||||
#9 0x000003ff874c3f62 in virThreadHelper (data=<optimized out>) at ../src/util/virthread.c:256
|
||||
#10 0x000003ff86c1cf8c in start_thread () from /lib64/libc.so.6
|
||||
#11 0x000003ff86c9650e in thread_start () from /lib64/libc.so.6
|
||||
|
||||
Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
|
||||
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
|
||||
Index: libvirt-8.1.0/src/qemu/qemu_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.1.0.orig/src/qemu/qemu_driver.c
|
||||
+++ libvirt-8.1.0/src/qemu/qemu_driver.c
|
||||
@@ -6615,7 +6615,7 @@ qemuDomainUndefineFlags(virDomainPtr dom
|
||||
}
|
||||
}
|
||||
|
||||
- if (vm->def->os.loader->nvram) {
|
||||
+ if (vm->def->os.loader && vm->def->os.loader->nvram) {
|
||||
nvram_path = g_strdup(vm->def->os.loader->nvram);
|
||||
} else if (vm->def->os.firmware == VIR_DOMAIN_OS_DEF_FIRMWARE_EFI) {
|
||||
qemuDomainNVRAMPathFormat(cfg, vm->def, &nvram_path);
|
File diff suppressed because it is too large
Load Diff
@ -1,60 +0,0 @@
|
||||
commit e0241f334d4e8da2e36cda48c225d5a6edcc3a50
|
||||
Author: Jim Fehlig <jfehlig@suse.com>
|
||||
Date: Tue Feb 1 17:03:11 2022 -0700
|
||||
|
||||
libxl: Set auto-allocated graphics ports to used on reconnect
|
||||
|
||||
The libxl driver reconnects to all running VMs when libvirtd is restarted,
|
||||
but it failed to mark auto-allocated graphics ports as set in the port
|
||||
allocator. If many VMs are running that use port auto-allocation and
|
||||
libvirtd is restarted, the port allocator is likely to hand out a port
|
||||
already in use when a new VM is created that uses auto-allocation. VM
|
||||
creation will fail due to the port clash.
|
||||
|
||||
When reconnecting to running VMs after a libvirtd restart, let the port
|
||||
allocator know about previously allocated ports.
|
||||
|
||||
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
|
||||
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
@@ -393,6 +393,7 @@ libxlReconnectDomain(virDomainObj *vm,
|
||||
virHostdevManager *hostdev_mgr = driver->hostdevMgr;
|
||||
unsigned int hostdev_flags = VIR_HOSTDEV_SP_PCI;
|
||||
int ret = -1;
|
||||
+ size_t i;
|
||||
|
||||
hostdev_flags |= VIR_HOSTDEV_SP_USB;
|
||||
|
||||
@@ -447,6 +448,28 @@ libxlReconnectDomain(virDomainObj *vm,
|
||||
|
||||
libxlReconnectNotifyNets(vm->def);
|
||||
|
||||
+ /* Set any auto-allocated graphics ports to used */
|
||||
+ for (i = 0; i < vm->def->ngraphics; i++) {
|
||||
+ virDomainGraphicsDef *graphics = vm->def->graphics[i];
|
||||
+
|
||||
+ switch (graphics->type) {
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_VNC:
|
||||
+ if (graphics->data.vnc.autoport)
|
||||
+ virPortAllocatorSetUsed(graphics->data.vnc.port);
|
||||
+ break;
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_SPICE:
|
||||
+ if (graphics->data.spice.autoport)
|
||||
+ virPortAllocatorSetUsed(graphics->data.spice.port);
|
||||
+ break;
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_SDL:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_RDP:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_DESKTOP:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS:
|
||||
+ case VIR_DOMAIN_GRAPHICS_TYPE_LAST:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
if (virDomainObjSave(vm, driver->xmlopt, cfg->stateDir) < 0)
|
||||
VIR_WARN("Cannot update XML for running Xen guest %s", vm->def->name);
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:51e6e8ff04bafe96d7e314b213dcd41fb1163d9b4f0f75cdab01e663728f4cf6
|
||||
size 8860124
|
@ -1,16 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCAAdFiEERTtlMQWVVihVRxGZymi+gBAITJwFAmHhhg0ACgkQymi+gBAI
|
||||
TJyHTA/9F7mEVTE7lu/5Jtk738golxj2/75H+vurBFZM5gIDPHBlNPH7RLPHtxNw
|
||||
nS4rtWR0ThajITQ+3lP2ttjLE6jvsMpIhKIizHqoyVEcW/LlR55RxGfR6K+0+lrh
|
||||
CE7ycJujl0CVvkfjt7fFp1IkVD6mtxOciVwjRg5VtHBdNnmh6HWJQV+D9MfDhod5
|
||||
3ayzq3y3NZDfgWtOt4ZbTyhKh22VgTdIue0iHI+eRPI9xdp67bRjDh+rvjJ3SEGc
|
||||
inEXaa1aj4O/VPcrsyjwBdg+O52YLZN/KG3cpZ/kmbQdFNiYOti8APM9t9NShNf7
|
||||
4egKeQthG90S3d2mFsyuVoIN7xk26NyMC3fgwKZeTEaMPbG1P+Y2f1k/efzVVqL0
|
||||
q6tCY74oQXbQ6XF/hANaM/HRvQnlt2JjWiTZ6DJ/+U0jW9MAEwzt/WRqrZfhT8i4
|
||||
gtemB/sYoZo1BTjZuW5e+pNRmaxyxZkzGUFwIJz+q86mvxi8IDWCGy9NOuypHUWQ
|
||||
iavGE8vULDgZczd1fWMrmjWzDXe49L1b0mLqLOFdNpjbWxSnF3Bj7AR8GjTM0Bsu
|
||||
5JpQ1Tjgz6IiW2DnL3EMZ4pKGMXiTgcqL/lYJH4a8yNJ4sV2+coVGijhhfQ2JW+O
|
||||
x0ymOq77z/VyMI+ZffMeV00tiQF3TYZnwvaqU3e9TnVxmr3Ghx8=
|
||||
=6QUv
|
||||
-----END PGP SIGNATURE-----
|
3
libvirt-8.1.0.tar.xz
Normal file
3
libvirt-8.1.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3c6c43becffeb34a3f397c616206aa69a893ff8bf5e8208393c84e8e75352934
|
||||
size 8881608
|
16
libvirt-8.1.0.tar.xz.asc
Normal file
16
libvirt-8.1.0.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCAAdFiEERTtlMQWVVihVRxGZymi+gBAITJwFAmId5HcACgkQymi+gBAI
|
||||
TJyDjw//Z6xV7+IFYQBsWqYNztVyxbIUtLHkWBy43N8O32S552d0qiHxjinSWcQf
|
||||
1rgWPeC4Gs7WDHThUnuSw1BPSXNYkMo9gLJqZsnl0dkP0dw6fBhyKV7X18AV9fPg
|
||||
q8cmMy1gN9k70nbkJID234ysNJQWfCYtCHBJydgvlFZ4awupk61vnhM4bBxTpVcY
|
||||
nUK4lPhObGXMtO0J6hB0DJJq0JpMs6Pr4e89b+dxh8YYdexroedAD4+WeVBoSmb/
|
||||
bMZlsJNGDhu6ixmGKqY+ZyQ+zldiiontejREHVpA9brp3ERc1durkV33XnE/hVYb
|
||||
yDQIrnyz6ldlqBdGRjCfq+yBNJEMITvp6uqRPF19N0DS7RkvnJQVjulMY55y4Oic
|
||||
7ozv03Dp0yQBLznxO7nowG1Z+zIdyG6cPh8+FIadTlU5IFxqa2wjYC9oKrwTEtCm
|
||||
coU0qWVglObdOsyo9uauIlhPqNdcei8lEbVwgWR53MLVKwqcheGq3TJH74Uw/QM4
|
||||
xjDhCWAyE1duS4iK5GB3AxO7kl+RPkPXZ9erFjBVemofuSsPFdSZx6mQJrp/GrDX
|
||||
/VMPCOLgLtGENyqRkWh+xjWJWuZ8+Qa3ZpTzfe6IANelsdMfzjSpOyygv20GMWsO
|
||||
s35XeB+za1nzwPA1cVHpR8dURdTMZKxkz3aXtE9/6B8Fkcc7bSo=
|
||||
=KtlB
|
||||
-----END PGP SIGNATURE-----
|
@ -2,10 +2,10 @@ Add POWER8 v2.0 and v2.1 to cpu map XML
|
||||
|
||||
From: <ro@suse.de>
|
||||
|
||||
Index: libvirt-8.0.0/src/cpu_map/ppc64_POWER8.xml
|
||||
Index: libvirt-8.1.0/src/cpu_map/ppc64_POWER8.xml
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/cpu_map/ppc64_POWER8.xml
|
||||
+++ libvirt-8.0.0/src/cpu_map/ppc64_POWER8.xml
|
||||
--- libvirt-8.1.0.orig/src/cpu_map/ppc64_POWER8.xml
|
||||
+++ libvirt-8.1.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-8.0.0/tools/virsh.c
|
||||
Index: libvirt-8.1.0/tools/virsh.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tools/virsh.c
|
||||
+++ libvirt-8.0.0/tools/virsh.c
|
||||
@@ -552,6 +552,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
|
||||
--- libvirt-8.1.0.orig/tools/virsh.c
|
||||
+++ libvirt-8.1.0/tools/virsh.c
|
||||
@@ -551,6 +551,8 @@ virshShowVersion(vshControl *ctl G_GNUC_
|
||||
vshPrint(ctl, " Interface");
|
||||
# if defined(WITH_NETCF)
|
||||
vshPrint(ctl, " netcf");
|
||||
@ -11,10 +11,10 @@ Index: libvirt-8.0.0/tools/virsh.c
|
||||
# elif defined(WITH_UDEV)
|
||||
vshPrint(ctl, " udev");
|
||||
# endif
|
||||
Index: libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
Index: libvirt-8.1.0/src/interface/interface_backend_netcf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/interface/interface_backend_netcf.c
|
||||
+++ libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
--- libvirt-8.1.0.orig/src/interface/interface_backend_netcf.c
|
||||
+++ libvirt-8.1.0/src/interface/interface_backend_netcf.c
|
||||
@@ -21,7 +21,12 @@
|
||||
|
||||
#include <config.h>
|
||||
@ -78,7 +78,7 @@ Index: libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
/* open netcf */
|
||||
if (ncf_init(&driver->netcf, NULL) != 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
@@ -1093,6 +1133,7 @@ static int netcfInterfaceIsActive(virInt
|
||||
@@ -1089,6 +1129,7 @@ static int netcfInterfaceIsActive(virInt
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -86,7 +86,7 @@ Index: libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
static int netcfInterfaceChangeBegin(virConnectPtr conn, unsigned int flags)
|
||||
{
|
||||
int ret;
|
||||
@@ -1167,6 +1208,7 @@ static int netcfInterfaceChangeRollback(
|
||||
@@ -1163,6 +1204,7 @@ static int netcfInterfaceChangeRollback(
|
||||
virObjectUnlock(driver);
|
||||
return ret;
|
||||
}
|
||||
@ -94,7 +94,7 @@ Index: libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
|
||||
static virInterfaceDriver interfaceDriver = {
|
||||
.name = INTERFACE_DRIVER_NAME,
|
||||
@@ -1183,9 +1225,11 @@ static virInterfaceDriver interfaceDrive
|
||||
@@ -1179,9 +1221,11 @@ static virInterfaceDriver interfaceDrive
|
||||
.interfaceCreate = netcfInterfaceCreate, /* 0.7.0 */
|
||||
.interfaceDestroy = netcfInterfaceDestroy, /* 0.7.0 */
|
||||
.interfaceIsActive = netcfInterfaceIsActive, /* 0.7.3 */
|
||||
@ -106,7 +106,7 @@ Index: libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
};
|
||||
|
||||
|
||||
@@ -1216,6 +1260,19 @@ static virStateDriver interfaceStateDriv
|
||||
@@ -1212,6 +1256,19 @@ static virStateDriver interfaceStateDriv
|
||||
|
||||
int netcfIfaceRegister(void)
|
||||
{
|
||||
@ -126,10 +126,10 @@ Index: libvirt-8.0.0/src/interface/interface_backend_netcf.c
|
||||
if (virRegisterConnectDriver(&interfaceConnectDriver, false) < 0)
|
||||
return -1;
|
||||
if (virSetSharedInterfaceDriver(&interfaceDriver) < 0)
|
||||
Index: libvirt-8.0.0/src/interface/interface_driver.c
|
||||
Index: libvirt-8.1.0/src/interface/interface_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/interface/interface_driver.c
|
||||
+++ libvirt-8.0.0/src/interface/interface_driver.c
|
||||
--- libvirt-8.1.0.orig/src/interface/interface_driver.c
|
||||
+++ libvirt-8.1.0/src/interface/interface_driver.c
|
||||
@@ -30,8 +30,15 @@ interfaceRegister(void)
|
||||
if (netcfIfaceRegister() == 0)
|
||||
return 0;
|
||||
@ -147,11 +147,11 @@ Index: libvirt-8.0.0/src/interface/interface_driver.c
|
||||
if (udevIfaceRegister() == 0)
|
||||
return 0;
|
||||
#endif /* WITH_UDEV */
|
||||
Index: libvirt-8.0.0/meson.build
|
||||
Index: libvirt-8.1.0/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/meson.build
|
||||
+++ libvirt-8.0.0/meson.build
|
||||
@@ -1098,6 +1098,12 @@ else
|
||||
--- libvirt-8.1.0.orig/meson.build
|
||||
+++ libvirt-8.1.0/meson.build
|
||||
@@ -1067,6 +1067,12 @@ else
|
||||
netcf_dep = dependency('', required: false)
|
||||
endif
|
||||
|
||||
@ -164,7 +164,7 @@ Index: libvirt-8.0.0/meson.build
|
||||
have_gnu_gettext_tools = false
|
||||
if not get_option('nls').disabled()
|
||||
have_gettext = cc.has_function('gettext')
|
||||
@@ -1505,10 +1511,10 @@ elif get_option('driver_hyperv').enabled
|
||||
@@ -1474,10 +1480,10 @@ elif get_option('driver_hyperv').enabled
|
||||
error('openwsman is required for the Hyper-V driver')
|
||||
endif
|
||||
|
||||
@ -177,7 +177,7 @@ Index: libvirt-8.0.0/meson.build
|
||||
endif
|
||||
|
||||
if not get_option('driver_libxl').disabled() and conf.has('WITH_LIBVIRTD')
|
||||
@@ -2345,6 +2351,7 @@ libs_summary = {
|
||||
@@ -2307,6 +2313,7 @@ libs_summary = {
|
||||
'libssh2': libssh2_dep.found(),
|
||||
'libutil': libutil_dep.found(),
|
||||
'netcf': conf.has('WITH_NETCF'),
|
||||
@ -185,10 +185,10 @@ Index: libvirt-8.0.0/meson.build
|
||||
'NLS': have_gnu_gettext_tools,
|
||||
'numactl': numactl_dep.found(),
|
||||
'openwsman': openwsman_dep.found(),
|
||||
Index: libvirt-8.0.0/src/interface/meson.build
|
||||
Index: libvirt-8.1.0/src/interface/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/interface/meson.build
|
||||
+++ libvirt-8.0.0/src/interface/meson.build
|
||||
--- libvirt-8.1.0.orig/src/interface/meson.build
|
||||
+++ libvirt-8.1.0/src/interface/meson.build
|
||||
@@ -2,7 +2,7 @@ interface_driver_sources = [
|
||||
'interface_driver.c',
|
||||
]
|
||||
@ -206,10 +206,10 @@ Index: libvirt-8.0.0/src/interface/meson.build
|
||||
udev_dep,
|
||||
],
|
||||
'link_args': [
|
||||
Index: libvirt-8.0.0/meson_options.txt
|
||||
Index: libvirt-8.1.0/meson_options.txt
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/meson_options.txt
|
||||
+++ libvirt-8.0.0/meson_options.txt
|
||||
--- libvirt-8.1.0.orig/meson_options.txt
|
||||
+++ libvirt-8.1.0/meson_options.txt
|
||||
@@ -29,6 +29,7 @@ option('libpcap', type: 'feature', value
|
||||
option('libssh', type: 'feature', value: 'auto', description: 'libssh support')
|
||||
option('libssh2', type: 'feature', value: 'auto', description: 'libssh2 support')
|
||||
|
@ -1,3 +1,26 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 3 15:25:50 UTC 2022 - James Fehlig <jfehlig@suse.com>
|
||||
|
||||
- qemu: Fix segmentation fault in qemuDomainUndefineFlags
|
||||
823a62ec-qemu-fix-undefine-crash.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 1 16:15:32 UTC 2022 - James Fehlig <jfehlig@suse.com>
|
||||
|
||||
- Update to libvirt 8.1.0
|
||||
- Many incremental improvements and bug fixes, see
|
||||
https://libvirt.org/news.html#v8-1-0-2022-03-01
|
||||
- Dropped patches:
|
||||
3be5ba11-libvirt-guests-install.patch,
|
||||
16172741-libvirt-guests-manpage.patch,
|
||||
8eb44616-remove-sysconfig-files.patch,
|
||||
31e937fb-libxl-save-lock-indicator.patch,
|
||||
105dace2-revert-virProcessGetStatInfo.patch,
|
||||
e0241f33-libxl-mark-allocated-graphics-ports.patch,
|
||||
18ec405a-libxl-release-graphics-ports.patch,
|
||||
76deb656-qemu-fix-snapshot-revert.patch,
|
||||
454b927d-libxl-fix-dom-restore.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 18 18:25:46 UTC 2022 - James Fehlig <jfehlig@suse.com>
|
||||
|
||||
|
42
libvirt.spec
42
libvirt.spec
@ -158,7 +158,7 @@
|
||||
|
||||
Name: libvirt
|
||||
URL: http://libvirt.org/
|
||||
Version: 8.0.0
|
||||
Version: 8.1.0
|
||||
Release: 0
|
||||
Summary: Library providing a virtualization API
|
||||
License: LGPL-2.1-or-later
|
||||
@ -233,7 +233,6 @@ BuildRequires: apparmor-rpm-macros
|
||||
BuildRequires: libapparmor-devel
|
||||
%endif
|
||||
BuildRequires: cyrus-sasl-devel
|
||||
BuildRequires: dnsmasq >= 2.41
|
||||
BuildRequires: ebtables
|
||||
BuildRequires: iptables
|
||||
BuildRequires: polkit >= 0.112
|
||||
@ -301,15 +300,7 @@ Source6: libvirtd-relocation-server.xml
|
||||
Source99: baselibs.conf
|
||||
Source100: %{name}-rpmlintrc
|
||||
# Upstream patches
|
||||
Patch0: 3be5ba11-libvirt-guests-install.patch
|
||||
Patch1: 16172741-libvirt-guests-manpage.patch
|
||||
Patch2: 8eb44616-remove-sysconfig-files.patch
|
||||
Patch3: 31e937fb-libxl-save-lock-indicator.patch
|
||||
Patch4: 105dace2-revert-virProcessGetStatInfo.patch
|
||||
Patch5: e0241f33-libxl-mark-allocated-graphics-ports.patch
|
||||
Patch6: 18ec405a-libxl-release-graphics-ports.patch
|
||||
Patch7: 76deb656-qemu-fix-snapshot-revert.patch
|
||||
Patch8: 454b927d-libxl-fix-dom-restore.patch
|
||||
Patch0: 823a62ec-qemu-fix-undefine-crash.patch
|
||||
# Patches pending upstream review
|
||||
Patch100: libxl-dom-reset.patch
|
||||
Patch101: network-don-t-use-dhcp-authoritative-on-static-netwo.patch
|
||||
@ -1032,19 +1023,6 @@ libvirt plugin for NSS for translating domain names into IP addresses.
|
||||
|
||||
%install
|
||||
%meson_install
|
||||
rm -f %{buildroot}/%{_libdir}/*.la
|
||||
rm -f %{buildroot}/%{_libdir}/*.a
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/lock-driver/*.la
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/lock-driver/*.a
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/connection-driver/*.la
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/connection-driver/*.a
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/storage-backend/*.la
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/storage-backend/*.a
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/storage-file/*.la
|
||||
rm -f %{buildroot}/%{_libdir}/%{name}/storage-file/*.a
|
||||
%if %{with_wireshark}
|
||||
rm -f %{buildroot}/%{wireshark_plugindir}/libvirt.la
|
||||
%endif
|
||||
# remove currently unsupported locale(s)
|
||||
for dir in %{buildroot}/usr/share/locale/*
|
||||
do
|
||||
@ -1342,7 +1320,6 @@ fi
|
||||
%{_sbindir}/virtlockd
|
||||
%dir %{_libdir}/%{name}
|
||||
%attr(0755, root, root) %{_libdir}/%{name}/libvirt-guests.sh
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/hooks
|
||||
%{_unitdir}/libvirtd.service
|
||||
%{_unitdir}/libvirtd.socket
|
||||
@ -1393,6 +1370,7 @@ fi
|
||||
%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug
|
||||
%{_datadir}/bash-completion/completions/virt-admin
|
||||
%dir %{_localstatedir}/lib/%{name}/
|
||||
%dir %attr(0755, root, root) %{_localstatedir}/lib/%{name}/
|
||||
%dir %attr(0711, root, root) %{_localstatedir}/lib/%{name}/images/
|
||||
%dir %attr(0711, root, root) %{_localstatedir}/lib/%{name}/filesystems/
|
||||
%dir %attr(0711, root, root) %{_localstatedir}/lib/%{name}/boot/
|
||||
@ -1525,6 +1503,7 @@ fi
|
||||
%{_unitdir}/virtsecretd-admin.socket
|
||||
%{_sbindir}/virtsecretd
|
||||
%{_sbindir}/rcvirtsecretd
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/secrets/
|
||||
%dir %{_libdir}/%{name}/connection-driver
|
||||
%{_libdir}/%{name}/connection-driver/libvirt_driver_secret.so
|
||||
%doc %{_mandir}/man8/virtsecretd.8*
|
||||
@ -1542,6 +1521,8 @@ fi
|
||||
%{_sbindir}/virtstoraged
|
||||
%{_sbindir}/rcvirtstoraged
|
||||
%attr(0755, root, root) %{_libdir}/%{name}/libvirt_parthelper
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/storage/
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/storage/autostart/
|
||||
%dir %{_libdir}/%{name}/connection-driver
|
||||
%{_libdir}/%{name}/connection-driver/libvirt_driver_storage.so
|
||||
%dir %{_libdir}/%{name}/storage-backend
|
||||
@ -1603,6 +1584,7 @@ fi
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/qemu.conf
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/qemu-lockd.conf
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.qemu
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/qemu/autostart/
|
||||
%dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/%{name}/qemu/
|
||||
%dir %attr(0750, root, root) %{_localstatedir}/cache/%{name}/qemu/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/log/%{name}/qemu/
|
||||
@ -1631,6 +1613,8 @@ fi
|
||||
%{_unitdir}/virtlxcd-admin.socket
|
||||
%{_sbindir}/virtlxcd
|
||||
%{_sbindir}/rcvirtlxcd
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/lxc/
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/lxc/autostart/
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/lxc.conf
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.lxc
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/lxc/
|
||||
@ -1661,9 +1645,15 @@ fi
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/libxl.conf
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.libxl
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/libxl-lockd.conf
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/libxl/
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/libxl/autostart/
|
||||
%{_datadir}/augeas/lenses/libvirtd_libxl.aug
|
||||
%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/libxl/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/libxl/channel/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/libxl/channel/target/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/libxl/dump/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/lib/%{name}/libxl/save/
|
||||
%dir %attr(0700, root, root) %{_localstatedir}/log/%{name}/libxl/
|
||||
%dir %{_libdir}/%{name}/connection-driver
|
||||
%{_libdir}/%{name}/connection-driver/libvirt_driver_libxl.so
|
||||
@ -1719,6 +1709,7 @@ fi
|
||||
%dir %{_libdir}/%{name}
|
||||
|
||||
%files libs -f %{name}.lang
|
||||
%dir %attr(0700, root, root) %{_sysconfdir}/%{name}/
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/libvirt.conf
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/libvirt-admin.conf
|
||||
%{_libdir}/libvirt.so.*
|
||||
@ -1728,7 +1719,6 @@ fi
|
||||
%dir %{_datadir}/%{name}/
|
||||
%dir %{_datadir}/%{name}/schemas/
|
||||
%dir %{_datadir}/%{name}/cpu_map/
|
||||
%dir %attr(0755, root, root) %{_localstatedir}/lib/%{name}/
|
||||
%{_datadir}/systemtap/tapset/libvirt_probes*.stp
|
||||
%{_datadir}/systemtap/tapset/libvirt_functions.stp
|
||||
%if %{with_qemu}
|
||||
|
@ -8,10 +8,10 @@ Date: Mon Jun 23 15:51:20 2014 -0600
|
||||
option, but domainReset can be implemented in the libxl driver by
|
||||
forcibly destroying the domain and starting it again.
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_driver.c
|
||||
@@ -1361,6 +1361,63 @@ libxlDomainReboot(virDomainPtr dom, unsi
|
||||
}
|
||||
|
||||
@ -76,7 +76,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
libxlDomainDestroyFlags(virDomainPtr dom,
|
||||
unsigned int flags)
|
||||
{
|
||||
@@ -6455,6 +6512,7 @@ static virHypervisorDriver libxlHypervis
|
||||
@@ -6464,6 +6521,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-8.0.0/src/libxl/libxl_conf.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
@@ -941,6 +941,28 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
@@ -943,6 +943,28 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
}
|
||||
}
|
||||
|
||||
@ -36,7 +36,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
static char *
|
||||
libxlMakeNetworkDiskSrcStr(virStorageSource *src,
|
||||
const char *username,
|
||||
@@ -1180,6 +1202,7 @@ libxlMakeDisk(virDomainDiskDef *l_disk,
|
||||
@@ -1182,6 +1204,7 @@ libxlMakeDisk(virDomainDiskDef *l_disk,
|
||||
x_disk->readwrite = !l_disk->src->readonly;
|
||||
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
|
||||
libxlDiskSetDiscard(x_disk, l_disk->discard);
|
||||
|
@ -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-8.0.0/docs/manpages/virsh.rst
|
||||
Index: libvirt-8.1.0/docs/manpages/virsh.rst
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/docs/manpages/virsh.rst
|
||||
+++ libvirt-8.0.0/docs/manpages/virsh.rst
|
||||
@@ -3237,6 +3237,7 @@ migrate
|
||||
--- libvirt-8.1.0.orig/docs/manpages/virsh.rst
|
||||
+++ libvirt-8.1.0/docs/manpages/virsh.rst
|
||||
@@ -3246,6 +3246,7 @@ migrate
|
||||
[--parallel [--parallel-connections connections]]
|
||||
[--bandwidth bandwidth] [--tls-destination hostname]
|
||||
[--disks-uri URI] [--copy-storage-synchronous-writes]
|
||||
@ -28,7 +28,7 @@ Index: libvirt-8.0.0/docs/manpages/virsh.rst
|
||||
|
||||
Migrate domain to another host. Add *--live* for live migration; <--p2p>
|
||||
for peer-2-peer migration; *--direct* for direct migration; or *--tunnelled*
|
||||
@@ -3354,6 +3355,12 @@ parallel connections. The number of such
|
||||
@@ -3363,6 +3364,12 @@ parallel connections. The number of such
|
||||
network link between the source and the target and thus speeding up the
|
||||
migration.
|
||||
|
||||
@ -41,11 +41,11 @@ Index: libvirt-8.0.0/docs/manpages/virsh.rst
|
||||
Running migration can be canceled by interrupting virsh (usually using
|
||||
``Ctrl-C``) or by ``domjobabort`` command sent from another virsh instance.
|
||||
|
||||
Index: libvirt-8.0.0/include/libvirt/libvirt-domain.h
|
||||
Index: libvirt-8.1.0/include/libvirt/libvirt-domain.h
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/include/libvirt/libvirt-domain.h
|
||||
+++ libvirt-8.0.0/include/libvirt/libvirt-domain.h
|
||||
@@ -1089,6 +1089,25 @@ typedef enum {
|
||||
--- libvirt-8.1.0.orig/include/libvirt/libvirt-domain.h
|
||||
+++ libvirt-8.1.0/include/libvirt/libvirt-domain.h
|
||||
@@ -1090,6 +1090,25 @@ typedef enum {
|
||||
*/
|
||||
# define VIR_MIGRATE_PARAM_TLS_DESTINATION "tls.destination"
|
||||
|
||||
@ -71,11 +71,11 @@ Index: libvirt-8.0.0/include/libvirt/libvirt-domain.h
|
||||
/* Domain migration. */
|
||||
virDomainPtr virDomainMigrate (virDomainPtr domain, virConnectPtr dconn,
|
||||
unsigned long flags, const char *dname,
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
@@ -5996,6 +5996,9 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_driver.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_driver.c
|
||||
@@ -6005,6 +6005,9 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
const char *dname = NULL;
|
||||
const char *uri = NULL;
|
||||
int ret = -1;
|
||||
@ -85,7 +85,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
|
||||
#ifdef LIBXL_HAVE_NO_SUSPEND_RESUME
|
||||
virReportUnsupportedError();
|
||||
@@ -6012,6 +6015,15 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
@@ -6021,6 +6024,15 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
virTypedParamsGetString(params, nparams,
|
||||
VIR_MIGRATE_PARAM_DEST_NAME,
|
||||
&dname) < 0 ||
|
||||
@ -101,7 +101,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
virTypedParamsGetString(params, nparams,
|
||||
VIR_MIGRATE_PARAM_URI,
|
||||
&uri) < 0)
|
||||
@@ -6026,11 +6038,11 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
@@ -6035,11 +6047,11 @@ libxlDomainMigratePerform3Params(virDoma
|
||||
|
||||
if ((flags & (VIR_MIGRATE_TUNNELLED | VIR_MIGRATE_PEER2PEER))) {
|
||||
if (libxlDomainMigrationSrcPerformP2P(driver, vm, dom->conn, dom_xml,
|
||||
@ -115,11 +115,11 @@ Index: libvirt-8.0.0/src/libxl/libxl_driver.c
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_migration.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_migration.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
@@ -334,18 +334,38 @@ libxlMigrateDstReceive(virNetSocket *soc
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_migration.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_migration.c
|
||||
@@ -332,18 +332,38 @@ libxlMigrateDstReceive(virNetSocket *soc
|
||||
static int
|
||||
libxlDoMigrateSrcSend(libxlDriverPrivate *driver,
|
||||
virDomainObj *vm,
|
||||
@ -160,7 +160,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
if (ret != 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
_("Failed to send migration data to destination host"));
|
||||
@@ -884,7 +904,7 @@ struct libxlTunnelControl {
|
||||
@@ -882,7 +902,7 @@ struct libxlTunnelControl {
|
||||
static int
|
||||
libxlMigrationSrcStartTunnel(libxlDriverPrivate *driver,
|
||||
virDomainObj *vm,
|
||||
@ -169,7 +169,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
virStreamPtr st,
|
||||
struct libxlTunnelControl **tnl)
|
||||
{
|
||||
@@ -917,7 +937,7 @@ libxlMigrationSrcStartTunnel(libxlDriver
|
||||
@@ -915,7 +935,7 @@ libxlMigrationSrcStartTunnel(libxlDriver
|
||||
|
||||
virObjectUnlock(vm);
|
||||
/* Send data to pipe */
|
||||
@ -178,7 +178,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
virObjectLock(vm);
|
||||
|
||||
/* libxlMigrationSrcStopTunnel will be called in libxlDoMigrateSrcP2P
|
||||
@@ -952,7 +972,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
@@ -950,7 +970,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
const char *dconnuri G_GNUC_UNUSED,
|
||||
const char *dname,
|
||||
const char *uri,
|
||||
@ -187,7 +187,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
{
|
||||
virDomainPtr ddomain = NULL;
|
||||
virTypedParameterPtr params = NULL;
|
||||
@@ -997,11 +1017,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
@@ -995,11 +1015,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
/* We don't require the destination to have P2P support
|
||||
* as it looks to be normal migration from the receiver perspective.
|
||||
*/
|
||||
@ -201,7 +201,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
if (!(st = virStreamNew(dconn, 0)))
|
||||
goto confirm;
|
||||
ret = dconn->driver->domainMigratePrepareTunnel3Params
|
||||
@@ -1015,7 +1035,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
@@ -1013,7 +1033,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
if (ret == -1)
|
||||
goto confirm;
|
||||
|
||||
@ -210,7 +210,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
if (uri_out) {
|
||||
if (virTypedParamsReplaceString(¶ms, &nparams,
|
||||
VIR_MIGRATE_PARAM_URI, uri_out) < 0) {
|
||||
@@ -1030,11 +1050,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
@@ -1028,11 +1048,11 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
}
|
||||
|
||||
VIR_DEBUG("Perform3 uri=%s", NULLSTR(uri_out));
|
||||
@ -225,7 +225,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
if (ret < 0) {
|
||||
notify_source = false;
|
||||
virErrorPreserveLast(&orig_err);
|
||||
@@ -1069,7 +1089,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
@@ -1067,7 +1087,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
confirm:
|
||||
if (notify_source) {
|
||||
VIR_DEBUG("Confirm3 cancelled=%d vm=%p", cancelled, vm);
|
||||
@ -234,7 +234,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
|
||||
if (ret < 0)
|
||||
VIR_WARN("Guest %s probably left in 'paused' state on source",
|
||||
@@ -1077,7 +1097,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
@@ -1075,7 +1095,7 @@ libxlDoMigrateSrcP2P(libxlDriverPrivate
|
||||
}
|
||||
|
||||
cleanup:
|
||||
@ -243,7 +243,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
libxlMigrationSrcStopTunnel(tc);
|
||||
virObjectUnref(st);
|
||||
}
|
||||
@@ -1121,7 +1141,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
@@ -1119,7 +1139,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
const char *dconnuri,
|
||||
const char *uri_str G_GNUC_UNUSED,
|
||||
const char *dname,
|
||||
@ -252,7 +252,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
{
|
||||
int ret = -1;
|
||||
int useParams;
|
||||
@@ -1155,7 +1175,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
@@ -1153,7 +1173,7 @@ libxlDomainMigrationSrcPerformP2P(libxlD
|
||||
}
|
||||
|
||||
ret = libxlDoMigrateSrcP2P(driver, vm, sconn, xmlin, dconn, dconnuri,
|
||||
@ -261,7 +261,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
|
||||
if (ret < 0) {
|
||||
/*
|
||||
@@ -1182,7 +1202,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
@@ -1180,7 +1200,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
const char *dconnuri G_GNUC_UNUSED,
|
||||
const char *uri_str,
|
||||
const char *dname G_GNUC_UNUSED,
|
||||
@ -270,7 +270,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
{
|
||||
libxlDomainObjPrivate *priv = vm->privateData;
|
||||
char *hostname = NULL;
|
||||
@@ -1218,7 +1238,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
@@ -1216,7 +1236,7 @@ libxlDomainMigrationSrcPerform(libxlDriv
|
||||
|
||||
/* suspend vm and send saved data to dst through socket fd */
|
||||
virObjectUnlock(vm);
|
||||
@ -279,10 +279,10 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.c
|
||||
virObjectLock(vm);
|
||||
|
||||
if (ret == 0) {
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_migration.h
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_migration.h
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_migration.h
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_migration.h
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_migration.h
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_migration.h
|
||||
@@ -35,6 +35,9 @@
|
||||
VIR_MIGRATE_PARAM_URI, VIR_TYPED_PARAM_STRING, \
|
||||
VIR_MIGRATE_PARAM_DEST_NAME, VIR_TYPED_PARAM_STRING, \
|
||||
@ -325,11 +325,11 @@ Index: libvirt-8.0.0/src/libxl/libxl_migration.h
|
||||
|
||||
virDomainPtr
|
||||
libxlDomainMigrationDstFinish(virConnectPtr dconn,
|
||||
Index: libvirt-8.0.0/tools/virsh-domain.c
|
||||
Index: libvirt-8.1.0/tools/virsh-domain.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tools/virsh-domain.c
|
||||
+++ libvirt-8.0.0/tools/virsh-domain.c
|
||||
@@ -10841,6 +10841,18 @@ static const vshCmdOptDef opts_migrate[]
|
||||
--- libvirt-8.1.0.orig/tools/virsh-domain.c
|
||||
+++ libvirt-8.1.0/tools/virsh-domain.c
|
||||
@@ -10863,6 +10863,18 @@ static const vshCmdOptDef opts_migrate[]
|
||||
.completer = virshCompleteEmpty,
|
||||
.help = N_("override the destination host name used for TLS verification")
|
||||
},
|
||||
@ -348,7 +348,7 @@ Index: libvirt-8.0.0/tools/virsh-domain.c
|
||||
{.name = NULL}
|
||||
};
|
||||
|
||||
@@ -10861,6 +10873,7 @@ doMigrate(void *opaque)
|
||||
@@ -10883,6 +10895,7 @@ doMigrate(void *opaque)
|
||||
unsigned long long ullOpt = 0;
|
||||
int rv;
|
||||
virConnectPtr dconn = data->dconn;
|
||||
@ -356,7 +356,7 @@ Index: libvirt-8.0.0/tools/virsh-domain.c
|
||||
#ifndef WIN32
|
||||
sigset_t sigmask, oldsigmask;
|
||||
|
||||
@@ -10991,6 +11004,22 @@ doMigrate(void *opaque)
|
||||
@@ -11013,6 +11026,22 @@ doMigrate(void *opaque)
|
||||
goto save_error;
|
||||
}
|
||||
|
||||
|
@ -7,11 +7,11 @@ and npiv.
|
||||
|
||||
For more details, see bsc#954872 and FATE#319810
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
@@ -942,6 +942,20 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
@@ -944,6 +944,20 @@ libxlDiskSetDiscard(libxl_device_disk *x
|
||||
}
|
||||
|
||||
static void
|
||||
@ -32,7 +32,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
libxlDiskSetCacheMode(libxl_device_disk *x_disk, int cachemode)
|
||||
{
|
||||
switch (cachemode) {
|
||||
@@ -1084,6 +1098,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
|
||||
@@ -1086,6 +1100,7 @@ libxlMakeNetworkDiskSrc(virStorageSource
|
||||
int
|
||||
libxlMakeDisk(virDomainDiskDef *l_disk, libxl_device_disk *x_disk)
|
||||
{
|
||||
@ -40,7 +40,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
const char *driver = virDomainDiskGetDriver(l_disk);
|
||||
int format = virDomainDiskGetFormat(l_disk);
|
||||
int actual_type = virStorageSourceGetActualType(l_disk->src);
|
||||
@@ -1097,7 +1112,7 @@ libxlMakeDisk(virDomainDiskDef *l_disk,
|
||||
@@ -1099,7 +1114,7 @@ libxlMakeDisk(virDomainDiskDef *l_disk,
|
||||
if (libxlMakeNetworkDiskSrc(l_disk->src, &x_disk->pdev_path) < 0)
|
||||
return -1;
|
||||
} else {
|
||||
@ -49,7 +49,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
}
|
||||
|
||||
x_disk->vdev = g_strdup(l_disk->dst);
|
||||
@@ -1203,6 +1218,8 @@ libxlMakeDisk(virDomainDiskDef *l_disk,
|
||||
@@ -1205,6 +1220,8 @@ libxlMakeDisk(virDomainDiskDef *l_disk,
|
||||
x_disk->is_cdrom = l_disk->device == VIR_DOMAIN_DISK_DEVICE_CDROM ? 1 : 0;
|
||||
libxlDiskSetDiscard(x_disk, l_disk->discard);
|
||||
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-8.0.0/src/lxc/lxc_controller.c
|
||||
Index: libvirt-8.1.0/src/lxc/lxc_controller.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/lxc/lxc_controller.c
|
||||
+++ libvirt-8.0.0/src/lxc/lxc_controller.c
|
||||
@@ -2006,6 +2006,7 @@ static int virLXCControllerDeleteInterfa
|
||||
--- libvirt-8.1.0.orig/src/lxc/lxc_controller.c
|
||||
+++ libvirt-8.1.0/src/lxc/lxc_controller.c
|
||||
@@ -1998,6 +1998,7 @@ static int virLXCControllerDeleteInterfa
|
||||
if (virNetDevVethDelete(ctrl->veths[i]) < 0)
|
||||
ret = -1;
|
||||
}
|
||||
@ -25,10 +25,10 @@ Index: libvirt-8.0.0/src/lxc/lxc_controller.c
|
||||
|
||||
return ret;
|
||||
}
|
||||
Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
Index: libvirt-8.1.0/src/lxc/lxc_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
--- libvirt-8.1.0.orig/src/lxc/lxc_driver.c
|
||||
+++ libvirt-8.1.0/src/lxc/lxc_driver.c
|
||||
@@ -67,6 +67,7 @@
|
||||
#include "virtime.h"
|
||||
#include "virtypedparam.h"
|
||||
@ -37,7 +37,7 @@ Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
#include "virstring.h"
|
||||
#include "viraccessapicheck.h"
|
||||
#include "viraccessapichecklxc.h"
|
||||
@@ -3508,6 +3509,7 @@ lxcDomainAttachDeviceNetLive(virLXCDrive
|
||||
@@ -3511,6 +3512,7 @@ lxcDomainAttachDeviceNetLive(virLXCDrive
|
||||
case VIR_DOMAIN_NET_TYPE_NETWORK:
|
||||
case VIR_DOMAIN_NET_TYPE_ETHERNET:
|
||||
ignore_value(virNetDevVethDelete(veth));
|
||||
@ -45,7 +45,7 @@ Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
break;
|
||||
|
||||
case VIR_DOMAIN_NET_TYPE_DIRECT:
|
||||
@@ -3947,6 +3949,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
|
||||
@@ -3950,6 +3952,7 @@ lxcDomainDetachDeviceNetLive(virDomainOb
|
||||
virDomainAuditNet(vm, detach, NULL, "detach", false);
|
||||
goto cleanup;
|
||||
}
|
||||
@ -53,10 +53,10 @@ Index: libvirt-8.0.0/src/lxc/lxc_driver.c
|
||||
break;
|
||||
|
||||
/* It'd be nice to support this, but with macvlan
|
||||
Index: libvirt-8.0.0/src/lxc/lxc_process.c
|
||||
Index: libvirt-8.1.0/src/lxc/lxc_process.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/lxc/lxc_process.c
|
||||
+++ libvirt-8.0.0/src/lxc/lxc_process.c
|
||||
--- libvirt-8.1.0.orig/src/lxc/lxc_process.c
|
||||
+++ libvirt-8.1.0/src/lxc/lxc_process.c
|
||||
@@ -51,6 +51,7 @@
|
||||
#include "virstring.h"
|
||||
#include "virprocess.h"
|
||||
@ -65,7 +65,7 @@ Index: libvirt-8.0.0/src/lxc/lxc_process.c
|
||||
#include "netdev_bandwidth_conf.h"
|
||||
#include "virutil.h"
|
||||
|
||||
@@ -249,6 +250,7 @@ static void virLXCProcessCleanup(virLXCD
|
||||
@@ -245,6 +246,7 @@ static void virLXCProcessCleanup(virLXCD
|
||||
VIR_WARN("Unable to release network device '%s'", NULLSTR(iface->ifname));
|
||||
}
|
||||
}
|
||||
|
@ -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-8.0.0/src/network/bridge_driver.c
|
||||
Index: libvirt-8.1.0/src/network/bridge_driver.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/network/bridge_driver.c
|
||||
+++ libvirt-8.0.0/src/network/bridge_driver.c
|
||||
@@ -1347,7 +1347,14 @@ networkDnsmasqConfContents(virNetworkObj
|
||||
--- libvirt-8.1.0.orig/src/network/bridge_driver.c
|
||||
+++ libvirt-8.1.0/src/network/bridge_driver.c
|
||||
@@ -1336,7 +1336,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-8.0.0/src/network/bridge_driver.c
|
||||
}
|
||||
|
||||
if (ipdef->tftproot) {
|
||||
Index: libvirt-8.0.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
Index: libvirt-8.1.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
+++ libvirt-8.0.0/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
--- libvirt-8.1.0.orig/tests/networkxml2confdata/dhcp6host-routed-network.conf
|
||||
+++ libvirt-8.1.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-8.0.0/src/util/virarch.c
|
||||
Index: libvirt-8.1.0/src/util/virarch.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/util/virarch.c
|
||||
+++ libvirt-8.0.0/src/util/virarch.c
|
||||
--- libvirt-8.1.0.orig/src/util/virarch.c
|
||||
+++ libvirt-8.1.0/src/util/virarch.c
|
||||
@@ -222,6 +222,8 @@ virArch virArchFromHost(void)
|
||||
arch = VIR_ARCH_X86_64;
|
||||
} else if (STREQ(ut.machine, "arm64")) {
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: libvirt-8.0.0/src/security/apparmor/libvirt-qemu
|
||||
Index: libvirt-8.1.0/src/security/apparmor/libvirt-qemu
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/security/apparmor/libvirt-qemu
|
||||
+++ libvirt-8.0.0/src/security/apparmor/libvirt-qemu
|
||||
--- libvirt-8.1.0.orig/src/security/apparmor/libvirt-qemu
|
||||
+++ libvirt-8.1.0/src/security/apparmor/libvirt-qemu
|
||||
@@ -248,3 +248,6 @@
|
||||
# /sys/bus/nd/devices
|
||||
/ r, # harmless on any lsb compliant system
|
||||
|
@ -1,9 +1,9 @@
|
||||
Adjust libvirt-guests service to conform to SUSE standards
|
||||
|
||||
Index: libvirt-8.0.0/tools/libvirt-guests.sh.in
|
||||
Index: libvirt-8.1.0/tools/libvirt-guests.sh.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tools/libvirt-guests.sh.in
|
||||
+++ libvirt-8.0.0/tools/libvirt-guests.sh.in
|
||||
--- libvirt-8.1.0.orig/tools/libvirt-guests.sh.in
|
||||
+++ libvirt-8.1.0/tools/libvirt-guests.sh.in
|
||||
@@ -20,10 +20,6 @@ sysconfdir="@sysconfdir@"
|
||||
localstatedir="@localstatedir@"
|
||||
libvirtd="@sbindir@"/libvirtd
|
||||
|
@ -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-8.0.0/src/remote/remote_daemon_config.c
|
||||
Index: libvirt-8.1.0/src/remote/remote_daemon_config.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/remote/remote_daemon_config.c
|
||||
+++ libvirt-8.0.0/src/remote/remote_daemon_config.c
|
||||
--- libvirt-8.1.0.orig/src/remote/remote_daemon_config.c
|
||||
+++ libvirt-8.1.0/src/remote/remote_daemon_config.c
|
||||
@@ -98,7 +98,7 @@ daemonConfigNew(bool privileged G_GNUC_U
|
||||
|
||||
#ifdef WITH_IP
|
||||
@ -16,10 +16,10 @@ Index: libvirt-8.0.0/src/remote/remote_daemon_config.c
|
||||
# else /* ! LIBVIRTD */
|
||||
data->listen_tls = false; /* Always honoured, --listen doesn't exist. */
|
||||
# endif /* ! LIBVIRTD */
|
||||
Index: libvirt-8.0.0/src/remote/libvirtd.conf.in
|
||||
Index: libvirt-8.1.0/src/remote/libvirtd.conf.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/remote/libvirtd.conf.in
|
||||
+++ libvirt-8.0.0/src/remote/libvirtd.conf.in
|
||||
--- libvirt-8.1.0.orig/src/remote/libvirtd.conf.in
|
||||
+++ libvirt-8.1.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.
|
||||
@ -31,10 +31,10 @@ Index: libvirt-8.0.0/src/remote/libvirtd.conf.in
|
||||
|
||||
# Listen for unencrypted TCP connections on the public TCP/IP port.
|
||||
# NB, must pass the --listen flag to the @DAEMON_NAME@ process for this to
|
||||
Index: libvirt-8.0.0/src/remote/test_libvirtd.aug.in
|
||||
Index: libvirt-8.1.0/src/remote/test_libvirtd.aug.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/remote/test_libvirtd.aug.in
|
||||
+++ libvirt-8.0.0/src/remote/test_libvirtd.aug.in
|
||||
--- libvirt-8.1.0.orig/src/remote/test_libvirtd.aug.in
|
||||
+++ libvirt-8.1.0/src/remote/test_libvirtd.aug.in
|
||||
@@ -3,7 +3,7 @@ module Test_@DAEMON_NAME@ =
|
||||
|
||||
test @DAEMON_NAME_UC@.lns get conf =
|
||||
|
@ -6,10 +6,10 @@ autoballooning. This patch changes libvirt to also disable autoballooning
|
||||
by default. It can only be enabled with the 'autoballoon' setting in
|
||||
libxl.conf. See jsc#SLE-3059 for more details.
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl.conf
|
||||
Index: libvirt-8.1.0/src/libxl/libxl.conf
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl.conf
|
||||
+++ libvirt-8.0.0/src/libxl/libxl.conf
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl.conf
|
||||
+++ libvirt-8.1.0/src/libxl/libxl.conf
|
||||
@@ -4,12 +4,11 @@
|
||||
|
||||
# Enable autoballooning of domain0
|
||||
@ -27,11 +27,11 @@ Index: libvirt-8.0.0/src/libxl/libxl.conf
|
||||
|
||||
|
||||
# In order to prevent accidentally starting two domains that
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
@@ -1746,15 +1746,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
@@ -1732,15 +1732,12 @@ libxlMakeBuildInfoVfb(virPortAllocatorRa
|
||||
/*
|
||||
* Get domain0 autoballoon configuration. Honor user-specified
|
||||
* setting in libxl.conf first. If not specified, autoballooning
|
||||
@ -48,7 +48,7 @@ Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
int res;
|
||||
|
||||
res = virConfGetValueBool(conf, "autoballoon", &cfg->autoballoon);
|
||||
@@ -1763,15 +1760,8 @@ libxlGetAutoballoonConf(libxlDriverConfi
|
||||
@@ -1749,15 +1746,8 @@ libxlGetAutoballoonConf(libxlDriverConfi
|
||||
else if (res == 1)
|
||||
return 0;
|
||||
|
||||
@ -66,10 +66,10 @@ Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
return 0;
|
||||
}
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/test_libvirtd_libxl.aug.in
|
||||
Index: libvirt-8.1.0/src/libxl/test_libvirtd_libxl.aug.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/test_libvirtd_libxl.aug.in
|
||||
+++ libvirt-8.0.0/src/libxl/test_libvirtd_libxl.aug.in
|
||||
--- libvirt-8.1.0.orig/src/libxl/test_libvirtd_libxl.aug.in
|
||||
+++ libvirt-8.1.0/src/libxl/test_libvirtd_libxl.aug.in
|
||||
@@ -2,7 +2,7 @@ module Test_libvirtd_libxl =
|
||||
@CONFIG@
|
||||
|
||||
|
@ -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-8.0.0/src/qemu/qemu.conf
|
||||
Index: libvirt-8.1.0/src/qemu/qemu.conf
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-8.0.0/src/qemu/qemu.conf
|
||||
--- libvirt-8.1.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-8.1.0/src/qemu/qemu.conf
|
||||
@@ -491,10 +491,19 @@
|
||||
# isolation, but it cannot appear in a list of drivers.
|
||||
#
|
||||
@ -60,10 +60,10 @@ Index: libvirt-8.0.0/src/qemu/qemu.conf
|
||||
#
|
||||
#lock_manager = "lockd"
|
||||
|
||||
Index: libvirt-8.0.0/src/qemu/qemu_conf.c
|
||||
Index: libvirt-8.1.0/src/qemu/qemu_conf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu_conf.c
|
||||
+++ libvirt-8.0.0/src/qemu/qemu_conf.c
|
||||
--- libvirt-8.1.0.orig/src/qemu/qemu_conf.c
|
||||
+++ libvirt-8.1.0/src/qemu/qemu_conf.c
|
||||
@@ -272,7 +272,7 @@ virQEMUDriverConfig *virQEMUDriverConfig
|
||||
cfg->slirpHelperName = g_strdup(QEMU_SLIRP_HELPER);
|
||||
cfg->dbusDaemonName = g_strdup(QEMU_DBUS_DAEMON);
|
||||
@ -73,10 +73,10 @@ Index: libvirt-8.0.0/src/qemu/qemu_conf.c
|
||||
cfg->securityRequireConfined = false;
|
||||
|
||||
cfg->keepAliveInterval = 5;
|
||||
Index: libvirt-8.0.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
Index: libvirt-8.1.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/test_libvirtd_qemu.aug.in
|
||||
+++ libvirt-8.0.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
--- libvirt-8.1.0.orig/src/qemu/test_libvirtd_qemu.aug.in
|
||||
+++ libvirt-8.1.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
@@ -45,6 +45,7 @@ module Test_libvirtd_qemu =
|
||||
{ "remote_websocket_port_min" = "5700" }
|
||||
{ "remote_websocket_port_max" = "65535" }
|
||||
|
@ -5,10 +5,10 @@ advertised and used by libvirt are automatically detected. Until upstream
|
||||
removes the old DEFAULT_LOADER_NVRAM approach and associated code, this
|
||||
patch will stay.
|
||||
|
||||
Index: libvirt-8.0.0/src/qemu/qemu.conf
|
||||
Index: libvirt-8.1.0/src/qemu/qemu.conf
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-8.0.0/src/qemu/qemu.conf
|
||||
--- libvirt-8.1.0.orig/src/qemu/qemu.conf
|
||||
+++ libvirt-8.1.0/src/qemu/qemu.conf
|
||||
@@ -857,10 +857,9 @@
|
||||
# for x86_64 and i686, but it's AAVMF for aarch64. The libvirt default
|
||||
# follows this scheme.
|
||||
@ -23,10 +23,10 @@ Index: libvirt-8.0.0/src/qemu/qemu.conf
|
||||
#]
|
||||
|
||||
# The backend to use for handling stdout/stderr output from
|
||||
Index: libvirt-8.0.0/src/qemu/qemu_conf.c
|
||||
Index: libvirt-8.1.0/src/qemu/qemu_conf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/qemu_conf.c
|
||||
+++ libvirt-8.0.0/src/qemu/qemu_conf.c
|
||||
--- libvirt-8.1.0.orig/src/qemu/qemu_conf.c
|
||||
+++ libvirt-8.1.0/src/qemu/qemu_conf.c
|
||||
@@ -98,10 +98,9 @@ qemuDriverUnlock(virQEMUDriver *driver)
|
||||
|
||||
#ifndef DEFAULT_LOADER_NVRAM
|
||||
@ -41,10 +41,10 @@ Index: libvirt-8.0.0/src/qemu/qemu_conf.c
|
||||
#endif
|
||||
|
||||
|
||||
Index: libvirt-8.0.0/src/security/virt-aa-helper.c
|
||||
Index: libvirt-8.1.0/src/security/virt-aa-helper.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/security/virt-aa-helper.c
|
||||
+++ libvirt-8.0.0/src/security/virt-aa-helper.c
|
||||
--- libvirt-8.1.0.orig/src/security/virt-aa-helper.c
|
||||
+++ libvirt-8.1.0/src/security/virt-aa-helper.c
|
||||
@@ -480,7 +480,8 @@ valid_path(const char *path, const bool
|
||||
"/usr/share/ovmf/", /* for OVMF images */
|
||||
"/usr/share/AAVMF/", /* for AAVMF images */
|
||||
@ -55,10 +55,10 @@ Index: libvirt-8.0.0/src/security/virt-aa-helper.c
|
||||
};
|
||||
/* override the above with these */
|
||||
const char * const override[] = {
|
||||
Index: libvirt-8.0.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
Index: libvirt-8.1.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/qemu/test_libvirtd_qemu.aug.in
|
||||
+++ libvirt-8.0.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
--- libvirt-8.1.0.orig/src/qemu/test_libvirtd_qemu.aug.in
|
||||
+++ libvirt-8.1.0/src/qemu/test_libvirtd_qemu.aug.in
|
||||
@@ -96,10 +96,9 @@ module Test_libvirtd_qemu =
|
||||
{ "migration_port_max" = "49215" }
|
||||
{ "log_timestamp" = "0" }
|
||||
|
@ -5,11 +5,11 @@ June 2021 ovmf only supports one firmware for Xen. This patch adjusts
|
||||
the firmware path to match the one provided by the ovmf package.
|
||||
|
||||
|
||||
Index: libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
Index: libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.0.0/src/libxl/libxl_conf.c
|
||||
@@ -1797,7 +1797,7 @@ libxlDriverConfigNew(void)
|
||||
--- libvirt-8.1.0.orig/src/libxl/libxl_conf.c
|
||||
+++ libvirt-8.1.0/src/libxl/libxl_conf.c
|
||||
@@ -1783,7 +1783,7 @@ libxlDriverConfigNew(void)
|
||||
cfg->firmwares = g_new0(virFirmware *, 1);
|
||||
cfg->nfirmwares = 1;
|
||||
cfg->firmwares[0] = g_new0(virFirmware, 1);
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: libvirt-8.0.0/tools/virt-create-rootfs
|
||||
Index: libvirt-8.1.0/tools/virt-create-rootfs
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-8.0.0/tools/virt-create-rootfs
|
||||
+++ libvirt-8.1.0/tools/virt-create-rootfs
|
||||
@@ -0,0 +1,236 @@
|
||||
+#!/bin/sh
|
||||
+set -e
|
||||
@ -239,10 +239,10 @@ Index: libvirt-8.0.0/tools/virt-create-rootfs
|
||||
+ echo "pts/0" >> "$ROOT/etc/securetty"
|
||||
+ chroot "$ROOT" /usr/bin/passwd
|
||||
+fi
|
||||
Index: libvirt-8.0.0/docs/manpages/virt-create-rootfs.rst
|
||||
Index: libvirt-8.1.0/docs/manpages/virt-create-rootfs.rst
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ libvirt-8.0.0/docs/manpages/virt-create-rootfs.rst
|
||||
+++ libvirt-8.1.0/docs/manpages/virt-create-rootfs.rst
|
||||
@@ -0,0 +1,88 @@
|
||||
+==================
|
||||
+virt-create-rootfs
|
||||
@ -332,10 +332,10 @@ Index: libvirt-8.0.0/docs/manpages/virt-create-rootfs.rst
|
||||
+========
|
||||
+
|
||||
+virsh(1), `https://libvirt.org/ <https://libvirt.org/>`_
|
||||
Index: libvirt-8.0.0/docs/manpages/meson.build
|
||||
Index: libvirt-8.1.0/docs/manpages/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/docs/manpages/meson.build
|
||||
+++ libvirt-8.0.0/docs/manpages/meson.build
|
||||
--- libvirt-8.1.0.orig/docs/manpages/meson.build
|
||||
+++ libvirt-8.1.0/docs/manpages/meson.build
|
||||
@@ -20,6 +20,7 @@ docs_man_files = [
|
||||
{ 'name': 'virt-pki-validate', 'section': '1', 'install': true },
|
||||
{ 'name': 'virt-qemu-run', 'section': '1', 'install': conf.has('WITH_QEMU') },
|
||||
@ -344,10 +344,10 @@ Index: libvirt-8.0.0/docs/manpages/meson.build
|
||||
|
||||
{ 'name': 'libvirt-guests', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
||||
{ 'name': 'libvirtd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
||||
Index: libvirt-8.0.0/tools/meson.build
|
||||
Index: libvirt-8.1.0/tools/meson.build
|
||||
===================================================================
|
||||
--- libvirt-8.0.0.orig/tools/meson.build
|
||||
+++ libvirt-8.0.0/tools/meson.build
|
||||
--- libvirt-8.1.0.orig/tools/meson.build
|
||||
+++ libvirt-8.1.0/tools/meson.build
|
||||
@@ -154,6 +154,8 @@ else
|
||||
virsh_icon_res = []
|
||||
endif
|
||||
|
Loading…
Reference in New Issue
Block a user