]> git.ipfire.org Git - thirdparty/libvirt.git/log
thirdparty/libvirt.git
5 months agoqemucapabilitiestest: Drop qemu-6.0 data
Peter Krempa [Fri, 7 Mar 2025 15:54:18 +0000 (16:54 +0100)] 
qemucapabilitiestest: Drop qemu-6.0 data

Soon we'll bump to qemu-6.2 as minimum.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoqemucapabilitiestest: Drop qemu-5.2 data
Peter Krempa [Fri, 7 Mar 2025 15:54:18 +0000 (16:54 +0100)] 
qemucapabilitiestest: Drop qemu-5.2 data

Soon we'll bump to qemu-6.2 as minimum.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoqemuxmlconftest: Drop tests pinned to qemu-6.1
Peter Krempa [Fri, 7 Mar 2025 15:44:39 +0000 (16:44 +0100)] 
qemuxmlconftest: Drop tests pinned to qemu-6.1

Upcoming patches will bump minimum qemu version to 6.2 so we need to
purge old tests.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoqemuxmlconftest: Drop tests pinned to qemu-6.0
Peter Krempa [Fri, 7 Mar 2025 15:44:39 +0000 (16:44 +0100)] 
qemuxmlconftest: Drop tests pinned to qemu-6.0

Upcoming patches will bump minimum qemu version to 6.2 so we need to
purge old tests.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoqemuxmlconftest: Drop tests pinned to qemu-5.2
Peter Krempa [Fri, 7 Mar 2025 15:44:39 +0000 (16:44 +0100)] 
qemuxmlconftest: Drop tests pinned to qemu-5.2

Upcoming patches will bump minimum qemu version to 6.2 so we need to
purge old tests.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoconf: Drop support for 'sheepdog' disks
Peter Krempa [Fri, 7 Mar 2025 16:37:26 +0000 (17:37 +0100)] 
conf: Drop support for 'sheepdog' disks

In upcoming patches we'll update minimum supported qemu version to
qemu-6.2 which no longer supports 'sheepdog'. This was the only
hypervisor driver that supported it.

Reject any config containing sheepdog disks when validating the XML,
remove the positive test cases in qemu and replace them by a negative
test case. This will still excercise the XML schema, but will prepare
for removal of the internal code.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoci: refresh with 'lcitool manifest'
Pavel Hrdina [Thu, 6 Mar 2025 20:49:36 +0000 (21:49 +0100)] 
ci: refresh with 'lcitool manifest'

- Remove EOL Debian 11

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoutil: netdevvlan: Change return type of virNetDevVlanCopy to void
Alexander Kuznetsov [Fri, 7 Mar 2025 09:08:03 +0000 (12:08 +0300)] 
util: netdevvlan: Change return type of virNetDevVlanCopy to void

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

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

Reported-by: Alexander Rudyuk <a.rudyuk@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoutil: virxml: unexport virXMLFormatElementInternal
Pavel Hrdina [Thu, 6 Mar 2025 17:24:38 +0000 (18:24 +0100)] 
util: virxml: unexport virXMLFormatElementInternal

It is no longer used anywhere else.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: refactor virDomainLoaderDefFormatNvram
Pavel Hrdina [Thu, 6 Mar 2025 17:21:50 +0000 (18:21 +0100)] 
domain_conf: refactor virDomainLoaderDefFormatNvram

Use the new virXMLFormatDirect in order to remove usage of
virXMLFormatInternal.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoconf: use virXMLFormatElementDirect
Pavel Hrdina [Thu, 6 Mar 2025 14:32:47 +0000 (15:32 +0100)] 
conf: use virXMLFormatElementDirect

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoutil: virxml: introduce virXMLFormatElementDirect
Pavel Hrdina [Thu, 6 Mar 2025 14:31:46 +0000 (15:31 +0100)] 
util: virxml: introduce virXMLFormatElementDirect

This can be used to format XML where the element has direct value
instead of any subelement. For example:

    <maxMemory slots='16' unit='KiB'>1524288</maxMemory>

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoTranslated using Weblate (Spanish)
Nicolás Gal [Mon, 3 Mar 2025 21:00:37 +0000 (21:00 +0000)] 
Translated using Weblate (Spanish)

Currently translated at 52.6% (5704 of 10838 strings)

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

