]> git.ipfire.org Git - thirdparty/libvirt.git/log
thirdparty/libvirt.git
7 months agoqemuMonitorJSONGetCPUModelExpansion: refactor parsing functions
Collin Walling [Mon, 16 Dec 2024 23:03:52 +0000 (18:03 -0500)] 
qemuMonitorJSONGetCPUModelExpansion: refactor parsing functions

Refactor the CPU Model parsing functions within
qemuMonitorJSONGetCPUModelExpansion.  The new functions,
qemuMonitorJSONParseCPUModelExpansionData and
qemuMonitorJSONParseCPUModelExpansion invoke the functions they
replace and leave room for a subsequent patch to handle parsing the
(optional) deprecated_props field resulting from the command.

Signed-off-by: Collin Walling <walling@linux.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoqemu: Enable I/O APIC if needed
Michal Privoznik [Thu, 12 Dec 2024 09:02:43 +0000 (10:02 +0100)] 
qemu: Enable I/O APIC if needed

This is a follow up of my previous commits. If the number of
vCPUs exceeds some arbitrary value (255) then QEMU requires IOMMU
with EIM and intremap enabled. But in turn, intremap IOMMU
requires split I/O APIC (per virDomainDefIOMMUValidate()). Since
after my previous commits (e.g. v10.10.0-rc1~183) IOMMU is added
automagically, the I/O APIC can be also enabled automagically.

Relates to: https://issues.redhat.com/browse/RHEL-65844
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 months agologging: Change return type of virLogDaemonConfigFilePat to void
Alexander Kuznetsov [Mon, 16 Dec 2024 09:41:08 +0000 (12:41 +0300)] 
logging: Change return type of virLogDaemonConfigFilePat to void

This function return value is invariant since 18f3771, so change
its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoutil: Change return type of virSCSIVHostDeviceSetUsedBy to void
Alexander Kuznetsov [Mon, 16 Dec 2024 09:41:07 +0000 (12:41 +0300)] 
util: Change return type of virSCSIVHostDeviceSetUsedBy to void

This function return value is invariant since 18f3771, so change
its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoutil: Change return type of virSCSIDeviceSetUsedBy to void
Alexander Kuznetsov [Mon, 16 Dec 2024 09:41:06 +0000 (12:41 +0300)] 
util: Change return type of virSCSIDeviceSetUsedBy to void

This function return value is invariant since 18f3771, so change
its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoutil: Change return type of virPCIDeviceSetUsedBy to void
Alexander Kuznetsov [Mon, 16 Dec 2024 09:41:05 +0000 (12:41 +0300)] 
util: Change return type of virPCIDeviceSetUsedBy to void

This function return value is invariant since 18f3771, so change
its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoqemu: re-use existing ActualNetDef for more interface types during update-device
Laine Stump [Tue, 26 Nov 2024 03:51:04 +0000 (22:51 -0500)] 
qemu: re-use existing ActualNetDef for more interface types during update-device

For the full history behind this patch, look at the following:

   https://issues.redhat.com/browse/RHEL-7036
   commit v10.7.0-101-ga37bd2a15b
   commit v10.8.0-rc2-8-gbcd5ae4e73

Summary: original problem was unexpected failure of update-device when
the user hadn't changed anything other than online status of the guest
NIC (which should always be allowed).

The first commit "fixed" this by avoiding the allocation of a new
ActualNetDef (i.e. creating a new networkport) for *all* network
device updates (because that was inappropriately changing which
ethernet physdev should be used for a macvtap connection, which by
design can't be handled in an update-device).

But this commit caused a regression for update-device of bridge-based
network devices (because some the updates of certain attributes *do*
require the ActualNetDef be re-allocated), so...

The 2nd commit narrowed the list of network types that get the "don't
allocate new ActualNetDef" treatment (so that only interfaces
connected to a network that uses a pool of ethernet VFs *being used in
passthrough mode* qualify).

