On Fri, May 29, 2026 at 16:12:18 +0200, Jiri Denemark via Devel wrote:
From: Jiri Denemark <jdenemar@redhat.com>
Some CPU features may be enabled explicitly, but should not automatically become part of a host-model CPU. Users can now request such features to be shown in the host-model CPU in domain capabilities by VIR_CONNECT_GET_DOMAIN_CAPABILITIES_SUPPORTED_CPU_FEATURES flag.
Signed-off-by: Jiri Denemark <jdenemar@redhat.com> ---
Notes: Version 2: - new patch
include/libvirt/libvirt-domain.h | 3 +++ src/libvirt-domain.c | 8 ++++++++ 2 files changed, 11 insertions(+)
diff --git a/include/libvirt/libvirt-domain.h b/include/libvirt/libvirt-domain.h index 8f07ef2156..0a237bf880 100644 --- a/include/libvirt/libvirt-domain.h +++ b/include/libvirt/libvirt-domain.h @@ -1549,6 +1549,9 @@ typedef enum { VIR_CONNECT_GET_DOMAIN_CAPABILITIES_DISABLE_DEPRECATED_FEATURES = (1 << 0), /* Report all host model CPU features. (Since: 12.2.0) */ VIR_CONNECT_GET_DOMAIN_CAPABILITIES_EXPAND_CPU_FEATURES = (1 << 1), + /* Report all CPU features supported on the host, even those that will not + * be enabled by host-model CPU mode. (Since: 12.5.0) */ + VIR_CONNECT_GET_DOMAIN_CAPABILITIES_SUPPORTED_CPU_FEATURES = (1 << 2), } virConnectGetDomainCapabilitiesFlags;
char * virConnectGetDomainCapabilities(virConnectPtr conn, diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c index 425a73e75a..405c9f187d 100644 --- a/src/libvirt-domain.c +++ b/src/libvirt-domain.c @@ -12357,6 +12357,14 @@ virDomainSetUserPassword(virDomainPtr dom, * host-model CPU mode. Without this flag features that are part of the CPU * model itself will not be listed. * + * Adding VIR_CONNECT_GET_DOMAIN_CAPABILITIES_SUPPORTED_CPU_FEATURES to @flags + * tells libvirt to update the host-model CPU definition with features that are + * supported on the host, but should not be enabled by default when starting a
So, the flag description says "those that will not be enabled", here you say "should not be enabled". IMO the former wording is more correct, because libvirrt is not suggesting here but rather saying what will happen.
+ * domain with host-model CPU. Use both + * VIR_CONNECT_GET_DOMAIN_CAPABILITIES_SUPPORTED_CPU_FEATURES and + * VIR_CONNECT_GET_DOMAIN_CAPABILITIES_EXPAND_CPU_FEATURES flags to get a + * complete list of features that can be enabled on the host. + * * Returns NULL in case of error or an XML string * defining the capabilities. * -- 2.54.0