Signed-off-by: Nicolás Gal <nialegal@yandex.com>
5 months agodomain_conf: graphics: properly escape user provided strings when formatting XML
Pavel Hrdina [Thu, 6 Mar 2025 11:55:25 +0000 (12:55 +0100)] 
domain_conf: graphics: properly escape user provided strings when formatting XML

This was reported on virt-manager issue tracker as it was possible to
provide `listen` attribute with properly escaped characters but libvirt
would format XML without escaping it.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: fix error messages when formatting XML
Pavel Hrdina [Thu, 6 Mar 2025 11:51:49 +0000 (12:51 +0100)] 
domain_conf: graphics: fix error messages when formatting XML

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: move remaining VNC formatting
Pavel Hrdina [Thu, 6 Mar 2025 11:50:06 +0000 (12:50 +0100)] 
domain_conf: graphics: move remaining VNC formatting

Now we are able to move the rest into virDomainGraphicsDefFormatVNC
without breaking order of elements in the resulting XML.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: move remaining spice formatting
Pavel Hrdina [Thu, 6 Mar 2025 11:48:47 +0000 (12:48 +0100)] 
domain_conf: graphics: move remaining spice formatting

Now we are able to move the rest into virDomainGraphicsDefFormatSpice
without breaking order of elements in the resulting XML.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: move listens formatting to relevant graphics types
Pavel Hrdina [Thu, 6 Mar 2025 11:44:27 +0000 (12:44 +0100)] 
domain_conf: graphics: move listens formatting to relevant graphics types

Only VNC, RDP and Spice graphics types are using listen elements so call
the function only where it is needed.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract listen formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 11:14:14 +0000 (12:14 +0100)] 
domain_conf: graphics: extract listen formatting to separate function

This will be used in specific graphics types that are using listen
elements.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract DBus formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 11:11:33 +0000 (12:11 +0100)] 
domain_conf: graphics: extract DBus formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract EGL-Headless formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 11:09:22 +0000 (12:09 +0100)] 
domain_conf: graphics: extract EGL-Headless formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract Spice formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 11:04:07 +0000 (12:04 +0100)] 
domain_conf: graphics: extract Spice formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract Desktop formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 11:00:13 +0000 (12:00 +0100)] 
domain_conf: graphics: extract Desktop formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract RDP formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 10:51:04 +0000 (11:51 +0100)] 
domain_conf: graphics: extract RDP formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract SDL formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 10:48:39 +0000 (11:48 +0100)] 
domain_conf: graphics: extract SDL formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: extract VNC formatting to separate function
Pavel Hrdina [Thu, 6 Mar 2025 10:46:00 +0000 (11:46 +0100)] 
domain_conf: graphics: extract VNC formatting to separate function

virDomainGraphicsDefFormat function was way too long so split it into
separate functions for each graphics type.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: modernize graphics formatting
Pavel Hrdina [Thu, 6 Mar 2025 10:03:06 +0000 (11:03 +0100)] 
domain_conf: modernize graphics formatting

Use separate buffers for attributes and children elements to make the
code cleaner and to use the virXMLFormatElement() function.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: use a function to format audio element
Pavel Hrdina [Thu, 6 Mar 2025 09:42:11 +0000 (10:42 +0100)] 
domain_conf: graphics: use a function to format audio element

Removes code duplication.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_conf: graphics: use a function to format gl element
Pavel Hrdina [Thu, 6 Mar 2025 09:31:35 +0000 (10:31 +0100)] 
domain_conf: graphics: use a function to format gl element

Removes code duplication.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemu: support MSDM ACPI table type
Daniel P. Berrangé [Mon, 17 Feb 2025 16:58:27 +0000 (16:58 +0000)] 
qemu: support MSDM ACPI table type

The MSDM ACPI table is a replacement for the SLIC table type, now
sometimes used by Microsoft for Windows Licensing checks:

  https://learn.microsoft.com/en-us/previous-versions/windows/hardware/design/dn653305(v=vs.85)

Resolves: https://gitlab.com/libvirt/libvirt/-/issues/748
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoconf: support MSDM ACPI table type
Daniel P. Berrangé [Mon, 17 Feb 2025 16:58:27 +0000 (16:58 +0000)] 
conf: support MSDM ACPI table type