But then it was pointed out that this re-broke simple updates of
devices that used a direct/macvtap network in "bridge" mode (because
it's possible to list multiple physdevs to use for bridge mode, in
which case the network driver attempts to "load balance" (and so a new
allocation might have a different ethernet physdev which, again, can't
be supported in a device-update).

So this (single line of code) patch *widens* the list of network types
that don't allocate a new ActualNetDef to also include the other
direct (macvtap) modes, e.g. bridge, private, etc.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agoutil: virsysinfo: Change return type of functions that never fail to void
Alexander Kuznetsov [Thu, 28 Nov 2024 15:21:22 +0000 (18:21 +0300)] 
util: virsysinfo: Change return type of functions that never fail to void

These functions return value is invariant since VIR_EXPAND_N check
removal in 7d2fd6e, so change its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agohyperv: Change return type of hypervCheckParams to void
Alexander Kuznetsov [Thu, 28 Nov 2024 15:21:21 +0000 (18:21 +0300)] 
hyperv: Change return type of hypervCheckParams to void

This function return value is invariant since VIR_EXPAND_N check
removal in 7d2fd6e, so change its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agorpc: Change return type of virNetClientAddStream to void
Alexander Kuznetsov [Thu, 28 Nov 2024 15:21:20 +0000 (18:21 +0300)] 
rpc: Change return type of virNetClientAddStream to void

This function return value is invariant since VIR_EXPAND_N check
removal in 7d2fd6e, so change its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agorpc: Change return type of virNetClientAddProgram to void
Alexander Kuznetsov [Thu, 28 Nov 2024 15:21:19 +0000 (18:21 +0300)] 
rpc: Change return type of virNetClientAddProgram to void

This function return value is invariant since VIR_EXPAND_N check
removal in 7d2fd6e, so change its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agorpc: Change return type of virNetServerAddProgram to void
Alexander Kuznetsov [Thu, 28 Nov 2024 15:21:18 +0000 (18:21 +0300)] 
rpc: Change return type of virNetServerAddProgram to void

This function return value is invariant since VIR_EXPAND_N check
removal in 7d2fd6e, so change its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoaccess: Change return type of virAccessDriverStackAppend to void
Alexander Kuznetsov [Thu, 28 Nov 2024 15:21:17 +0000 (18:21 +0300)] 
access: Change return type of virAccessDriverStackAppend to void

This function return value is invariant since VIR_EXPAND_N check
removal in 7d2fd6e, so change its type and remove all dependent checks.

Found by Linux Verification Center (linuxtesting.org) with Svace.

Reported-by: Pavel Nekrasov <p.nekrasov@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
7 months agocpu_map: Add EPYC-Genoa-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 15:02:17 +0000 (16:02 +0100)] 
cpu_map: Add EPYC-Genoa-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Opteron_G5-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 15:01:20 +0000 (16:01 +0100)] 
cpu_map: Add Opteron_G5-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Opteron_G4-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:49:46 +0000 (15:49 +0100)] 
cpu_map: Add Opteron_G4-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Opteron_G3-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:48:47 +0000 (15:48 +0100)] 
cpu_map: Add Opteron_G3-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Opteron_G2-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:47:52 +0000 (15:47 +0100)] 
cpu_map: Add Opteron_G2-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Opteron_G1-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:45:11 +0000 (15:45 +0100)] 
cpu_map: Add Opteron_G1-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add phenom-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:44:29 +0000 (15:44 +0100)] 
cpu_map: Add phenom-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add athlon-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:43:25 +0000 (15:43 +0100)] 
cpu_map: Add athlon-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add KnightsMill-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:42:16 +0000 (15:42 +0100)] 
cpu_map: Add KnightsMill-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Penryn-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:41:18 +0000 (15:41 +0100)] 
cpu_map: Add Penryn-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add Conroe-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:38:08 +0000 (15:38 +0100)] 
cpu_map: Add Conroe-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add kvm64-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:37:01 +0000 (15:37 +0100)] 
cpu_map: Add kvm64-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add qemu64-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:36:14 +0000 (15:36 +0100)] 
cpu_map: Add qemu64-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add kvm32-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:35:19 +0000 (15:35 +0100)] 
cpu_map: Add kvm32-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add qemu32-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:34:21 +0000 (15:34 +0100)] 
cpu_map: Add qemu32-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add core2duo-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:32:57 +0000 (15:32 +0100)] 
cpu_map: Add core2duo-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add n270-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:32:08 +0000 (15:32 +0100)] 
cpu_map: Add n270-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add coreduo-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:30:57 +0000 (15:30 +0100)] 
cpu_map: Add coreduo-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add pentium3-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:28:21 +0000 (15:28 +0100)] 
cpu_map: Add pentium3-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add pentium2-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:25:30 +0000 (15:25 +0100)] 
cpu_map: Add pentium2-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add pentium-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:23:04 +0000 (15:23 +0100)] 
cpu_map: Add pentium-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Add 486-v1 CPU model
Jiri Denemark [Thu, 5 Dec 2024 14:20:54 +0000 (15:20 +0100)] 
cpu_map: Add 486-v1 CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agosync_qemu_models_i386: Generate missing -v1 variants
Jiri Denemark [Thu, 28 Nov 2024 12:40:16 +0000 (13:40 +0100)] 
sync_qemu_models_i386: Generate missing -v1 variants

