]> git.ipfire.org Git - thirdparty/libvirt.git/log
thirdparty/libvirt.git
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>
8 months agocpu_map: Add versions of GraniteRapids CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:48:27 +0000 (11:48 +0200)] 
cpu_map: Add versions of GraniteRapids 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 SierraForest CPU model
Jiri Denemark [Tue, 22 Oct 2024 09:48:48 +0000 (11:48 +0200)] 
cpu_map: Add versions of SierraForest CPU model

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agodomain_capabilities: Report canonical names of CPU models
Jiri Denemark [Fri, 22 Nov 2024 16:45:00 +0000 (17:45 +0100)] 
domain_capabilities: Report canonical names of CPU models

Some models are just aliases to other models. Make this relation
available to users via domain capabilities.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu: Introduce virCPUGetCanonicalModel
Jiri Denemark [Fri, 22 Nov 2024 18:00:26 +0000 (19:00 +0100)] 
cpu: Introduce virCPUGetCanonicalModel

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_x86: Record relations between CPU models
Jiri Denemark [Fri, 22 Nov 2024 18:09:39 +0000 (19:09 +0100)] 
cpu_x86: Record relations between CPU models

Record a fact a specific CPU model was derived from another one. The
original model is also marked as an alias of the new one in case it did
not change any properties of the original CPU.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Copy signatures from base model
Jiri Denemark [Tue, 22 Oct 2024 10:38:04 +0000 (12:38 +0200)] 
sync_qemu_models_i386: Copy signatures from base model

The signatures in the CPU map are used for matching physical CPUs and
thus we need to cover all possible real world variants we know about.
When adding a new version of an existing CPU model, we should copy the
signature(s) of the existing model rather than replacing it with the
signature that QEMU uses.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Update index.xml
Jiri Denemark [Mon, 21 Oct 2024 13:41:50 +0000 (15:41 +0200)] 
sync_qemu_models_i386: Update index.xml

Add all newly generated CPU models to the appropriate section of
index.xml.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_map: Properly group models in index.xml
Jiri Denemark [Tue, 22 Oct 2024 07:16:46 +0000 (09:16 +0200)] 
cpu_map: Properly group models in index.xml

We already visually group the included models using comments. This patch
introduces a new <group name='...'> element for doing it properly in a
machine friendly way.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Switch to lxml
Jiri Denemark [Mon, 21 Oct 2024 13:41:33 +0000 (15:41 +0200)] 
sync_qemu_models_i386: Switch to lxml

XMLs parse/format round trip using lxml results in an XML document that
almost exactly matches the original (including comments).

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Store extra info in a separate file
Jiri Denemark [Tue, 12 Nov 2024 10:24:23 +0000 (11:24 +0100)] 
sync_qemu_models_i386: Store extra info in a separate file

We don't really need or want the extra info to be included in the CPU
model definitions in git, it's mostly useful for verifying the output of
the script. Let's store it in a separate file rather than in a comment
block of the CPU model definition itself.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Add support for versioned CPU models
Jiri Denemark [Mon, 21 Oct 2024 11:25:51 +0000 (13:25 +0200)] 
sync_qemu_models_i386: Add support for versioned CPU models

Each CPU model with -v* suffix is defined as a standalone model copying
all attributes of the previous version. CPU model versions with an alias
are handled differently. The full definition is used for the alias and
the versioned model is created as an identical copy of the alias.

To avoid breaking migration compatibility of host-model CPUs all
versioned models are marked with <decode guest='off'/> so that they are
ignored when selecting candidates for host-model. It's not ideal but not
doing so would break almost all host-model CPUs as the new versioned CPU
models have all vmx-* features included since their introduction while
existing CPU models were updated later. This meas existing models would
be accompanied with a long list of vmx-* features to properly describe a
host CPU while the newly added CPU models would have those features
enabled implicitly and their list of features would be significantly
shorter. Thus the new models would always be better candidates for
host-model than the existing models.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Do not require full path to QEMU's cpu.c
Jiri Denemark [Mon, 21 Oct 2024 11:00:26 +0000 (13:00 +0200)] 
sync_qemu_models_i386: Do not require full path to QEMU's cpu.c