The MSDM ACPI table is an alternative for the SLIC table type,
sometimes used by Microsoft for Windows Licensing checks:

  https://learn.microsoft.com/en-us/previous-versions/windows/hardware/design/dn653305(v=vs.85)

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agolibxl: support 'rawset' ACPI table type
Daniel P. Berrangé [Wed, 26 Feb 2025 19:10:42 +0000 (19:10 +0000)] 
libxl: support 'rawset' ACPI table type

This fixes representation of the 'acpi_firmware' config in the Xen
driver, which repesents a concatenation of tables of any type.

Use of 'type=slic' is accepted on input for backwards compatibility.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoqemu: support 'raw' ACPI table type
Daniel P. Berrangé [Wed, 26 Feb 2025 19:10:42 +0000 (19:10 +0000)] 
qemu: support 'raw' ACPI table type

This allows passing a single ACPI table of any type through to QEMU with
the signture autodetected from the header.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agosrc: introduce 'raw' and 'rawset' ACPI table types
Daniel P. Berrangé [Wed, 26 Feb 2025 18:39:18 +0000 (18:39 +0000)] 
src: introduce 'raw' and 'rawset' ACPI table types

The QEMU driver has only accepted type=slic even though QEMU is able to
accept individual tables of any type, without needing to specify a
signature. Introduce type=raw to address this usage scenario. Contrary
to other types, this one may appear multiple times.

The Xen driver has mistakenly accepted type=slic and use it to set the
Xen acpi_firmware setting, which performs a simple passthrough of
multiple concatenated data table. Introduce type=rawset to address
this usage scenario.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agosrc: validate permitted ACPI table types in libxl/qemu drivers
Daniel P. Berrangé [Mon, 17 Feb 2025 16:39:29 +0000 (16:39 +0000)] 
src: validate permitted ACPI table types in libxl/qemu drivers

This forces us to update the drivers when defining new table types
to avoid incorrectly accepting them by default.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoconf: introduce support for multiple ACPI tables
Daniel P. Berrangé [Mon, 17 Feb 2025 16:30:07 +0000 (16:30 +0000)] 
conf: introduce support for multiple ACPI tables

Currently we parse

   <os>
     <acpi>
       <table type="slic">...path...</table>
     </acpi>
   </os>

into a flat 'char *slic_table' field which is rather an anti-pattern
as it has special cased a single attribute type.

This rewrites the internal design to permit multiple table types to
be parsed, should we add more in future. Each type is currently
permitted to only appear once.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agonwfilter: Fix deadlock between nwfilter-list and VM startup/migration
Dion Bosschieter [Tue, 18 Feb 2025 14:56:32 +0000 (15:56 +0100)] 
nwfilter: Fix deadlock between nwfilter-list and VM startup/migration

The `nwfilterBindingCreateXML` and `nwfilterConnectListAllNWFilters`
APIs can acquire locks on multiple instances of virNWFilterObj. There
is no guarantee they will acquire these locks in the same order as
each other. Thus there is a potential for deadlock if they run
concurrently acquiring locks on the same filter objects.

This flaw has always existed, but historically was rare, because
virNWFilterObjList previously used an array. This meant iteration
over filters had a fixed order, matching order of loading filters
into libvirt.  The set of filter references would have to be just
right to expose the lock ordering deadlock.

In 8.2.0, commit c4fb52dc72b312431a3a28e3a163b38441a95665 switched
to use a hash table, introducing non-determinism to the iteration
order, as hash buckets vary based on the hash seed. As such almost
any filter with references is exposed to the deadlock risk now.

It is not easy  to guarantee lock ordering on the virNWFilterObj
instances, so acquiring `driverMutex` first, will serve to serialize
all lock acquisition on virNWFilterObj instances, avoiding the
deadlock scenario.

The major cost is that concurrency of the driver is significantly
reduced, with few other APIs able to run in parallel with updating
firewall rules.

A long term solution to this problem needs significant changes

 * The mutex on virNWFilterObj would need to change to a R/W
   lock.
 * The filter instantiation/teardown process would need to split
   into two phases. The first phase would resolve all the required
   virNWFilterObj instances & acquire read locks, while holding
   the 'driverMutex'. The second phase of running iptables/ebtables
   commands would then run without driverMutex held.
 * The filter define/undefine APIs would need to acquire write
   locks, other APIs only read locks.