QEMU supports -v1 variant of any CPU model even though the list of
versions is not defined (i.e., even if { .version = 1 } item is
missing).

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agosync_qemu_models_i386: Update meson.build
Jiri Denemark [Thu, 28 Nov 2024 12:39:29 +0000 (13:39 +0100)] 
sync_qemu_models_i386: Update meson.build

When adding new CPU models to CPU map it's easy (and very common) to
forget to add the new files to meson.build. We already update index.xml
with the new models so updating meson.build too makes sense.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agocpu_map: Sort data files in meson.build
Jiri Denemark [Thu, 28 Nov 2024 12:24:49 +0000 (13:24 +0100)] 
cpu_map: Sort data files in meson.build

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agovirsh: Fix --timeout option of migrate command
Jiri Denemark [Wed, 27 Nov 2024 12:24:44 +0000 (13:24 +0100)] 
virsh: Fix --timeout option of migrate command

When starting a migration with --timeout, we create a thread to call the
migration API and in parallel setup a timer for the timeout. The
description of --timeout says: "run action specified by --timeout-*
option (suspend by default) if live migration exceeds timeout", which is
not really the way this feature was implemented. Before live migration
starts we first need to contact the source to get the domain definition
and send it to the destination where a new QEMU process has to be
started. This can take some (unpredictably long) time while the timeout
timer is already running. If a very short timeout is set (which doesn't
really make sense, but it's allowed), we may even end up taking the
timeout action before the actual migration had a chance to start.

With this patch the timeout is started only after we get non-zero
dataTotal from virDomainGetJobInfo, which means the migration (of either
storage or memory) really started.

https://issues.redhat.com/browse/RHEL-41264

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agoqemu: Grab a QUERY job when formatting domain XML
Michal Privoznik [Wed, 11 Dec 2024 12:26:45 +0000 (13:26 +0100)] 
qemu: Grab a QUERY job when formatting domain XML

It may happen that, for instance after daemon restart, that one
thread is still in qemuProcessReconnect(), i.e. filling in
runtime information by talking to QEMU on monitor. If another
thread then tries to format domain XML (which is currently
guarded by plain mutex on virDomainObj) it'll produce incomplete
and misleading information (e.g. current size of virtio-mem).
This happens because the reconnecting thread talks to QEMU on
monitor and thus unlocks the domain object frequently allowing
the XML formatting thread to acquire the mutex meanwhile.

Resolves: https://issues.redhat.com/browse/RHEL-71042
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 months agoch: Enable user aliases
Praveen K Paladugu [Tue, 3 Dec 2024 19:42:49 +0000 (13:42 -0600)] 
ch: Enable user aliases

Enable parsing user aliases in ch driver.

Signed-off-by: Praveen K Paladugu <praveenkpaladugu@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 months agoqemu: tpm: do not update profile name for transient domains
Ján Tomko [Tue, 3 Dec 2024 11:00:08 +0000 (12:00 +0100)] 
qemu: tpm: do not update profile name for transient domains

If we do not have a persistent definition, there's no point in
looking for it since we cannot store it.

Also skip the update if the tpm device(s) in the persistent
definition are different.

This fixes the crash when starting a transient domain.

https://issues.redhat.com/browse/RHEL-69774
https://gitlab.com/libvirt/libvirt/-/issues/715

Fixes: d79542eec669eb9c449bb8228179e7a87e768017
Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
7 months agovirt-aa-helper: allow riscv64 EDK II
Heinrich Schuchardt [Mon, 9 Dec 2024 11:41:10 +0000 (12:41 +0100)] 
virt-aa-helper: allow riscv64 EDK II

Debian has packaged EDK II for 64-bit RISC-V in directory
/usr/share/qemu-efi-riscv64/.

For usage with libvirt update the AppArmor helper.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
7 months agoqemuDomainDiskChangeSupportedIothreads: Change error wording to fix grammar
Peter Krempa [Tue, 10 Dec 2024 07:54:29 +0000 (08:54 +0100)] 
qemuDomainDiskChangeSupportedIothreads: Change error wording to fix grammar

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
7 months agorpm: replace 'git' with 'git-core'
Daniel P. Berrangé [Wed, 4 Dec 2024 08:47:35 +0000 (08:47 +0000)] 
rpm: replace 'git' with 'git-core'

We don't need the full git package, git-core is sufficient and a smaller
build root install.

Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 months agoqemu: enable QEMU core dump by default on Linux
Daniel P. Berrangé [Fri, 29 Nov 2024 11:42:07 +0000 (11:42 +0000)] 
qemu: enable QEMU core dump by default on Linux

The Linux MADV_DONTDUMP flag was added to Linux kernels > 3.3,
back in 2012, and the dump-guest-core flag was added to QEMU
> 1.0 at the same time.

IOW, on Linux we have long been able to assume that QEMU core
dumps will exclude guest memory, unless the user has overridden
the host level defaults in the domain XML.

It is desirable to permit QEMU core dumps out of the box to make
it easier for users to report crashes to their OS vendor without
having to reconfigure and restart libvirt daemons and their
running guests.

While there is a risk that an admin may have set 'dump_guest_core'
to true, while leaving 'max_core' to 0, on balance the benefits
of easier troubleshooting outweigh the risk of changing the
defaults to permit core dumps.

Reviewed-by: Richard W.M. Jones <rjones@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 months agolxc: remove no longer working netns check
Leigh Brown [Tue, 3 Dec 2024 16:02:08 +0000 (16:02 +0000)] 
lxc: remove no longer working netns check

Since iproute2 v6.12.0, the command "ip link set lo netns -1" can
no longer be used to check for netns support, as it now validates
PIDs are not less than zero.

Since every kernel we care about has the support, just remove the
check.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
7 months agoutil: Fix typo in virNetDevOpenvswitchInterfaceSetQos
Jiri Denemark [Wed, 4 Dec 2024 10:53:47 +0000 (11:53 +0100)] 
util: Fix typo in virNetDevOpenvswitchInterfaceSetQos

The typo is causing virtqemud to crash when starting a domain with ovs
bridge interface and QOS.

https://issues.redhat.com/browse/RHEL-69840

Fixes: a3b8753db975d8b92b122ccc7daee986974f8b18
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 months agoPost-release version bump to 11.0.0
Jiri Denemark [Mon, 2 Dec 2024 12:20:38 +0000 (13:20 +0100)] 
Post-release version bump to 11.0.0

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoRelease of libvirt-10.10.0 v10.10.0
Jiri Denemark [Mon, 2 Dec 2024 12:16:51 +0000 (13:16 +0100)] 
Release of libvirt-10.10.0

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
7 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Sat, 30 Nov 2024 22:38:37 +0000 (23:38 +0100)] 
Translated using Weblate (Swedish)