While the script for synchronizing CPU features expects a path to QEMU
source tree, this CPU model script insisted on getting a full patch to
cpu.c file, even though it could easily deduce it from the path to QEMU
source tree.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Do not overwrite existing models
Jiri Denemark [Mon, 21 Oct 2024 10:55:32 +0000 (12:55 +0200)] 
sync_qemu_models_i386: Do not overwrite existing models

We don't change definitions of CPU models which were already included in
a libvirt release to maintain migration compatibility. Thus the script
can just skip existing models and save us from having to drop the
changes it would do to them.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_models_i386: Use f-strings
Jiri Denemark [Mon, 21 Oct 2024 10:10:57 +0000 (12:10 +0200)] 
sync_qemu_models_i386: Use f-strings

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agosync_qemu_features_i386: Add some removed features back
Jiri Denemark [Mon, 21 Oct 2024 09:54:50 +0000 (11:54 +0200)] 
sync_qemu_features_i386: Add some removed features back

When removing features unknown to QEMU (they have a different name or
are completely missing as they are not configurable by a user) I should
not have removed them from the list of features unknown to QEMU in the
script for synchronizing QEMU features to the CPU map.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_x86: Promote added/removed from ancestor
Jiri Denemark [Fri, 15 Nov 2024 13:52:12 +0000 (14:52 +0100)] 
cpu_x86: Promote added/removed from ancestor

When a CPU model is defined based on another model, we were completely
ignoring features marked as added to or removed from the original model
after it was released. For added features this is the right thing to do
as it will promote them to become normal features included in the new
model. But features marked as removed would become included in the new
model as well. We need to explicitly remove them as if they were never
included in the model.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agocpu_x86: Annotate virCPUx86Model fields
Jiri Denemark [Fri, 22 Nov 2024 15:01:28 +0000 (16:01 +0100)] 
cpu_x86: Annotate virCPUx86Model fields