This would allow concurrency of filter instantiation/teardown
with everything except for filter defnie/undefine, which was
the original desire.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
[DPB: rewrite commit message & add inline comment]
Signed-off-by: Dion Bosschieter <dionbosschieter@gmail.com>
5 months agoqemu: snapshot: Remove dead code in qemuSnapshotDeleteBlockJobFinishing()
Alexander Kuznetsov [Wed, 22 Jan 2025 14:14:31 +0000 (17:14 +0300)] 
qemu: snapshot: Remove dead code in qemuSnapshotDeleteBlockJobFinishing()

qemuSnapshotDeleteBlockJobFinishing() returns only 0 and 1. Convert it
to bool and remove the dead code handling -1 return in the caller.

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

Reported-by: Reported-by: Andrey Slepykh <a.slepykh@fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam@altlinux.org>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agodocs: Fix formatting in formatdomain.rst
Yalan Zhang [Wed, 5 Mar 2025 08:07:38 +0000 (16:07 +0800)] 
docs: Fix formatting in formatdomain.rst

The combination of italics and the since tag does not work together.

Remove it from the paragraph about using passt with vhostuser,
as well as the parentheses around it.

Signed-off-by: Yalan Zhang <yalzhang@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
5 months agodomain_caps: Don't leak 'cpu0_id' in 'virSEVCapabilitiesFree'
Peter Krempa [Thu, 6 Mar 2025 13:06:46 +0000 (14:06 +0100)] 
domain_caps: Don't leak 'cpu0_id' in 'virSEVCapabilitiesFree'

Freeing the 'virSEVCapability' object leaked the 'cpu0_id' field since
its introduction.

Fixes: 0236e6154c46603bc443eda2f05c8ce511c55b08
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
5 months agoqemuxmlconftest: Add '+amdsev' versions of the rest of 'launch-security-sev*' cases
Peter Krempa [Tue, 4 Mar 2025 11:46:33 +0000 (12:46 +0100)] 
qemuxmlconftest: Add '+amdsev' versions of the rest of 'launch-security-sev*' cases

While the 'launch-security-sev-direct' and 'launch-security-sev-snp'
cases use "latest" caps, they use the non-sev variant and add-in the
relevant capabilities.

To do the test properly we can add '+amdsev' variant which uses caps
fetched from a real host that does support all the capabilities.

The output files are identical, although they are not added as symlinks
to prevent headaches if they do diverge at some point.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agoqemuxmlconftest: Add 'latest' version of 'launch-security-sev*' originally using...
Peter Krempa [Tue, 4 Mar 2025 11:46:33 +0000 (12:46 +0100)] 
qemuxmlconftest: Add 'latest' version of 'launch-security-sev*' originally using 6.0.0

The 'launch-security-sev' and
'launch-security-sev-missing-platform-info' tests run agains the
qemu-6.0.0 caps which were manually doctored to support SEV.

Since we now have the '+amdsev' variant dumped from a more modern qemu
add another invocation of the tests.

The only relevant difference in the output data is 'cbitpos' being '51'
on the new platform, for the test case which explicitly doesn't
configure it.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agoqemuxmlconftest: Propery discriminate output files for caps variants
Peter Krempa [Tue, 4 Mar 2025 09:56:23 +0000 (10:56 +0100)] 
qemuxmlconftest: Propery discriminate output files for caps variants

While the 'qemuxmlconftest' was able to load capability variants the
output file name didn't include the variant thus it was not possible to
test the same input file both on the default variant and on an explicit
variant.

Include the variant in the output file name and adjust two output file
names.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agoqemucapabilitiestest: Add test data for 'qemu-9.2' on a SEV-enabled AMD host
Peter Krempa [Mon, 3 Mar 2025 16:49:30 +0000 (17:49 +0100)] 
qemucapabilitiestest: Add test data for 'qemu-9.2' on a SEV-enabled AMD host

Introduce the test data as 'qemu_9.2.0.x86_64+amdsev' to test
SEV-related capability code.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agoqemucapabilitiesdata: Document '+amdsev' variant
Peter Krempa [Tue, 4 Mar 2025 09:12:11 +0000 (10:12 +0100)] 
qemucapabilitiesdata: Document '+amdsev' variant

Upcoming patch will introduce test data from an SEV-enabled host.
Document the new variant.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agodomaincapstest: Allow tests of all capability variants
Peter Krempa [Tue, 4 Mar 2025 08:41:02 +0000 (09:41 +0100)] 
domaincapstest: Allow tests of all capability variants