Currently translated at 98.3% (10383 of 10555 strings)

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/sv/

Signed-off-by: Göran Uddeborg <goeran@uddeborg.se>
Translated using Weblate (Swedish)

Currently translated at 98.1% (10364 of 10555 strings)

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/sv/

Signed-off-by: Göran Uddeborg <goeran@uddeborg.se>
8 months agodocs: document external swtpm v10.10.0-rc2
Ján Tomko [Wed, 20 Nov 2024 14:20:17 +0000 (15:20 +0100)] 
docs: document external swtpm

When external swtpm support was added back in 9.0.0, I omitted
the update of the XML docs.

Add it now, especially since the 'emulator' backend can now
also use the <source> element.

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Thu, 28 Nov 2024 09:29:15 +0000 (10:29 +0100)] 
Translated using Weblate (Swedish)

Currently translated at 97.9% (10343 of 10555 strings)

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/sv/

Signed-off-by: Göran Uddeborg <goeran@uddeborg.se>
8 months agoTranslated using Weblate (Korean)
김인수 [Thu, 28 Nov 2024 09:29:14 +0000 (10:29 +0100)] 
Translated using Weblate (Korean)

Currently translated at 100.0% (10555 of 10555 strings)

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/ko/

Signed-off-by: 김인수 <simmon@nplob.com>
Translated using Weblate (Korean)

Currently translated at 99.7% (10526 of 10555 strings)

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/ko/

Signed-off-by: 김인수 <simmon@nplob.com>
8 months agoNEWS: Document features/improvements/bug fixes I've participated in
Michal Privoznik [Thu, 28 Nov 2024 09:34:16 +0000 (10:34 +0100)] 
NEWS: Document features/improvements/bug fixes I've participated in

There are some features/improvements/bug fixes I've either
contributed or reviewed/merged. Document them for upcoming
release.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agovirschematest: Don't skip all "directory" tests
Peter Krempa [Thu, 28 Nov 2024 07:48:49 +0000 (08:48 +0100)] 
virschematest: Don't skip all "directory" tests

Due to a bug in the optimization to avoid testing symlinked tests
multiple times all tests were skipped.

