import libvirt-8.0.0-10.2.module+el8.7.0+17753+6a6ae27a
This commit is contained in:
parent
82a9da7506
commit
deba224310
@ -0,0 +1,75 @@
|
|||||||
|
From a4fc108994dd64e0880be10b93b48830f32907de Mon Sep 17 00:00:00 2001
|
||||||
|
Message-Id: <a4fc108994dd64e0880be10b93b48830f32907de@dist-git>
|
||||||
|
From: Jim Fehlig <jfehlig@suse.com>
|
||||||
|
Date: Mon, 10 Jan 2022 11:42:58 -0700
|
||||||
|
Subject: [PATCH] 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>
|
||||||
|
(cherry picked from commit 3be5ba11a2c6fcb2dfdffa03ab4f847113f36b85)
|
||||||
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2157091
|
||||||
|
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
---
|
||||||
|
tools/meson.build | 38 ++++++++++++++++++++------------------
|
||||||
|
1 file changed, 20 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tools/meson.build b/tools/meson.build
|
||||||
|
index 22fa3604ba..2d0aecb90b 100644
|
||||||
|
--- a/tools/meson.build
|
||||||
|
+++ b/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()
|
||||||
|
--
|
||||||
|
2.39.0
|
||||||
|
|
@ -0,0 +1,58 @@
|
|||||||
|
From 6725459d1b7d326b65ce4f19640a49851b54ae9b Mon Sep 17 00:00:00 2001
|
||||||
|
Message-Id: <6725459d1b7d326b65ce4f19640a49851b54ae9b@dist-git>
|
||||||
|
From: Peter Krempa <pkrempa@redhat.com>
|
||||||
|
Date: Thu, 1 Dec 2022 17:02:42 +0100
|
||||||
|
Subject: [PATCH] qemuAgentGetDisks: Don't use virJSONValueObjectGetStringArray
|
||||||
|
for optional data
|
||||||
|
|
||||||
|
The 'dependencies' field in the return data may be missing in some
|
||||||
|
cases. Historically 'virJSONValueObjectGetStringArray' didn't report
|
||||||
|
error in such case, but later refactor (commit 043b50b948ef3c2 ) added
|
||||||
|
an error in order to use it in other places too.
|
||||||
|
|
||||||
|
Unfortunately this results in the error log being spammed with an
|
||||||
|
irrelevant error in case when qemuAgentGetDisks is invoked on a VM
|
||||||
|
running windows.
|
||||||
|
|
||||||
|
Replace the use of virJSONValueObjectGetStringArray by fetching the
|
||||||
|
array first and calling virJSONValueArrayToStringList only when we have
|
||||||
|
an array.
|
||||||
|
|
||||||
|
Fixes: 043b50b948ef3c2a4adf5fa32a93ec2589851ac6
|
||||||
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2149752
|
||||||
|
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
|
||||||
|
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
(cherry picked from commit 3b576601dfb924bb518870a01de5d1a421cbb467)
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=2152079
|
||||||
|
---
|
||||||
|
src/qemu/qemu_agent.c | 7 ++++++-
|
||||||
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/qemu/qemu_agent.c b/src/qemu/qemu_agent.c
|
||||||
|
index f33cd47078..8a55044c9e 100644
|
||||||
|
--- a/src/qemu/qemu_agent.c
|
||||||
|
+++ b/src/qemu/qemu_agent.c
|
||||||
|
@@ -2550,6 +2550,7 @@ int qemuAgentGetDisks(qemuAgent *agent,
|
||||||
|
for (i = 0; i < ndata; i++) {
|
||||||
|
virJSONValue *addr;
|
||||||
|
virJSONValue *entry = virJSONValueArrayGet(data, i);
|
||||||
|
+ virJSONValue *dependencies;
|
||||||
|
qemuAgentDiskInfo *disk;
|
||||||
|
|
||||||
|
if (!entry) {
|
||||||
|
@@ -2575,7 +2576,11 @@ int qemuAgentGetDisks(qemuAgent *agent,
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
|
|
||||||
|
- disk->dependencies = virJSONValueObjectGetStringArray(entry, "dependencies");
|
||||||
|
+ if ((dependencies = virJSONValueObjectGetArray(entry, "dependencies"))) {
|
||||||
|
+ if (!(disk->dependencies = virJSONValueArrayToStringList(dependencies)))
|
||||||
|
+ goto error;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
disk->alias = g_strdup(virJSONValueObjectGetString(entry, "alias"));
|
||||||
|
addr = virJSONValueObjectGetObject(entry, "address");
|
||||||
|
if (addr) {
|
||||||
|
--
|
||||||
|
2.39.0
|
||||||
|
|
@ -0,0 +1,65 @@
|
|||||||
|
From 5f671e3950e5ac3da2989ebd62c5694c66e6cd68 Mon Sep 17 00:00:00 2001
|
||||||
|
Message-Id: <5f671e3950e5ac3da2989ebd62c5694c66e6cd68@dist-git>
|
||||||
|
From: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
Date: Thu, 8 Dec 2022 08:39:24 +0100
|
||||||
|
Subject: [PATCH] tools: Fix install_mode for some scripts
|
||||||
|
|
||||||
|
Scripts from the following list were installed with group write
|
||||||
|
bit set: virt-xml-validate, virt-pki-validate,
|
||||||
|
virt-sanlock-cleanup, libvirt-guests.sh. This is very unusual and
|
||||||
|
in contrast with the way other scripts/binaries are installed.
|
||||||
|
|
||||||
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2151202
|
||||||
|
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
|
||||||
|
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
|
||||||
|
(cherry picked from commit e771e32f15ff2b263ca70306d93080541a96792b)
|
||||||
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2157091
|
||||||
|
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
---
|
||||||
|
tools/meson.build | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tools/meson.build b/tools/meson.build
|
||||||
|
index 2d0aecb90b..7c6e527939 100644
|
||||||
|
--- a/tools/meson.build
|
||||||
|
+++ b/tools/meson.build
|
||||||
|
@@ -247,7 +247,7 @@ configure_file(
|
||||||
|
configuration: tools_conf,
|
||||||
|
install: true,
|
||||||
|
install_dir: bindir,
|
||||||
|
- install_mode: 'rwxrwxr-x',
|
||||||
|
+ install_mode: 'rwxr-xr-x',
|
||||||
|
)
|
||||||
|
|
||||||
|
configure_file(
|
||||||
|
@@ -256,7 +256,7 @@ configure_file(
|
||||||
|
configuration: tools_conf,
|
||||||
|
install: true,
|
||||||
|
install_dir: bindir,
|
||||||
|
- install_mode: 'rwxrwxr-x',
|
||||||
|
+ install_mode: 'rwxr-xr-x',
|
||||||
|
)
|
||||||
|
|
||||||
|
executable(
|
||||||
|
@@ -293,7 +293,7 @@ if conf.has('WITH_SANLOCK')
|
||||||
|
configuration: tools_conf,
|
||||||
|
install: true,
|
||||||
|
install_dir: sbindir,
|
||||||
|
- install_mode: 'rwxrwxr-x',
|
||||||
|
+ install_mode: 'rwxr-xr-x',
|
||||||
|
)
|
||||||
|
endif
|
||||||
|
|
||||||
|
@@ -304,7 +304,7 @@ if conf.has('WITH_LIBVIRTD')
|
||||||
|
configuration: tools_conf,
|
||||||
|
install: true,
|
||||||
|
install_dir: libexecdir,
|
||||||
|
- install_mode: 'rwxrwxr-x',
|
||||||
|
+ install_mode: 'rwxr-xr-x',
|
||||||
|
)
|
||||||
|
|
||||||
|
if init_script == 'systemd'
|
||||||
|
--
|
||||||
|
2.39.0
|
||||||
|
|
@ -0,0 +1,124 @@
|
|||||||
|
From de2fa128a683f6a08b2d3fe95fc7857faed03cbf Mon Sep 17 00:00:00 2001
|
||||||
|
Message-Id: <de2fa128a683f6a08b2d3fe95fc7857faed03cbf@dist-git>
|
||||||
|
From: Peter Krempa <pkrempa@redhat.com>
|
||||||
|
Date: Thu, 1 Dec 2022 13:32:07 +0100
|
||||||
|
Subject: [PATCH] util: json: Split out array->strinlist conversion from
|
||||||
|
virJSONValueObjectGetStringArray
|
||||||
|
|
||||||
|
Introduce virJSONValueArrayToStringList which does only the conversion
|
||||||
|
from an array to a stringlist.
|
||||||
|
|
||||||
|
This will allow refactoring the callers to be more careful in case when
|
||||||
|
they want to handle the existance of the member in the parent object
|
||||||
|
differently.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
|
||||||
|
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
||||||
|
(cherry picked from commit 6765bdeaf7e9cbdb4c39d47f3b77fb28a498408a)
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=2152079
|
||||||
|
---
|
||||||
|
src/libvirt_private.syms | 1 +
|
||||||
|
src/util/virjson.c | 43 ++++++++++++++++++++++------------------
|
||||||
|
src/util/virjson.h | 2 ++
|
||||||
|
3 files changed, 27 insertions(+), 19 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
|
||||||
|
index 5b7a056151..fa734dfd33 100644
|
||||||
|
--- a/src/libvirt_private.syms
|
||||||
|
+++ b/src/libvirt_private.syms
|
||||||
|
@@ -2513,6 +2513,7 @@ virJSONValueArrayForeachSteal;
|
||||||
|
virJSONValueArrayGet;
|
||||||
|
virJSONValueArraySize;
|
||||||
|
virJSONValueArraySteal;
|
||||||
|
+virJSONValueArrayToStringList;
|
||||||
|
virJSONValueCopy;
|
||||||
|
virJSONValueFree;
|
||||||
|
virJSONValueFromString;
|
||||||
|
diff --git a/src/util/virjson.c b/src/util/virjson.c
|
||||||
|
index 6e13e97e15..5f1565107d 100644
|
||||||
|
--- a/src/util/virjson.c
|
||||||
|
+++ b/src/util/virjson.c
|
||||||
|
@@ -1312,10 +1312,7 @@ virJSONValueObjectStealObject(virJSONValue *object,
|
||||||
|
char **
|
||||||
|
virJSONValueObjectGetStringArray(virJSONValue *object, const char *key)
|
||||||
|
{
|
||||||
|
- g_auto(GStrv) ret = NULL;
|
||||||
|
virJSONValue *data;
|
||||||
|
- size_t n;
|
||||||
|
- size_t i;
|
||||||
|
|
||||||
|
data = virJSONValueObjectGetArray(object, key);
|
||||||
|
if (!data) {
|
||||||
|
@@ -1325,32 +1322,40 @@ virJSONValueObjectGetStringArray(virJSONValue *object, const char *key)
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
- n = virJSONValueArraySize(data);
|
||||||
|
- ret = g_new0(char *, n + 1);
|
||||||
|
+ return virJSONValueArrayToStringList(data);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+/**
|
||||||
|
+ * virJSONValueArrayToStringList:
|
||||||
|
+ * @data: a JSON array containing strings to convert
|
||||||
|
+ *
|
||||||
|
+ * Converts @data a JSON array containing strings to a NULL-terminated string
|
||||||
|
+ * list. @data must be a JSON array. In case @data is doesn't contain only
|
||||||
|
+ * strings an error is reported.
|
||||||
|
+ */
|
||||||
|
+char **
|
||||||
|
+virJSONValueArrayToStringList(virJSONValue *data)
|
||||||
|
+{
|
||||||
|
+ size_t n = virJSONValueArraySize(data);
|
||||||
|
+ g_auto(GStrv) ret = g_new0(char *, n + 1);
|
||||||
|
+ size_t i;
|
||||||
|
+
|
||||||
|
for (i = 0; i < n; i++) {
|
||||||
|
virJSONValue *child = virJSONValueArrayGet(data, i);
|
||||||
|
- const char *tmp;
|
||||||
|
|
||||||
|
- if (!child) {
|
||||||
|
- virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
- _("%s array element is missing item %zu"),
|
||||||
|
- key, i);
|
||||||
|
+ if (!child ||
|
||||||
|
+ !(ret[i] = g_strdup(virJSONValueGetString(child)))) {
|
||||||
|
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||||
|
+ _("JSON string array contains non-string element"));
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- if (!(tmp = virJSONValueGetString(child))) {
|
||||||
|
- virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
- _("%s array element does not contain a string"),
|
||||||
|
- key);
|
||||||
|
- return NULL;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- ret[i] = g_strdup(tmp);
|
||||||
|
}
|
||||||
|
|
||||||
|
return g_steal_pointer(&ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
* virJSONValueObjectForeachKeyValue:
|
||||||
|
* @object: JSON object to iterate
|
||||||
|
diff --git a/src/util/virjson.h b/src/util/virjson.h
|
||||||
|
index aced48a538..c9f83ab2bc 100644
|
||||||
|
--- a/src/util/virjson.h
|
||||||
|
+++ b/src/util/virjson.h
|
||||||
|
@@ -172,6 +172,8 @@ virJSONValueObjectGetString(virJSONValue *object,
|
||||||
|
char **
|
||||||
|
virJSONValueObjectGetStringArray(virJSONValue *object,
|
||||||
|
const char *key);
|
||||||
|
+char **
|
||||||
|
+virJSONValueArrayToStringList(virJSONValue *data);
|
||||||
|
const char *
|
||||||
|
virJSONValueObjectGetStringOrNumber(virJSONValue *object,
|
||||||
|
const char *key);
|
||||||
|
--
|
||||||
|
2.39.0
|
||||||
|
|
@ -210,7 +210,7 @@
|
|||||||
Summary: Library providing a simple virtualization API
|
Summary: Library providing a simple virtualization API
|
||||||
Name: libvirt
|
Name: libvirt
|
||||||
Version: 8.0.0
|
Version: 8.0.0
|
||||||
Release: 10.1%{?dist}%{?extra_release}
|
Release: 10.2%{?dist}%{?extra_release}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: https://libvirt.org/
|
URL: https://libvirt.org/
|
||||||
|
|
||||||
@ -273,6 +273,10 @@ Patch50: libvirt-qemu_namespace-Fix-a-corner-case-in-qemuDomainGetPreservedMount
|
|||||||
Patch51: libvirt-qemu_namespace-Introduce-qemuDomainNamespaceSetupPath.patch
|
Patch51: libvirt-qemu_namespace-Introduce-qemuDomainNamespaceSetupPath.patch
|
||||||
Patch52: libvirt-qemu_process.c-Propagate-hugetlbfs-mounts-on-reconnect.patch
|
Patch52: libvirt-qemu_process.c-Propagate-hugetlbfs-mounts-on-reconnect.patch
|
||||||
Patch53: libvirt-qemuProcessReconnect-Don-t-build-memory-paths.patch
|
Patch53: libvirt-qemuProcessReconnect-Don-t-build-memory-paths.patch
|
||||||
|
Patch54: libvirt-util-json-Split-out-array-strinlist-conversion-from-virJSONValueObjectGetStringArray.patch
|
||||||
|
Patch55: libvirt-qemuAgentGetDisks-Don-t-use-virJSONValueObjectGetStringArray-for-optional-data.patch
|
||||||
|
Patch56: libvirt-build-Only-install-libvirt-guests-when-building-libvirtd.patch
|
||||||
|
Patch57: libvirt-tools-Fix-install_mode-for-some-scripts.patch
|
||||||
|
|
||||||
Requires: libvirt-daemon = %{version}-%{release}
|
Requires: libvirt-daemon = %{version}-%{release}
|
||||||
Requires: libvirt-daemon-config-network = %{version}-%{release}
|
Requires: libvirt-daemon-config-network = %{version}-%{release}
|
||||||
@ -2146,6 +2150,12 @@ exit 0
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jan 5 2023 Jiri Denemark <jdenemar@redhat.com> - 8.0.0-10.2.el8
|
||||||
|
- util: json: Split out array->strinlist conversion from virJSONValueObjectGetStringArray (rhbz#2152079)
|
||||||
|
- qemuAgentGetDisks: Don't use virJSONValueObjectGetStringArray for optional data (rhbz#2152079)
|
||||||
|
- build: Only install libvirt-guests when building libvirtd (rhbz#2157091)
|
||||||
|
- tools: Fix install_mode for some scripts (rhbz#2157091)
|
||||||
|
|
||||||
* Wed Nov 9 2022 Jiri Denemark <jdenemar@redhat.com> - 8.0.0-10.1.el8
|
* Wed Nov 9 2022 Jiri Denemark <jdenemar@redhat.com> - 8.0.0-10.1.el8
|
||||||
- qemu_process: Don't require a hugetlbfs mount for memfd (rhbz#2132176)
|
- qemu_process: Don't require a hugetlbfs mount for memfd (rhbz#2132176)
|
||||||
- qemu_namespace: Tolerate missing ACLs when creating a path in namespace (rhbz#2132176)
|
- qemu_namespace: Tolerate missing ACLs when creating a path in namespace (rhbz#2132176)
|
||||||
|
Loading…
Reference in New Issue
Block a user