Currently only the default variant ("") and "+hvf" are present in our
test data but upcoming patches will add another variant.

Upcoming test variants may not require any special handling so we should
be able to handle them using the default code path now that 'variant' is
properly propagated inside the test code.

Remove the restriction to test only the default ("") and "+hvf" variant
and modify the documentation to state that any other variant is tested
the same way as the default one.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agodomaincapstest: Use proper input file based on 'variant' in 'fillQemuCaps'
Peter Krempa [Mon, 3 Mar 2025 17:18:06 +0000 (18:18 +0100)] 
domaincapstest: Use proper input file based on 'variant' in 'fillQemuCaps'

The qemu part of 'domaincapstest' supports testing of the '+hvf' variant
of files, but doesn't properly pick the input file. The input file lacks
the variant part thus the wrong file is used.

Propagate the variant and select the correct input file.

Fixes: 738c5bae888cfa72ed359899cf1a41fed9dbb0f5
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agoqemu: capabilities: Parse 'cpu0Id' from capability cache XML
Peter Krempa [Mon, 3 Mar 2025 17:17:46 +0000 (18:17 +0100)] 
qemu: capabilities: Parse 'cpu0Id' from capability cache XML

The 'cpu0Id' field is formatted into the caps cache XML but not parsed
back; thus restart of the daemon will make it vanish.

Fixes: 0236e6154c46603bc443eda2f05c8ce511c55b08
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
5 months agoconf: change virDomainDefAddImplicitControllers() to return void
Laine Stump [Wed, 12 Feb 2025 03:59:46 +0000 (22:59 -0500)] 
conf: change virDomainDefAddImplicitControllers() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefMaybeAddSmartcardController() to return void
Laine Stump [Wed, 12 Feb 2025 03:55:28 +0000 (22:55 -0500)] 
conf: change virDomainDefMaybeAddSmartcardController() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefMaybeAddVirtioSerialController() to return void
Laine Stump [Wed, 12 Feb 2025 03:53:30 +0000 (22:53 -0500)] 
conf: change virDomainDefMaybeAddVirtioSerialController() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefAddDiskControllersForType() to return void
Laine Stump [Wed, 12 Feb 2025 03:51:32 +0000 (22:51 -0500)] 
conf: change virDomainDefAddDiskControllersForType() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefMaybeAddHostdevSCSIcontroller() to return void
Laine Stump [Wed, 12 Feb 2025 03:48:07 +0000 (22:48 -0500)] 
conf: change virDomainDefMaybeAddHostdevSCSIcontroller() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefMaybeAddController() to return true/false
Laine Stump [Wed, 12 Feb 2025 03:43:22 +0000 (22:43 -0500)] 
conf: change virDomainDefMaybeAddController() to return true/false

This function can't fail, but it has always returned 1 if a controller
is added and 0 if not, and there is one place that checks for a 1
return, so we remove the -1 return and change it to return true/false
instead of 1/0.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agohyperv: change hypervDomainDefAppendController() to return void
Laine Stump [Wed, 12 Feb 2025 02:43:26 +0000 (21:43 -0500)] 
hyperv: change hypervDomainDefAppendController() to return void

It can't fail. And as a result, hypervDomainDefAppendSCSIController() and
hypervDomainDefAppendIDEController() can also be changed to return void.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefAddUSBController() to return void
Laine Stump [Wed, 12 Feb 2025 02:36:26 +0000 (21:36 -0500)] 
conf: change virDomainDefAddUSBController() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: stop checking for NULL return from virDomainDefAddController()
Laine Stump [Wed, 12 Feb 2025 02:31:09 +0000 (21:31 -0500)] 
conf: stop checking for NULL return from virDomainDefAddController()

It can't fail, so the caller doesn't need to check the return.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: stop checking for NULL return from virDomainControllerDefNew()
Laine Stump [Wed, 12 Feb 2025 02:08:03 +0000 (21:08 -0500)] 
conf: stop checking for NULL return from virDomainControllerDefNew()