In commit f997fcca71a16b102e6ee663 I made an attempt to optimize the
tests by avoiding testing symlinks. This optimization was buggy as I've
passed the 'd_name' field of 'struct dirent' which is just the filename
to 'g_lstat()'. 'g_lstat()' obviously always failed with ENOENT. As the
logic checked only for successful return of 'g_lstat()' the optimizatio
was a dud.

Now in 4d8ebbfee83edb2 the 'g_lstat()' call was replaced by
'virFileIsLink()' checking all non-zero values. This meant that if
'virFileIsLink()' failed the test was skipped. Now since a bad argument
was passed this failed always and thus was always skipped making
'virschematest' useless.

Fix it by passing the full path of the test and also explicitly check
for '1' return value instead of any non-zero.

Fixes: f997fcca71a16b102e6ee663a3fb86bed8de9d7d
Fixes: 4d8ebbfee83edb26b19a62465b9f98d0126db991
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoschemas: domaincaps: Add schema for CPU 'blockers'
Peter Krempa [Thu, 28 Nov 2024 07:28:19 +0000 (08:28 +0100)] 
schemas: domaincaps: Add schema for CPU 'blockers'

Due to broken 'virschematest' commit f4dc248a952aaebcc793c7809c6c083d9
forgot to introduce schema for the new element.

Fixes: f4dc248a952aaebcc793c7809c6c083d9cc30d0c
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoschemas: domaincaps: Add schema for 'canonical' cpu model name
Peter Krempa [Thu, 28 Nov 2024 07:27:48 +0000 (08:27 +0100)] 
schemas: domaincaps: Add schema for 'canonical' cpu model name

Due to 'virschematest' being broken commit fff2bbee7feb0fdfbf40aac4fe9
forgot to add schema for the new attribute.

Fixes: fff2bbee7feb0fdfbf40aac4fe9efd070f72ce9e
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoschemas: domaincaps: Add schema for 'panic' device
Peter Krempa [Thu, 28 Nov 2024 07:47:32 +0000 (08:47 +0100)] 
schemas: domaincaps: Add schema for 'panic' device

Due to 'virschematest' being broken commit a52cd504b3618c67abf3a07c669
introduced a new element to the domain caps but didn't add schema for
it.

Fixes: a52cd504b3618c67abf3a07c669fd5e5ab18aa50
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoschemas: domain: Make <identity> subelement of NFS disk source optional
Peter Krempa [Thu, 28 Nov 2024 08:05:13 +0000 (09:05 +0100)] 
schemas: domain: Make <identity> subelement of NFS disk source optional

Both the 'user' and 'group' attribute are optional so <identity> can
be empty. Allow it to be omitted completely. The parser and qemu code
can handle that.

The schema was introduced in 943871f971d680f72726a9d6e9330eec264f6588
and in d018c8dc9ebcd0496c7a564bc2e8b1c9cbd8d96f an offending test was
added.

Fixes: 943871f971d680f72726a9d6e9330eec264f6588
Fixes: d018c8dc9ebcd0496c7a564bc2e8b1c9cbd8d96f
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoNEWS: Mention qcow2 'data-file', block NVRAM, and internal snapshot reversion
Peter Krempa [Wed, 27 Nov 2024 14:06:15 +0000 (15:06 +0100)] 
NEWS: Mention qcow2 'data-file', block NVRAM, and internal snapshot reversion

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemuDomainGetStorageSourceByDevstr: Lookup also '<dataStore>'
Peter Krempa [Tue, 26 Nov 2024 14:59:43 +0000 (15:59 +0100)] 
qemuDomainGetStorageSourceByDevstr: Lookup also '<dataStore>'

The <dataStore> volumes have their own 'id' so we need to be able to
look them up for the given image chain.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemuDomainVirStorageSourceFindByNodeName: Match also '<dataStore>' sources
Peter Krempa [Tue, 26 Nov 2024 08:35:47 +0000 (09:35 +0100)] 
qemuDomainVirStorageSourceFindByNodeName: Match also '<dataStore>' sources

As the source for the data file is a completely separate
virStorageSource including it's own index we need to match it
explicitly, so that code such as storage threshold events work properly
and separately for the data file.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemuDomainVirStorageSourceFindByNodeName: Extract nodename matching
Peter Krempa [Tue, 26 Nov 2024 08:31:57 +0000 (09:31 +0100)] 
qemuDomainVirStorageSourceFindByNodeName: Extract nodename matching