Document which fields are inherited when a CPU model is based on another
model.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Sun, 24 Nov 2024 12:38:44 +0000 (12:38 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.9% (10305 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 agoTranslated using Weblate (Swedish)
Göran Uddeborg [Sat, 23 Nov 2024 09:33:47 +0000 (09:33 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.7% (10285 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 agoTranslated using Weblate (Swedish)
Weblate [Sat, 23 Nov 2024 09:27:15 +0000 (09:27 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.4% (10259 of 10526 strings)

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

Signed-off-by: Weblate <noreply-mt-weblate@weblate.org>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Sat, 23 Nov 2024 09:24:01 +0000 (09:24 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.4% (10259 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 agoTranslated using Weblate (Swedish)
Weblate [Fri, 22 Nov 2024 21:12:44 +0000 (21:12 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.2% (10235 of 10526 strings)

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

Signed-off-by: Weblate <noreply-mt-weblate@weblate.org>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Fri, 22 Nov 2024 21:09:25 +0000 (21:09 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.2% (10235 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 agoTranslated using Weblate (Swedish)
Weblate [Fri, 22 Nov 2024 21:08:24 +0000 (21:08 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.1% (10224 of 10526 strings)

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

Signed-off-by: Weblate <noreply-mt-weblate@weblate.org>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Fri, 22 Nov 2024 21:04:05 +0000 (21:04 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 97.1% (10224 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 agoTranslated using Weblate (Georgian)
Weblate [Thu, 21 Nov 2024 05:41:33 +0000 (05:41 +0000)] 
Translated using Weblate (Georgian)

Currently translated at 4.3% (459 of 10526 strings)

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

Signed-off-by: Weblate <noreply-mt-weblate@weblate.org>
8 months agoTranslated using Weblate (French)
Léane GRASSER [Tue, 19 Nov 2024 12:11:03 +0000 (12:11 +0000)] 
Translated using Weblate (French)

Currently translated at 95.9% (10098 of 10526 strings)

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

Signed-off-by: Léane GRASSER <leane.grasser@proton.me>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Tue, 19 Nov 2024 09:22:39 +0000 (09:22 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 96.9% (10205 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 agoTranslated using Weblate (Chinese (Simplified) (zh_CN))
jianqing yan [Tue, 19 Nov 2024 09:21:28 +0000 (10:21 +0100)] 
Translated using Weblate (Chinese (Simplified) (zh_CN))

Currently translated at 95.7% (10074 of 10526 strings)

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

Co-authored-by: jianqing yan <yanjianqing@kylinos.cn>
Signed-off-by: jianqing yan <yanjianqing@kylinos.cn>
8 months agoTranslated using Weblate (Swedish)
Weblate [Tue, 19 Nov 2024 09:21:27 +0000 (10:21 +0100)] 
Translated using Weblate (Swedish)

Currently translated at 96.8% (10199 of 10526 strings)

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

Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Signed-off-by: Weblate <noreply-mt-weblate@weblate.org>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Tue, 19 Nov 2024 09:21:26 +0000 (10:21 +0100)] 
Translated using Weblate (Swedish)

Currently translated at 96.8% (10199 of 10526 strings)

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

Co-authored-by: Göran Uddeborg <goeran@uddeborg.se>
Signed-off-by: Göran Uddeborg <goeran@uddeborg.se>
8 months agoqemuxmlconftest: Add test cases for the <dataStore> feature
Nikolai Barybin [Wed, 20 Nov 2024 15:48:49 +0000 (18:48 +0300)] 
qemuxmlconftest: Add test cases for the <dataStore> feature

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agoqemuxmlactivetest: Add tests for <dataStore>
Nikolai Barybin [Wed, 20 Nov 2024 15:48:49 +0000 (18:48 +0300)] 
qemuxmlactivetest: Add tests for <dataStore>

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agotests: virstoragetest: Add tests for detection of qcow2 'data_file' feature
Nikolai Barybin [Wed, 20 Nov 2024 15:48:49 +0000 (18:48 +0300)] 
tests: virstoragetest: Add tests for detection of qcow2 'data_file' feature

Add two test images showing the use of 'data_file' and 'data_file_raw'
(although the latter is not detected by libvirt) so that we can see that
the qcow2 metadata parser and backing chain populators work correctly.

The example files were created by:

 qemu-img create  -f qcow2 -o data_file=raw,data_file_raw=true,preallocation=off datafile.qcow2 1k
 qemu-img create  -f qcow2 -o data_file=rawpreallocation=off -F qcow2 -b datafile.qcow2 qcow2datafile-datafile.qcow2

Note that 'data_file_raw' is mutually exclusive with backing images.

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
8 months agoqemu: block: Add support for 'data-file' feature of qcow2
Nikolai Barybin [Wed, 20 Nov 2024 15:48:48 +0000 (18:48 +0300)] 
qemu: block: Add support for 'data-file' feature of qcow2

Add the block infrastructure for detecting and landling the data file
for images and starting qemu with the configuration.

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agoqemu: factor out qemuDomainPrepareStorageSource()
Nikolai Barybin [Wed, 20 Nov 2024 15:48:47 +0000 (18:48 +0300)] 
qemu: factor out qemuDomainPrepareStorageSource()

This refactoring will simplify next changes.

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agoqemu: put data-file path to VM's cgroup and namespace
Nikolai Barybin [Wed, 20 Nov 2024 15:48:46 +0000 (18:48 +0300)] 
qemu: put data-file path to VM's cgroup and namespace

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agosecurity: apparmor: handle qcow2 data-file
Nikolai Barybin [Wed, 20 Nov 2024 15:48:45 +0000 (18:48 +0300)] 
security: apparmor: handle qcow2 data-file

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agosecurity: selinux: handle qcow2 data-file on image label set/restore
Nikolai Barybin [Wed, 20 Nov 2024 15:48:44 +0000 (18:48 +0300)] 
security: selinux: handle qcow2 data-file on image label set/restore

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agosecurity: DAC: handle qcow2 data-file on image label set/restore
Nikolai Barybin [Wed, 20 Nov 2024 15:48:43 +0000 (18:48 +0300)] 
security: DAC: handle qcow2 data-file on image label set/restore

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agostorage file: fill in src->dataFileStore during file probe
Nikolai Barybin [Wed, 20 Nov 2024 15:48:42 +0000 (18:48 +0300)] 
storage file: fill in src->dataFileStore during file probe

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agostorage file: add qcow2 data-file path parsing from header
Nikolai Barybin [Wed, 20 Nov 2024 15:48:41 +0000 (18:48 +0300)] 
storage file: add qcow2 data-file path parsing from header

In qcow2 header data file is represented by incompitible feature bit
and its path is saved to header extension table.
Thus, we implement here the logic similar to backing file probing.

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agostorage file: add getDataFile function to FileTypeInfo
Nikolai Barybin [Wed, 20 Nov 2024 15:48:40 +0000 (18:48 +0300)] 
storage file: add getDataFile function to FileTypeInfo

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agoconf: implement XML parsing/formating for <dataStore> element of a storage <source>
Nikolai Barybin [Wed, 20 Nov 2024 15:48:39 +0000 (18:48 +0300)] 
conf: implement XML parsing/formating for <dataStore> element of a storage <source>

Introduce parsing and formatting of <dataStore> element. The <dataStore
represents a different storage volume meant for storing the actual
blocks of guest-visible data. The original disk source is then just a
metadata storage for any advanced features.

This currently works only for 'qcow2' images.

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months ago Add schema and documentation for 'dataStore' sub-element of disk source
Nikolai Barybin [Wed, 20 Nov 2024 15:48:38 +0000 (18:48 +0300)] 
 Add schema and documentation for 'dataStore' sub-element of disk source

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agoconf: add data-file feature and related fields to virStorageSource
Nikolai Barybin [Wed, 20 Nov 2024 15:48:36 +0000 (18:48 +0300)] 
conf: add data-file feature and related fields to virStorageSource

The 'data-file' is a qcow2 feature which allows storing the actual data
outside of the qcow2 image.

Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
8 months agodocs: formatsecret: Fix an example of secret-set-value
Han Han [Thu, 21 Nov 2024 02:27:36 +0000 (10:27 +0800)] 
docs: formatsecret: Fix an example of secret-set-value

The previous example will cause the error like:
error: Options --file and --base64 are mutually exclusive

Reported-by: Yanqiu Zhang <yanqzhan@redhat.com>
Signed-off-by: Han Han <hhan@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoQEMU: allow to hot plugging virtio-serial-pci device
shenjiatong [Sun, 17 Nov 2024 14:44:26 +0000 (22:44 +0800)] 
QEMU: allow to hot plugging virtio-serial-pci device

Virtio-serial-pci device is hot pluggable, loosen the restriction
and allow user to hot plug it.

Signed-off-by: shenjiatong <yshxxsjt715@163.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agotests: qemucapabilitiesdata: Update 'x86_64' capabilities for the qemu-9.2 dev cycle
Peter Krempa [Tue, 19 Nov 2024 08:46:24 +0000 (09:46 +0100)] 
tests: qemucapabilitiesdata: Update 'x86_64' capabilities for the qemu-9.2 dev cycle

Update to v9.2.0-rc0-42-g3428a3894c

Apart from the changes below there are changes to CPU features reported
by qemu, some of which were reported multiple times previously which no
longer happens.

Notable changes:
 - 'reconnect-ms' added and 'reconnect' deprecated for 'stream' variant
   of 'netdev-add' backend
 - 'BLOCK_IO_ERROR' event removed 'qom-path' parameter
 - 'GraniteRapids-v2-x86_64-cpu' added
 - 'sm3' hashing algorithm for 'luks' added
 - 'acpi-generic-port' object added
 - deprecated field 'loaded' of 'secret'/'secret_keyring'/'tls-creds*'
   removed
 - 'sh4eb' target added
 - 'query-migrationthreads' command deprecated
 - 'busnr' and 'x-pcie-ext-tag' attributes added for
    'ICH9-LPC'/'PIIX4_PM'/'VGA'/'mch'/'pcie-root-port'/'qxl'/'vfio-pci'/
    'virtio-*'/'vmware-svga'
    devices
 - 'stale-tm' property added for 'intel-iommu' device

Experimental features:
 - 'device-sync-config' command added

As the addition of the 'reconnect-ms' property of the 'stream' network
backend happened along with deprecation of the 'reconnect' field which
was already in use by libvirt this patch also captures the change to the
new format.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
8 months agoqemu: passt: Use 'reconnect-ms' instead of 'reconnect' with new qemus
Peter Krempa [Tue, 19 Nov 2024 09:53:08 +0000 (10:53 +0100)] 
qemu: passt: Use 'reconnect-ms' instead of 'reconnect' with new qemus

The 'reconnect' field of 'stream' network backend type is about to be
deprecated so libvirt will need to start using 'reconnect-ms'.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
8 months agoqemu: capabilities: Introduce QEMU_CAPS_NETDEV_STREAM_RECONNECT_MILISECONDS
Peter Krempa [Tue, 19 Nov 2024 09:41:13 +0000 (10:41 +0100)] 
qemu: capabilities: Introduce QEMU_CAPS_NETDEV_STREAM_RECONNECT_MILISECONDS

The 'stream' type for 'netdev-add' recently added support for
'reconnect-ms' which supersedes 'reconnect' (now deprecated). Add a
capability which will allow us to switch to the new property.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
8 months agoqemu: capabilities: Restore grouping in 'virQEMUCapsQMPSchemaQueries'
Peter Krempa [Tue, 19 Nov 2024 09:35:16 +0000 (10:35 +0100)] 
qemu: capabilities: Restore grouping in 'virQEMUCapsQMPSchemaQueries'

Historically the QMP schema lookup queries were grouped by the first
component of the query (which was also sorted), but not fully sorted.
This deteriorated over time. Re-group the query strings now that some
were added at the bottom.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
8 months agoqemuDomainDiskChangeSupported: Add missing iothreads check
Adam Julis [Fri, 26 Jul 2024 08:52:18 +0000 (10:52 +0200)] 
qemuDomainDiskChangeSupported: Add missing iothreads check

GSList of iothreads is not allowed to be changed while the
virtual machine is running.

Resolves: https://issues.redhat.com/browse/RHEL-23607
Signed-off-by: Adam Julis <ajulis@redhat.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agomanpage: virsh: Add warning about 'migrate' with '--persistent' together with '-...
Peter Krempa [Mon, 18 Nov 2024 13:12:20 +0000 (14:12 +0100)] 
manpage: virsh: Add warning about 'migrate' with '--persistent' together with '--xml'

When a VM is being migrated to a destination host it can be made
persistent on the destination by using '--persistent'. That may not
work as intended if '--xml' is used as well as that allows overriding
certain aspects of the VM xml, but does not involve the persistent
definition. In most cases users will need to supply also
'--persistent-xml' with the same set of modification.

Modify the man page to clarify the above so that users don't end up with
broken VM after migrating and restarting it.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoAPI: migration: Warn about use of VIR_MIGRATE_PERSIST_DEST with VIR_MIGRATE_PARAM_DES...
Peter Krempa [Mon, 18 Nov 2024 13:25:22 +0000 (14:25 +0100)] 
API: migration: Warn about use of VIR_MIGRATE_PERSIST_DEST with VIR_MIGRATE_PARAM_DEST_XML

When a VM is being migrated to a destination host it can be made
persistent on the destination by using VIR_MIGRATE_PERSIST_DEST. That
may not work as intended if VIR_MIGRATE_PARAM_DEST_XML or the 'xmlin'
parameter is used as that allows overriding certain aspects of the VM
xml, but does not involve the persistent definition.
In most cases users will need to supply also VIR_MIGRATE_PARAM_PERSIST_XML
with the same set of modification.

Modify the man page to clarify the above so that users don't end up with
broken VM after migrating and restarting it.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoRevert "qemu: migration: Improve handling of VIR_MIGRATE_PARAM_DEST_XML with VIR_MIGR...
Peter Krempa [Mon, 18 Nov 2024 13:02:17 +0000 (14:02 +0100)] 
Revert "qemu: migration: Improve handling of VIR_MIGRATE_PARAM_DEST_XML with VIR_MIGRATE_PERSIST_DEST"

The original intention was to improve the behaviour of the
VIR_MIGRATE_PERSIST_DEST flag which makes the VM persistent after
migration on the destination when used with VIR_MIGRATE_PARAM_DEST_XML.

While it worked as intended with p2p migration where the migration is
driven from the virtqemud instance on the source of the migration, which
can distinguish between the user-provided input XML and the one fetched
from the source of the migration, it's not easily possible to achieve
the same behaviour with normal migration driven from the client library.

The approach also still had corner cases (originally deemed worth
changing) such as if the persistent definition was modified it would be
overwritten.

As there is no clear fix which would improve both styles of migrations
with no corner cases revert the change.

Upcoming commits will modify the documentation to add warning about the
use of VIR_MIGRATE_PERSIST_DEST with VIR_MIGRATE_PARAM_DEST_XML/xmlin
without using VIR_MIGRATE_PARAM_PERSIST_XML instead of a code fix.

This reverts commit 6a385590926d01ab2f2137d1d0833ae797cd2839.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoNEWS: Add the news for CVE-2024-4418
Han Han [Fri, 25 Oct 2024 04:57:26 +0000 (12:57 +0800)] 
NEWS: Add the news for CVE-2024-4418

Signed-off-by: Han Han <hhan@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoNEWS: Add the news for CVE-2024-2494
Han Han [Fri, 25 Oct 2024 04:57:25 +0000 (12:57 +0800)] 
NEWS: Add the news for CVE-2024-2494

Signed-off-by: Han Han <hhan@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoNEWS: cpu_map: Add the EPYC-Genoa cpu mode
Han Han [Fri, 25 Oct 2024 04:57:24 +0000 (12:57 +0800)] 
NEWS: cpu_map: Add the EPYC-Genoa cpu mode

Signed-off-by: Han Han <hhan@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoNEWS: qemu: Add support for hyperv enlightenments features
Han Han [Fri, 25 Oct 2024 04:57:23 +0000 (12:57 +0800)] 
NEWS: qemu: Add support for hyperv enlightenments features

Signed-off-by: Han Han <hhan@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agodocs: Recommend virtio instead of virtio-(non-)transitional
Andrea Bolognani [Thu, 7 Nov 2024 15:36:15 +0000 (16:36 +0100)] 
docs: Recommend virtio instead of virtio-(non-)transitional

When virtio-(non-)transitional models were introduced, the
documentation was updated to include them; at the same time,
language was introduced indicating that using the existing
virtio model is no longer recommended.

This is unnecessarily harsh, and has resulted in people
incorrectly believing (through no fault of their own) that the
virtio model has been deprecated.

In reality, it's perfectly fine to use the virtio model as the
stress-free option that, while often not producing the ideal
PCI topology, will generally get the job done and work reliably
across libvirt versions and machine types.

Tweak the documentation so that it hopefully carries the
desired message across.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
8 months agovmx: Get the VMware boolean uefi.secureBoot.enabled
Richard W.M. Jones [Mon, 18 Nov 2024 13:53:48 +0000 (13:53 +0000)] 
vmx: Get the VMware boolean uefi.secureBoot.enabled

Some VMware guests have a boolean uefi.secureBoot.enabled.  If found,
and it's set to "TRUE", and if it's a UEFI guest, then add this clause
into the domain XML:

  <os firmware='efi'>
    <firmware>
      <feature enabled='yes' name='enrolled-keys'/>
      <feature enabled='yes' name='secure-boot'/>
    </firmware>
  </os>

This approximates the meaning of this VMware flag.

Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
Fixes: https://issues.redhat.com/browse/RHEL-67836
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: Avoid use of '-loadvm' commandline argument for internal snapshot reversion
Peter Krempa [Thu, 7 Nov 2024 09:48:10 +0000 (10:48 +0100)] 
qemu: Avoid use of '-loadvm' commandline argument for internal snapshot reversion

The '-loadvm' commandline parameter has exactly the same semantics as
the HMP 'loadvm' command. This includes the selection of which block
device is considered to contain the 'vmstate' section.

Since libvirt recently switched to the new QMP commands which allow a
free selection of where the 'vmstate' is placed, snapshot reversion will
no longer work if libvirt's algorithm disagrees with qemu's. This is the
case when the VM has UEFI NVRAM image, in qcow2 format, present.

To solve this we'll use the QMP counterpart 'snapshot-load' to load the
snapshot instead of using '-loadvm'. We'll do this before resuming
processors after startup of qemu and thus the behaviour is identical to
what we had before.

The logic for selecting the images now checks both the snapshot metadata
and the VM definition. In case images not covered by the snapshot
definition do have the snapshot it's included in the reversion, but it's
fatal if the snapshot is not present in a disk covered in snapshot
metadata.

The vmstate is selected based on where it's present as libvirt doesn't
store this information.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: monitor: Extract vmstate presence for internal snapshots in qemuBlockGetNamedNo...
Peter Krempa [Wed, 13 Nov 2024 08:44:03 +0000 (09:44 +0100)] 
qemu: monitor: Extract vmstate presence for internal snapshots in qemuBlockGetNamedNodeData

Refactor the parts of qemuBlockGetNamedNodeData which fetch the names of
internal snapshots present in the on-disk state of QCOW2 images to also
extract the presence of the 'vmstate' section.

This requires conversion of the snapshot list to a hash table as we
always know the name of the snapshot that we're looking for, and the
hash table allows also storing of additional data which we'll use to
store the presence of the 'vmstate'.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: Add enum entries for 'snapshot-load' qemu job
Peter Krempa [Thu, 7 Nov 2024 11:57:42 +0000 (12:57 +0100)] 
qemu: Add enum entries for 'snapshot-load' qemu job

The internal snapshot code will use the 'snapshot-load' command so we
need to add the corresponding job type.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: monitor: Add monitor infrastructure for 'snapshot-load' QMP command
Peter Krempa [Wed, 6 Nov 2024 14:59:34 +0000 (15:59 +0100)] 
qemu: monitor: Add monitor infrastructure for 'snapshot-load' QMP command

Libvirt currently loads snapshots via the '-loadvm' commandline option
but that uses the same logic as the 'loadvm' text monitor command used
to pick the disk image with the 'vmstate' section. Since libvirt now
implements our own logic to pick the 'vmstate' device it can happen that
we pick a different than qemu and thus qemu would fail to load the
snapshot. This happens currently on VMs with UEFI firmware with NVRAM
image in qcow2 format.

To fix this libvirt will need to use the 'snapshot-load' QMP command
instead of relying on '-savevm'.

Implement the monitor bits for 'snapshot-load'.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemuSnapshotForEachQcow2: Handle also NVRAM image for internal snapshots
Peter Krempa [Tue, 12 Nov 2024 12:22:39 +0000 (13:22 +0100)] 
qemuSnapshotForEachQcow2: Handle also NVRAM image for internal snapshots

The live VM snapshot code already does handle the NVRAM image when it's
in use, so we should also handle it when modifying/creating the
snapshots via qemu-img when inactive.

Add the handling to qemuSnapshotForEachQcow2 which is used for all
inactive operations.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemuSnapshotForEachQcow2: Refactor
Peter Krempa [Tue, 12 Nov 2024 07:47:29 +0000 (08:47 +0100)] 
qemuSnapshotForEachQcow2: Refactor

Refactor the function to avoid recursive call to rollback and simplify
calling parameters.

To achieve that most of the fatal checks are extracted into a dedicated
loop that runs before modifying the disk state thus removing the need to
rollback altoghether. Since rollback is still necessary when creation of
the snapshot fails half-way through the rollback is extracted to handle
only that scenario.

Additionally callers would only pass the old 'try_all' argument as true
on all non-creation ("-c") modes. This means that we can infer it from
the operation instead of passing it as an extra argument.

This refactor will also make it much simpler to implement handling of
the NVRAM pflash backing file (in case it's qcow2) for internal
snapshots.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: Move 'qemuDomainSnapshotForEachQcow2(Raw)' to qemu_snapshot.c
Peter Krempa [Mon, 11 Nov 2024 16:20:39 +0000 (17:20 +0100)] 
qemu: Move 'qemuDomainSnapshotForEachQcow2(Raw)' to qemu_snapshot.c

The functions are exclusively used in the snapshot module. Move and
rename them:

  qemuDomainSnapshotForEachQcow2Raw -> qemuSnapshotForEachQcow2Internal
  qemuDomainSnapshotForEachQcow2 -> qemuSnapshotForEachQcow2

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemuDomainSnapshotForEachQcow2Raw: Remove 'driver' argument
Peter Krempa [Mon, 11 Nov 2024 16:17:04 +0000 (17:17 +0100)] 
qemuDomainSnapshotForEachQcow2Raw: Remove 'driver' argument

Now that it's unused except for the recursive call it can be dropped
from all of the call tree.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: Don't store path to qemu img
Peter Krempa [Mon, 11 Nov 2024 15:42:10 +0000 (16:42 +0100)] 
qemu: Don't store path to qemu img

The 'virCommand' helpers already look up the full path to the binary in
PATH if it's not specified. This means that the qemu driver doesn't have
to lookup and store the path to 'qemu-img' in the conf object but rather
can be cleaned up to use this new infrastructure.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoch: Enable callbacks for ch domain events
Praveen K Paladugu [Tue, 10 Sep 2024 19:22:43 +0000 (14:22 -0500)] 
ch: Enable callbacks for ch domain events

Enable callbacks for define, undefine, started, booted, stopped,
destroyed events of ch guests.

Signed-off-by: Praveen K Paladugu <praveenkpaladugu@gmail.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoch: enable virNodeGetMemoryStats API
Praveen K Paladugu [Fri, 15 Nov 2024 19:48:58 +0000 (13:48 -0600)] 
ch: enable virNodeGetMemoryStats API

Enable virNodeGetMemoryStats API to return the stats of host memory.

Signed-off-by: Praveen K Paladugu <prapal@linux.microsoft.com>
Signed-off-by: Praveen K Paladugu <praveenkpaladugu@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Sun, 17 Nov 2024 09:42:07 +0000 (09:42 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 96.5% (10165 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 agoTranslated using Weblate (Swedish)
Göran Uddeborg [Fri, 15 Nov 2024 20:38:33 +0000 (20:38 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 96.3% (10145 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 agoTranslated using Weblate (Swedish)
Göran Uddeborg [Thu, 14 Nov 2024 21:04:48 +0000 (21:04 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 96.1% (10118 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 agoTranslated using Weblate (Swedish)
Göran Uddeborg [Wed, 13 Nov 2024 20:40:42 +0000 (20:40 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 95.9% (10098 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 agoTranslated using Weblate (Swedish)
Weblate [Wed, 13 Nov 2024 20:37:54 +0000 (20:37 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 95.8% (10087 of 10526 strings)

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

Signed-off-by: Weblate <noreply-mt-weblate@weblate.org>
8 months agoTranslated using Weblate (Swedish)
Göran Uddeborg [Wed, 13 Nov 2024 20:35:45 +0000 (20:35 +0000)] 
Translated using Weblate (Swedish)

Currently translated at 95.8% (10087 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 agoTranslated using Weblate (Czech)
Pavel Borecki [Wed, 13 Nov 2024 19:28:20 +0000 (19:28 +0000)] 
Translated using Weblate (Czech)

Currently translated at 96.9% (10206 of 10526 strings)

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

Signed-off-by: Pavel Borecki <pavel.borecki@gmail.com>
8 months agoqemu: Read back the profile name after creation of a TPM instance
Stefan Berger [Wed, 13 Nov 2024 17:39:51 +0000 (12:39 -0500)] 
qemu: Read back the profile name after creation of a TPM instance

Get the JSON profile that the swtpm instance was created with from the
output of 'swtpm socket --tpm2 --print-info 0x20 --tpmstate ...'. Get the
name of the profile from the JSON and set it in the current and persistent
emulator descriptions as 'name' attribute and have the persistent
description stored with this update. The user should avoid setting this
'name' attribute since it is meant to be read-only. The following is
an example of how the XML could look like:

  <profile source='local:restricted' name='custom:restricted'/>

If the user provided no profile node, and therefore swtpm_setup picked its
default profile, the XML may now shows the 'name' attribute with the name
of the profile. This makes the 'source' attribute now optional.

  <profile name='default-v1'/>

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
8 months agoqemu: Move adding --tpmstate to swtpm command line into own function
Stefan Berger [Wed, 13 Nov 2024 17:39:50 +0000 (12:39 -0500)] 
qemu: Move adding --tpmstate to swtpm command line into own function

Factor-out code related to adding the --tpmstate option to the swtpm
command line into its own function.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>