It can't fail, so the caller doesn't need to check the return.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change qemuDomainDefAddImplicitInputDevice() to return void
Laine Stump [Wed, 12 Feb 2025 01:55:39 +0000 (20:55 -0500)] 
conf: change qemuDomainDefAddImplicitInputDevice() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agolibxl: change xenDomainDefAddImplicitInputDevice() to return void
Laine Stump [Wed, 12 Feb 2025 01:44:51 +0000 (20:44 -0500)] 
libxl: change xenDomainDefAddImplicitInputDevice() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainDefMaybeAddInput() to return void
Laine Stump [Tue, 11 Feb 2025 22:03:44 +0000 (17:03 -0500)] 
conf: change virDomainDefMaybeAddInput() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainShmemDefInsert() to return void
Laine Stump [Tue, 11 Feb 2025 21:55:33 +0000 (16:55 -0500)] 
conf: change virDomainShmemDefInsert() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainFSInsert() to return void
Laine Stump [Tue, 11 Feb 2025 21:52:45 +0000 (16:52 -0500)] 
conf: change virDomainFSInsert() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoconf: change virDomainNetInsert() to return void
Laine Stump [Tue, 11 Feb 2025 21:49:17 +0000 (16:49 -0500)] 
conf: change virDomainNetInsert() to return void

It can't fail.

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoci: refresh with 'lcitool manifest'
Pavel Hrdina [Tue, 18 Feb 2025 18:16:01 +0000 (19:16 +0100)] 
ci: refresh with 'lcitool manifest'

Replace Alpine Linux v3.19 with v3.21.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoci: use Fedora 41 to run integration tests
Pavel Hrdina [Tue, 18 Feb 2025 18:14:02 +0000 (19:14 +0100)] 
ci: use Fedora 41 to run integration tests

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agoci: use iptables to run libvirt-tck
Pavel Hrdina [Tue, 18 Feb 2025 18:10:58 +0000 (19:10 +0100)] 
ci: use iptables to run libvirt-tck

On current Fedora libvirt uses nftables by default but the libvirt-tck
tests are not ready for it and most of the nwfilter tests fail. We need
to keep using iptables for now.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
5 months agodocs/api.rst: revert erroneously change of Once -> OnDevice
Cleber Rosa [Tue, 4 Mar 2025 02:19:49 +0000 (21:19 -0500)] 
docs/api.rst: revert erroneously change of Once -> OnDevice

Commit af1b89d1d for some reason changed a perfectly fine statement to
one that I could not understand.  Let's revert it.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
5 months agomeson: Generate runstatedir according to newer standard
Michal Privoznik [Tue, 25 Feb 2025 16:49:20 +0000 (17:49 +0100)] 
meson: Generate runstatedir according to newer standard

While previously FHS 2.3 defined /var/run as a place to store
runtime information [1] it's no longer 2004 and newer
specification was released which favors /run [2]. Since it was
released 10 years ago, maybe it's time we start honouring it.

On majority of Linux systems (if not all), /var/run is a symlink
to /run anyways.

Users can still pass old location via -Drunstatedir.

1: https://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#VARRUNRUNTIMEVARIABLEDATA
2: https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s15.html

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agovirDomainHostdevDefNew: update users not to check return value
Roman Bogorodskiy [Wed, 26 Feb 2025 17:34:14 +0000 (18:34 +0100)] 
virDomainHostdevDefNew: update users not to check return value

virDomainHostdevDefNew() has been using g_new0() for a while now. As it
calls abort() on OOM, it's not necessary to check whether
the return value is NULL.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Laine Stump <laine@redhat.com>
5 months agoqemu: Add support for 'image_format' typed parameter
Jim Fehlig [Sat, 15 Feb 2025 00:01:38 +0000 (17:01 -0700)] 
qemu: Add support for 'image_format' typed parameter

Add support for the 'image_format' typed parameter in virDomainSaveParams.
The parameter overrides the 'save_image_format' setting in qemu.conf.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoinclude: Define constant for save image format
Jim Fehlig [Fri, 14 Feb 2025 23:26:12 +0000 (16:26 -0700)] 
include: Define constant for save image format

Add a new VIR_DOMAIN_SAVE_PARAM_IMAGE_FORMAT typed parameter for
specifying the save image format. A format specified via the
virDomainSaveParams API overrides the save_image_format setting
in qemu.conf. The 'raw' format remains the default.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoqemu: Check for valid save image formats when loading driver config
Jim Fehlig [Thu, 20 Feb 2025 21:28:35 +0000 (14:28 -0700)] 
qemu: Check for valid save image formats when loading driver config