Extract the matching of the node name of a single virStorage source so
that the logic can be reused in the upcoming patch.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemu: snapshot: Change 'data-file' to read-only after snapshot
Peter Krempa [Tue, 26 Nov 2024 09:23:23 +0000 (10:23 +0100)] 
qemu: snapshot: Change 'data-file' to read-only after snapshot

For the reason outlined in previous commit qemu doesn't do this
automatically. Handle it manually after the snapshot.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemu: block: Ensure that <dataStore> is in appropriate state
Peter Krempa [Tue, 26 Nov 2024 08:12:01 +0000 (09:12 +0100)] 
qemu: block: Ensure that <dataStore> is in appropriate state

In contrast to normal backing chain members where qemu does honour the
'auto-read-only' property the 'data-file' nodes are not automatically
reopened by qemu. Libvirt now has the infrastructure to reopen them
explicitly so use it for all transitions of the 'commit' block job.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemuBlockReopenAccess: Don't require backing chain terminator for non-chained images
Peter Krempa [Tue, 26 Nov 2024 08:10:10 +0000 (09:10 +0100)] 
qemuBlockReopenAccess: Don't require backing chain terminator for non-chained images

Add an exception for image formats not supporting backing images so that
they can be reopened RW/RO without the need for adding a terminating
virStorageSource as they simply can't have a backing image.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemuBlockReopenAccess: Fix update of 'readonly' state
Peter Krempa [Tue, 26 Nov 2024 12:20:56 +0000 (13:20 +0100)] 
qemuBlockReopenAccess: Fix update of 'readonly' state

Refactors done in 24b667eeed78d2df (and also 9ec0e28e876b17df9)
broke the expected handling of the update of 'readonly' flag of a
virStorage. The source is actually set to the proper state but rolled
back to the previous state as the 'cleanup' label should have been
'error' and thus not reached on success.

Additionally some of the code paths violate the statement in the comment
after updating 'readonly' that only 'goto error' must be used.

Fixes: 24b667eeed78d2df0376a38a592ed9d8c2744bdc
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemuBlockReopenAccess: Add debug log entry about state of the image
Peter Krempa [Tue, 26 Nov 2024 12:08:34 +0000 (13:08 +0100)] 
qemuBlockReopenAccess: Add debug log entry about state of the image

Log the node name and current and expected state to simplify debugging.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoqemu: Validate QoS values in qemuDomainSetInterfaceParameters()
Michal Privoznik [Wed, 27 Nov 2024 11:25:12 +0000 (12:25 +0100)] 
qemu: Validate QoS values in qemuDomainSetInterfaceParameters()

This is similar to one of my previous commits (v10.7.0-rc1~22)
which introduced a check that <bandwidth/> values fit into
certain limits. My original commit validated values when parsing
<bandwidth/> XML, but completely missed the case when values are
set over virDomainSetInterfaceParameters() API.

Solution is simple - just perform validation after bandwidth
structure is reconstructed from arguments passed to the API.

Resolves: https://issues.redhat.com/browse/RHEL-65372
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoNEWS: Document support for versioned CPU models
Jiri Denemark [Wed, 27 Nov 2024 09:02:08 +0000 (10:02 +0100)] 
NEWS: Document support for versioned CPU models

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agocpu: Check blockers in virCPUCompareUnusable only if they exist
Jiri Denemark [Wed, 27 Nov 2024 07:34:52 +0000 (08:34 +0100)] 
cpu: Check blockers in virCPUCompareUnusable only if they exist

virCPUCompareUnusable can be called with blockers == NULL in case the
CPU model itself is usable (i.e., QEMU reports an empty list of
blockers), but the CPU definition contains some additional features
which have to be checked.

Fixes: v10.8.0-129-g5f8abbb7d0
Reported-by: Han Han <hhan@redhat.com>
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Tested-by: Han Han <hhan@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agoUpdate translation files
Weblate [Tue, 26 Nov 2024 14:30:12 +0000 (15:30 +0100)] 
Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/

Signed-off-by: Fedora Weblate Translation <i18n@lists.fedoraproject.org>
8 months agopo: Refresh potfile for v10.10.0 v10.10.0-rc1
Jiri Denemark [Tue, 26 Nov 2024 14:26:38 +0000 (15:26 +0100)] 
po: Refresh potfile for v10.10.0

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Tue, 26 Nov 2024 14:13:19 +0000 (15:13 +0100)] 
Translated using Weblate (Swedish)

Currently translated at 98.0% (10325 of 10526 strings)

Translation: libvirt/libvirt
Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/sv/

