- util: introduce object for holding a system inhibitor lock (RHEL-83064) - src: convert drivers over to new virInhibitor APIs (RHEL-83064) - rpc: remove logind support for virNetDaemon (RHEL-83064) - util: fix off-by-1 in inhibitor constants (RHEL-83064) - util: don't attempt to acquire logind inhibitor if not requested (RHEL-83064) - network: Free inhibitor in networkStateCleanup() (RHEL-83064) - conf: introduce support for multiple ACPI tables (RHEL-81041) - src: validate permitted ACPI table types in libxl/qemu drivers (RHEL-81041) - src: introduce 'raw' and 'rawset' ACPI table types (RHEL-81041) - qemu: support 'raw' ACPI table type (RHEL-81041) - libxl: support 'rawset' ACPI table type (RHEL-81041) - conf: support MSDM ACPI table type (RHEL-81041) - qemu: support MSDM ACPI table type (RHEL-81041) - qemuxmlconftest: Include shared memory 'net-vhostuser' test cases (RHEL-84133) - qemuValidateDomainDeviceDefNetwork: Require shared memory for all vhost-user interfaces (RHEL-84133) - qemu: process: Remove un-updated 'qemuProcessStartWarnShmem' (RHEL-84133) Resolves: RHEL-81041, RHEL-83064, RHEL-84133
63 lines
2.7 KiB
Diff
63 lines
2.7 KiB
Diff
From 5337b43f308c025977311d700b2bd89dfc848b0c Mon Sep 17 00:00:00 2001
|
|
Message-ID: <5337b43f308c025977311d700b2bd89dfc848b0c.1742990721.git.jdenemar@redhat.com>
|
|
From: Peter Krempa <pkrempa@redhat.com>
|
|
Date: Tue, 11 Mar 2025 09:01:12 +0100
|
|
Subject: [PATCH] qemuValidateDomainDeviceDefNetwork: Require shared memory for
|
|
all vhost-user interfaces
|
|
|
|
Currently we produce only a warning into the log if a non-passt
|
|
vhost-user interface is configured with shared memory.
|
|
|
|
Since we do make it fatal with all other vhost-user types, fix the check
|
|
to trigger also for normal-vhost-user interfaces.
|
|
|
|
Since passt-based vhost-user interfaces are checked separately the check
|
|
will no longer be required.
|
|
|
|
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
|
|
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
|
(cherry picked from commit 0d20632179e1a61903f30986215bef53b0f912f6)
|
|
|
|
https://issues.redhat.com/browse/RHEL-84133
|
|
---
|
|
src/qemu/qemu_validate.c | 9 +++------
|
|
.../net-vhostuser-passt-no-shmem.x86_64-latest.err | 2 +-
|
|
2 files changed, 4 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c
|
|
index f814ee8c0d..1c61038f93 100644
|
|
--- a/src/qemu/qemu_validate.c
|
|
+++ b/src/qemu/qemu_validate.c
|
|
@@ -1828,12 +1828,6 @@ qemuValidateDomainDeviceDefNetwork(const virDomainNetDef *net,
|
|
return -1;
|
|
}
|
|
|
|
- if (net->type == VIR_DOMAIN_NET_TYPE_VHOSTUSER &&
|
|
- net->backend.type == VIR_DOMAIN_NET_BACKEND_PASST) {
|
|
- if (qemuValidateDomainDefVhostUserRequireSharedMemory(def, "interface type=\"vhostuser\" backend type=\"passt\"") < 0)
|
|
- return -1;
|
|
- }
|
|
-
|
|
if (net->type == VIR_DOMAIN_NET_TYPE_VDPA) {
|
|
if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_NETDEV_VHOST_VDPA)) {
|
|
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
|
@@ -1857,6 +1851,9 @@ qemuValidateDomainDeviceDefNetwork(const virDomainNetDef *net,
|
|
_("'reconnect' attribute is not supported when source mode='server' for <interface type='vhostuser'>"));
|
|
return -1;
|
|
}
|
|
+
|
|
+ if (qemuValidateDomainDefVhostUserRequireSharedMemory(def, "interface") < 0)
|
|
+ return -1;
|
|
}
|
|
|
|
if (!virDomainNetIsVirtioModel(net)) {
|
|
diff --git a/tests/qemuxmlconfdata/net-vhostuser-passt-no-shmem.x86_64-latest.err b/tests/qemuxmlconfdata/net-vhostuser-passt-no-shmem.x86_64-latest.err
|
|
index 274af5c722..babde17518 100644
|
|
--- a/tests/qemuxmlconfdata/net-vhostuser-passt-no-shmem.x86_64-latest.err
|
|
+++ b/tests/qemuxmlconfdata/net-vhostuser-passt-no-shmem.x86_64-latest.err
|
|
@@ -1 +1 @@
|
|
-unsupported configuration: 'interface type="vhostuser" backend type="passt"' requires shared memory
|
|
+unsupported configuration: 'interface' requires shared memory
|
|
--
|
|
2.49.0
|