Checking for valid 'foo_image_format' settings in qemu.conf is not done
until the settings are used. Move the checks to
virQEMUDriverConfigLoadSaveEntry, allowing to report incorrect format
settings at driver startup.

This change was made easier by also changing the corresponding fields
in the virQEMUDriverConfig to 'int', which is more in line with the
other fields that represent enumerated types.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoqemu: Change return value of SaveImageGetCompressionProgram
Jim Fehlig [Wed, 12 Feb 2025 04:46:59 +0000 (21:46 -0700)] 
qemu: Change return value of SaveImageGetCompressionProgram

qemuSaveImageGetCompressionProgram is a bit overloaded. Along with
getting a compression program, it checks the validity of the image
format and returns the integer representation of the format. Change
the function to only handle retrieving the specified compression
program, returning success or failure. Checking the validity of
the image format can be left to the calling functions.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoqemu: Don't ignore dump image format errors
Jim Fehlig [Thu, 20 Feb 2025 01:02:06 +0000 (18:02 -0700)] 
qemu: Don't ignore dump image format errors

Long ago, without justification, commit 48cb9f0542 changed
qemuGetCompressionProgram (since renamed to
qemuSaveImageGetCompressionProgram) to ignore configuration errors
for dump operations. Like the other save-related operations, user
provided configuration should be verified and an error reported if
it cannot be honored.

Remove the special handling of configuration errors in
qemuSaveImageGetCompressionProgram and change the dump logic to
fail when dump image format cannot be supported.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoqemu: Move declaration of virQEMUSaveFormat to header file
Jim Fehlig [Tue, 14 Jan 2025 23:20:31 +0000 (16:20 -0700)] 
qemu: Move declaration of virQEMUSaveFormat to header file

Allow use of the enum outside of qemu_saveimage.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
5 months agoschemas: domaincaps: Add missing schema for '<cpu0Id>'
Peter Krempa [Mon, 3 Mar 2025 08:50:16 +0000 (09:50 +0100)] 
schemas: domaincaps: Add missing schema for '<cpu0Id>'

Fixes: 0236e6154c46603bc443eda2f05c8ce511c55b08
Resolves: https://issues.redhat.com/browse/RHEL-81890
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
5 months agoqemuPrepareNVRAMFile: Fix NVRAM image conversion check
Peter Krempa [Fri, 28 Feb 2025 13:00:23 +0000 (14:00 +0100)] 
qemuPrepareNVRAMFile: Fix NVRAM image conversion check

In case when user provides custom paths (those not covered by the JSON
firmware descriptor files or  the default locations) for the
loader and nvram template no auto-detection will be performed and user's
config will be taken at face value. Historically when 'templateFormat'
didn't exist we assumed that the 'format' field covers both.

Thus if 'templateFormat' is VIR_STORAGE_FILE_NONE we need to skip the
check forbidding image format conversion for 'file' backed to avoid
breaking legacy configs with manual/non-detected format assuming that
user picked the correct format.

Add a comment to the declaration of 'nvramTemplateFormat' noting the
above for future reference.

Resolves: https://issues.redhat.com/browse/RHEL-81731
Fixes: 2aa644a2fc8
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
5 months agoconf: metadata: remove metadata node if all metadata is removed
Ján Tomko [Thu, 20 Feb 2025 21:50:06 +0000 (22:50 +0100)] 
conf: metadata: remove metadata node if all metadata is removed

When removing the last child element from a network or domain
metadata, free the metadata node itself as well, to prevent
displaying an empty metadata element.

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

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoconf: metadata: ignore empty metadata element
Ján Tomko [Thu, 20 Feb 2025 21:48:40 +0000 (22:48 +0100)] 
conf: metadata: ignore empty metadata element

Do not copy the <metadata> node to domain/network definition
if its empty.

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoconf: obj: remove extra empty line
Ján Tomko [Thu, 20 Feb 2025 21:45:25 +0000 (22:45 +0100)] 
conf: obj: remove extra empty line

Originally present in virDomainDefSetMetadata it got copied to
virNetworkDefSetMetadata too.

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoconf: networkobj: fix indentation
Ján Tomko [Thu, 20 Feb 2025 21:36:11 +0000 (22:36 +0100)] 
conf: networkobj: fix indentation