Signed-off-by: Göran Uddeborg <goeran@uddeborg.se>
8 months agonetwork: add tc filter rule to nftables backend to fix checksum of DHCP responses
Laine Stump [Tue, 26 Nov 2024 03:24:49 +0000 (22:24 -0500)] 
network: add tc filter rule to nftables backend to fix checksum of DHCP responses

Please see the commit log for commit v10.9.0-rc1-1-g42ab0148dd for the
history and explanation of the problem that this patch is fixing.

A shorter explanation is that when a guest is connected to a libvirt
virtual network using a virtio-net adapter with in-kernel "vhost-net"
packet processing enabled, it will fail to acquire an IP address from
a DHCP seever running on the host.

In commit v10.9.0-rc1-1-g42ab0148dd we tried fixing this by *zeroing
out* the checksums of these packets with an nftables rule (nftables
can't recompute the checksum, but it can set it to 0) . This
*appeared* to work initially, but it turned out that zeroing the
checksum ends up breaking dhcp packets on *non* virtio/vhost-net guest
interfaces. That attempt was reverted in commit v10.9.0-rc2.

Fortunately, there is an existing way to recompute the checksum of a
packet as it leaves an interface - the "tc" (traffic control) utility
that libvirt already uses for bandwidth management. This patch uses a
tc filter rule to match dhcp response packets on the bridge and
recompute their checksum.

The filter rule must be attached to a tc qdisc, which may also have a
filter attached for bandwidth management (in the <bandwidth> element
of the network config). Not only must we add the qdisc only once
(which was already handled by the patch two prior to this one), but
also the filter rule for checksum fixing and the filter rule for
bandwidth management must be different priorities so they don't clash;
this is solved by adding the checksum-fix filter with "priority 2",
while the bandwidth management filter remains "priority 1" (both will
always be evaluated anyway, it's just a matter of which is evaluated
first).

So far this method has worked with every different guest we could
throw at it, including several that failed with the previous method.

Fixes: b89c4991daa0ee9371f10937fab3b03c5ffdabc6
Reported-by: Rich Jones <rjones@redhat.com>
Reported-by: Andrea Bolognani <abologna@redhat.com>
Fix-Suggested-by: Eric Garver <egarver@redhat.com>
Fix-Suggested-by: Phil Sutter <psutter@redhat.com>
Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoutil: add new "tc" layer for virFirewallCmd objects
Laine Stump [Tue, 26 Nov 2024 03:24:48 +0000 (22:24 -0500)] 
util: add new "tc" layer for virFirewallCmd objects

If the layer of a virFirewallCmd is "tc", then the "tc" utility will
be executed using the arguments that had been added to the
virFirewallCmd

tc layer doesn't support auto-rollback command creation (any rollback
needs to be added manually with virFirewallAddRollbackCmd()), and also
tc layer isn't supported by the iptables backend (it would have been
straightforward to add, but the iptables backend doesn't need it, and
I didn't want to take the chance of causing a regression in that
code for no good reason).

Signed-off-by: Laine Stump <laine@redhat.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoutil: don't re-add the qdisc used for tx filters if it already exists
Laine Stump [Tue, 26 Nov 2024 03:24:47 +0000 (22:24 -0500)] 
util: don't re-add the qdisc used for tx filters if it already exists

There will soon be two separate users of tc on virtual networks, and
both will use the "qdisc root handle 1: htb" to add tx filters. One or the
other could get the first chance to add the qdisc, and then if at a
later time the other decides to use it, we need to prevent the 2nd
user from attempting to re-add the qdisc (because that just generates
an error).

We do this by running "tc qdisc show dev $bridge handle 1:" then
checking if the output of that command contains both "qdisc" and " 1:
".[*] If it does then the qdisc has already been added. If not then we
need to add it now.

[*]As of this writing, the output more exactly starts with "qdisc
htb 1: root", but our comparison is made purposefully generous to
increase the chances that it will continue to work properly if tc
modifies the format of its output.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoutil: put the command that adds a tx filter qdisc into a separate function
Laine Stump [Tue, 26 Nov 2024 03:24:46 +0000 (22:24 -0500)] 
util: put the command that adds a tx filter qdisc into a separate function

virNetDevBandwidthSet() adds a queue discipline (qdisc) for each
interface that it will need to add tc transmit filters to, and the
filters are then attached to the qdisc.

There are other circumstances where some other function will need to
add tc transmit filters to an interface (in particular an upcoming
patch to the network driver nftables backend that will use a tc tx
filter to fix the checksum of dhcp packets), so that function will
also need a qdisc for the tx filter. To assure both always use exactly
the same qdisc, this patch puts the command that adds the tx filter
qdisc into a separate helper function that can (and will) be called
from either place

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoutil: make it optional to clear existing tc qdiscs/filters in virNetDevBandwidthSet()
Laine Stump [Tue, 26 Nov 2024 03:24:45 +0000 (22:24 -0500)] 
util: make it optional to clear existing tc qdiscs/filters in virNetDevBandwidthSet()

virNetDevBandwidthSet() always clears all existing qdiscs and their
subordinate filters before adding all the new qdiscs/filters. This is
normally exactly what we want, but there is one case (the network
driver) where the Qdisc added by virNetDevBandwidthSet() may already
be in use by the nftables backend (which will add a rule to fix the
checksum of dhcp packets); in that case, we *don't* want
virNetDevBandwidthSet() to clear out the qdisc that was already added
for nftables, and none of the bandwidth filters have been added yet,
so there already aren't any "old" filters that need to be removed
either - it is safe to just skip virNetDevBandwidthClear() in this
case.

To allow the network driver to set bandwidth without first clearing
it, this patch adds the flag VIR_NETDEV_BANDWIDTH_SET_CLEAR_ALL to the
virNetDevBandwidthSetFlags enum, and recognizes it in
virNetDevBandwidthSet() - if the flag is set, then
virNetDevBandwidth() will call virNetDevBandwidthClear() just as it
always has. But if the flag isn't set it *won't* call
virNetDevBandwidthClear().

As suggested above, VIR_NETDEV_BANDWIDTH_SET_CLEAR_ALL is set for all
calls to virNetdevBandwidthSet() except for two places in the network
driver.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoutil: use a single flags arg for virNetDevBandwidthSet(), not multiple bools
Laine Stump [Tue, 26 Nov 2024 03:24:44 +0000 (22:24 -0500)] 
util: use a single flags arg for virNetDevBandwidthSet(), not multiple bools

Having two bools in the arg list is on the borderline of being
confusing to anyone trying to read the code, but we're about to add a
3rd. This patch replaces the two bools with a single flags argument
which will instead have one or more bits from virNetDevBandwidthFlags
set.

Signed-off-by: Laine Stump <laine@redhat.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agocpu_map: Add KnightsMill CPU model
Jiri Denemark [Fri, 22 Nov 2024 13:44:01 +0000 (14:44 +0100)] 
cpu_map: Add KnightsMill CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add Denverton CPU model
Jiri Denemark [Fri, 22 Nov 2024 13:43:15 +0000 (14:43 +0100)] 
cpu_map: Add Denverton CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Dhyana CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:51:30 +0000 (11:51 +0200)] 
cpu_map: Add versions of Dhyana CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of EPYC CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:50:56 +0000 (11:50 +0200)] 
cpu_map: Add versions of EPYC CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of EPYC-Rome CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:51:07 +0000 (11:51 +0200)] 
cpu_map: Add versions of EPYC-Rome CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of EPYC-Milan CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:51:20 +0000 (11:51 +0200)] 
cpu_map: Add versions of EPYC-Milan CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Nehalem CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:45:34 +0000 (11:45 +0200)] 
cpu_map: Add versions of Nehalem CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Westmere CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:45:49 +0000 (11:45 +0200)] 
cpu_map: Add versions of Westmere CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of SandyBridge CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:46:01 +0000 (11:46 +0200)] 
cpu_map: Add versions of SandyBridge CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of IvyBridge CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:46:14 +0000 (11:46 +0200)] 
cpu_map: Add versions of IvyBridge CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Haswell CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:46:25 +0000 (11:46 +0200)] 
cpu_map: Add versions of Haswell CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Broadwell CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:46:34 +0000 (11:46 +0200)] 
cpu_map: Add versions of Broadwell CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Skylake-Client CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:46:49 +0000 (11:46 +0200)] 
cpu_map: Add versions of Skylake-Client CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Skylake-Server CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:46:57 +0000 (11:46 +0200)] 
cpu_map: Add versions of Skylake-Server CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Cascadelake-Server CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:47:10 +0000 (11:47 +0200)] 
cpu_map: Add versions of Cascadelake-Server CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Icelake-Server CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:47:28 +0000 (11:47 +0200)] 
cpu_map: Add versions of Icelake-Server CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Cooperlake CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:47:41 +0000 (11:47 +0200)] 
cpu_map: Add versions of Cooperlake CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of Snowridge CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:48:04 +0000 (11:48 +0200)] 
cpu_map: Add versions of Snowridge CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Add versions of SapphireRapids CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:48:14 +0000 (11:48 +0200)] 
cpu_map: Add versions of SapphireRapids CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>