'Network' has one more letter than 'Domain' where these helpers
were copied from. Shift the unaligned lines by one.

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agocpu_map: arm: Add AmpereOne CPU models
Jiri Denemark [Wed, 26 Feb 2025 12:35:41 +0000 (13:35 +0100)] 
cpu_map: arm: Add AmpereOne CPU models

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agocpu_arm: Report vendor ID for unknown PVRs
Jiri Denemark [Wed, 26 Feb 2025 12:20:56 +0000 (13:20 +0100)] 
cpu_arm: Report vendor ID for unknown PVRs

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
5 months agoqemuDomainGetGuestInfo: Remove temporary infrastructure
Peter Krempa [Wed, 26 Feb 2025 15:49:52 +0000 (16:49 +0100)] 
qemuDomainGetGuestInfo: Remove temporary infrastructure

Now that the refactor was completed the helper infrastructure can be
removed.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuDomainGetGuestInfo: Convert hostname code to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuDomainGetGuestInfo: Convert hostname code to virTypedParamList

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuAgentGetUsers: Convert to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuAgentGetUsers: Convert to virTypedParamList

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuAgentGetOSInfo: Convert to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuAgentGetOSInfo: Convert to virTypedParamList

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuAgentGetTimezone: Convert to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuAgentGetTimezone: Convert to virTypedParamList

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuAgentFSInfoFormatParams: Convert interface code to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuAgentFSInfoFormatParams: Convert interface code to virTypedParamList

Also remove stale TODO comment as we already report disk target.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuAgentDiskInfoFormatParams: Convert interface code to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuAgentDiskInfoFormatParams: Convert interface code to virTypedParamList

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agovirDomainInterfaceFormatParams: Convert interface code to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
virDomainInterfaceFormatParams: Convert interface code to virTypedParamList

Also deletes pre-existing broken formatting.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuDomainGetGuestInfo: Convert load code to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:42:03 +0000 (14:42 +0100)] 
qemuDomainGetGuestInfo: Convert load code to virTypedParamList

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemuDomainGetGuestInfo: Prepare for refactor to virTypedParamList
Peter Krempa [Wed, 26 Feb 2025 13:38:15 +0000 (14:38 +0100)] 
qemuDomainGetGuestInfo: Prepare for refactor to virTypedParamList

Use of raw typed param APIs is very clunky. Prepare
qemuDomainGetGuestInfo for step-by-step refactor to virTypedParamList.

The two lists will coexist until the refactor is complete.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agoqemu: Report disk bus as reported by agent in virDomainGetGuestInfo
Peter Krempa [Wed, 26 Feb 2025 11:44:02 +0000 (12:44 +0100)] 
qemu: Report disk bus as reported by agent in virDomainGetGuestInfo

KubeVirt decided to report this to the users. In order to allow them to
use proper APIs expose the field as well.

Resolves: https://issues.redhat.com/browse/RHEL-80688
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
5 months agovirsh: Add support for VIR_DOMAIN_GUEST_INFO_LOAD
Martin Kletzander [Tue, 25 Feb 2025 14:22:35 +0000 (15:22 +0100)] 
virsh: Add support for VIR_DOMAIN_GUEST_INFO_LOAD

Resolves: https://issues.redhat.com/browse/RHEL-71883
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
5 months agoqemu: Add support for VIR_DOMAIN_GUEST_INFO_LOAD
Martin Kletzander [Tue, 25 Feb 2025 14:36:32 +0000 (15:36 +0100)] 
qemu: Add support for VIR_DOMAIN_GUEST_INFO_LOAD

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
5 months agoqemu_agent: Add qemuAgentGetLoadAvg()
Martin Kletzander [Tue, 25 Feb 2025 14:23:07 +0000 (15:23 +0100)] 
qemu_agent: Add qemuAgentGetLoadAvg()

With qemu guest agent 9.3 we are able to get the load averages with a
new command.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
5 months agoAdd load average information type into virDomainGetGuestInfo
Martin Kletzander [Tue, 25 Feb 2025 14:36:03 +0000 (15:36 +0100)] 
Add load average information type into virDomainGetGuestInfo

The public API part.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
5 months agoPost-release version bump to 11.2.0
Jiri Denemark [Mon, 3 Mar 2025 12:42:18 +0000 (13:42 +0100)] 
Post-release version bump to 11.2.0

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>