[PATCH] qemu: blockjob: Handle 'pending' blockjob state only when we need it
by Peter Krempa
The 'pending' state needs to be handled by the blockjob code only when
the snapshot code requests a block-commit without auto-finalization.
If we always handle it we fail to properly remove the blockjob data for
the 'blockdev-create' job as that also transitions trhough 'pending' but
we'd never update it once it reaches 'concluded' as the code already
thinks that the job has finished and is no longer watching it.
Introduce a 'processPending' property into block job data and set it
only when we know that we need to process 'pending'.
Fixes: 90d9bc9d74a5157167548b26c00b1a016655e295
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2168769
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_block.c | 1 +
src/qemu/qemu_blockjob.c | 19 ++++++++++---------
src/qemu/qemu_blockjob.h | 4 ++++
3 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c
index 4c06565e0f..5e700eff99 100644
--- a/src/qemu/qemu_block.c
+++ b/src/qemu/qemu_block.c
@@ -3373,6 +3373,7 @@ qemuBlockCommit(virDomainObj *vm,
if (!(job = qemuBlockJobDiskNewCommit(vm, disk, top_parent, topSource,
baseSource,
flags & VIR_DOMAIN_BLOCK_COMMIT_DELETE,
+ autofinalize,
flags)))
goto cleanup;
diff --git a/src/qemu/qemu_blockjob.c b/src/qemu/qemu_blockjob.c
index cb2d05d71d..a20cf1db62 100644
--- a/src/qemu/qemu_blockjob.c
+++ b/src/qemu/qemu_blockjob.c
@@ -274,6 +274,7 @@ qemuBlockJobDiskNewCommit(virDomainObj *vm,
virStorageSource *top,
virStorageSource *base,
bool delete_imgs,
+ virTristateBool autofinalize,
unsigned int jobflags)
{
g_autoptr(qemuBlockJobData) job = NULL;
@@ -290,6 +291,7 @@ qemuBlockJobDiskNewCommit(virDomainObj *vm,
job->data.commit.top = top;
job->data.commit.base = base;
job->data.commit.deleteCommittedImages = delete_imgs;
+ job->processPending = autofinalize == VIR_TRISTATE_BOOL_NO;
job->jobflags = jobflags;
if (qemuBlockJobRegister(job, vm, disk, true) < 0)
@@ -532,8 +534,6 @@ qemuBlockJobRefreshJobs(virDomainObj *vm)
if (job->state == QEMU_BLOCKJOB_STATE_NEW ||
job->state == QEMU_BLOCKJOB_STATE_RUNNING)
job->newstate = newstate;
- } else if (newstate == QEMU_BLOCKJOB_STATE_PENDING) {
- job->newstate = newstate;
}
/* don't update the job otherwise */
}
@@ -1568,13 +1568,14 @@ qemuBlockJobEventProcess(virQEMUDriver *driver,
case QEMU_BLOCKJOB_STATE_PENDING:
/* Similarly as for 'ready' state we should handle it only when
- * previous state was 'new' or 'running' as there are other cases
- * when it can be emitted by QEMU. Currently we need this only when
- * deleting non-active external snapshots. */
- if (job->state == QEMU_BLOCKJOB_STATE_NEW ||
- job->state == QEMU_BLOCKJOB_STATE_RUNNING) {
- job->state = job->newstate;
- qemuDomainSaveStatus(vm);
+ * previous state was 'new' or 'running' and only if the blockjob code
+ * is handling finalization of the job explicitly. */
+ if (job->processPending) {
+ if (job->state == QEMU_BLOCKJOB_STATE_NEW ||
+ job->state == QEMU_BLOCKJOB_STATE_RUNNING) {
+ job->state = job->newstate;
+ qemuDomainSaveStatus(vm);
+ }
}
job->newstate = -1;
break;
diff --git a/src/qemu/qemu_blockjob.h b/src/qemu/qemu_blockjob.h
index e9b283da20..f1ac43b4c7 100644
--- a/src/qemu/qemu_blockjob.h
+++ b/src/qemu/qemu_blockjob.h
@@ -138,6 +138,9 @@ struct _qemuBlockJobData {
int brokentype; /* the previous type of a broken blockjob qemuBlockJobType */
+ bool processPending; /* process the 'pending' state of the job, if the job
+ should not be auto-finalized */
+
bool invalidData; /* the job data (except name) is not valid */
bool reconnected; /* internal field for tracking whether job is live after reconnect to qemu */
};
@@ -175,6 +178,7 @@ qemuBlockJobDiskNewCommit(virDomainObj *vm,
virStorageSource *top,
virStorageSource *base,
bool delete_imgs,
+ virTristateBool autofinalize,
unsigned int jobflags);
qemuBlockJobData *
--
2.39.1
1 year, 9 months
[libvirt PATCH] conf: Allow conventional PCI devices to be marked as integrated
by Andrea Bolognani
Integrated PCI devices can be either PCIe (virtio-iommu) or
conventional PCI (pvpanic-pci). Right now libvirt will refuse
to assign an address on pcie.0 for the latter, but that's an
undesirable limitation that we can easily remove.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
src/conf/domain_addr.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/conf/domain_addr.c b/src/conf/domain_addr.c
index 76f9c12ca6..b6534f502c 100644
--- a/src/conf/domain_addr.c
+++ b/src/conf/domain_addr.c
@@ -306,8 +306,11 @@ virDomainPCIAddressFlagsCompatible(virPCIDeviceAddress *addr,
if (addr->bus == 0) {
/* pcie-root doesn't usually allow endpoint devices to be
* plugged directly into it, but for integrated devices
- * that's exactly what we want */
- busFlags |= VIR_PCI_CONNECT_AUTOASSIGN;
+ * that's exactly what we want. It also refuses conventional
+ * PCI devices by default, but in the case of integrated
+ * devices both types are fine */
+ busFlags |= VIR_PCI_CONNECT_TYPE_PCI_DEVICE |
+ VIR_PCI_CONNECT_AUTOASSIGN;
} else {
if (reportError) {
virReportError(errType,
--
2.39.1
1 year, 9 months
[libvirt PATCH] gitlab: Ask users not to attach screenshots to bug reports
by Andrea Bolognani
Hopefully including this request in ALL CAPITAL LETTERS in the
issue template will cut down on the number of screenshots that
end up cluttering bug reports by at least a tiny bit.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
.gitlab/issue_templates/bug.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md
index f220671a06..b923be0ca0 100644
--- a/.gitlab/issue_templates/bug.md
+++ b/.gitlab/issue_templates/bug.md
@@ -17,3 +17,4 @@
## Additional information
<!-- Attach XML configs, logs, stack traces, etc. Compress the files if necessary -->
<!-- See https://libvirt.org/kbase/debuglogs.html on how to configure logging -->
+<!-- Please DO NOT ATTACH SCREENSHOTS to the bug report. Provide all information as plain text -->
--
2.39.1
1 year, 9 months
[PATCH] qemu_extdevice: Do cleanup host only for VIR_DOMAIN_TPM_TYPE_EMULATOR
by Michal Privoznik
We only set up host for VIR_DOMAIN_TPM_TYPE_EMULATOR and thus
similarly, we should do cleanup for the same type. This also
fixes a crasher, in which qemuTPMEmulatorCleanupHost() accesses
tpm->data.emulator.storagepath which is NULL for
VIR_DOMAIN_TPM_TYPE_EXTERNAL.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2168762
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/qemu/qemu_extdevice.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/qemu/qemu_extdevice.c b/src/qemu/qemu_extdevice.c
index f7b2e2e653..fdefe59215 100644
--- a/src/qemu/qemu_extdevice.c
+++ b/src/qemu/qemu_extdevice.c
@@ -162,7 +162,10 @@ qemuExtDevicesCleanupHost(virQEMUDriver *driver,
return;
for (i = 0; i < def->ntpms; i++) {
- qemuExtTPMCleanupHost(def->tpms[i], flags, outgoingMigration);
+ virDomainTPMDef *tpm = def->tpms[i];
+
+ if (tpm->type == VIR_DOMAIN_TPM_TYPE_EMULATOR)
+ qemuExtTPMCleanupHost(tpm, flags, outgoingMigration);
}
}
--
2.39.1
1 year, 9 months
[PATCH] hw/misc/sga: Remove the deprecated "sga" device
by Thomas Huth
It's been deprecated since QEMU v6.2, so it should be OK to
finally remove this now.
Signed-off-by: Thomas Huth <thuth(a)redhat.com>
---
MAINTAINERS | 1 -
docs/about/deprecated.rst | 9 ----
docs/about/removed-features.rst | 10 ++++
hw/misc/sga.c | 71 ----------------------------
.gitmodules | 3 --
hw/i386/Kconfig | 1 -
hw/misc/Kconfig | 4 --
hw/misc/meson.build | 1 -
pc-bios/README | 6 ---
pc-bios/meson.build | 1 -
pc-bios/sgabios.bin | Bin 4096 -> 0 bytes
roms/Makefile | 9 +---
roms/sgabios | 1 -
tests/migration/guestperf/engine.py | 2 +-
14 files changed, 12 insertions(+), 107 deletions(-)
delete mode 100644 hw/misc/sga.c
delete mode 100644 pc-bios/sgabios.bin
delete mode 160000 roms/sgabios
diff --git a/MAINTAINERS b/MAINTAINERS
index 96e25f62ac..fd54c1f140 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1676,7 +1676,6 @@ F: hw/acpi/piix4.c
F: hw/acpi/ich9*.c
F: include/hw/acpi/ich9*.h
F: include/hw/southbridge/piix.h
-F: hw/misc/sga.c
F: hw/isa/apm.c
F: include/hw/isa/apm.h
F: tests/unit/test-x86-cpuid.c
diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index da2e6fe63d..641d7d41ec 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -246,15 +246,6 @@ full SCSI support. Use virtio-scsi instead when SCSI passthrough is required.
Note this also applies to ``-device virtio-blk-pci,scsi=on|off``, which is an
alias.
-``-device sga`` (since 6.2)
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-The ``sga`` device loads an option ROM for x86 targets which enables
-SeaBIOS to send messages to the serial console. SeaBIOS 1.11.0 onwards
-contains native support for this feature and thus use of the option
-ROM approach is obsolete. The native SeaBIOS support can be activated
-by using ``-machine graphics=off``.
-
``-device nvme-ns,eui64-default=on|off`` (since 7.1)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst
index a17d0554d6..4a84e6174f 100644
--- a/docs/about/removed-features.rst
+++ b/docs/about/removed-features.rst
@@ -789,6 +789,16 @@ The 'ide-drive' device has been removed. Users should use 'ide-hd' or
The 'scsi-disk' device has been removed. Users should use 'scsi-hd' or
'scsi-cd' as appropriate to get a SCSI hard disk or CD-ROM as needed.
+``sga`` (removed in 8.0)
+''''''''''''''''''''''''
+
+The ``sga`` device loaded an option ROM for x86 targets which enabled
+SeaBIOS to send messages to the serial console. SeaBIOS 1.11.0 onwards
+contains native support for this feature and thus use of the option
+ROM approach was obsolete. The native SeaBIOS support can be activated
+by using ``-machine graphics=off``.
+
+
Related binaries
----------------
diff --git a/hw/misc/sga.c b/hw/misc/sga.c
deleted file mode 100644
index 1d04672b01..0000000000
--- a/hw/misc/sga.c
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * QEMU dummy ISA device for loading sgabios option rom.
- *
- * Copyright (c) 2011 Glauber Costa, Red Hat Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- * sgabios code originally available at code.google.com/p/sgabios
- *
- */
-
-#include "qemu/osdep.h"
-#include "hw/isa/isa.h"
-#include "hw/loader.h"
-#include "qemu/module.h"
-#include "qom/object.h"
-#include "qemu/error-report.h"
-
-#define SGABIOS_FILENAME "sgabios.bin"
-
-#define TYPE_SGA "sga"
-OBJECT_DECLARE_SIMPLE_TYPE(ISASGAState, SGA)
-
-struct ISASGAState {
- ISADevice parent_obj;
-};
-
-static void sga_realizefn(DeviceState *dev, Error **errp)
-{
- warn_report("-device sga is deprecated, use -machine graphics=off");
- rom_add_vga(SGABIOS_FILENAME);
-}
-
-static void sga_class_initfn(ObjectClass *klass, void *data)
-{
- DeviceClass *dc = DEVICE_CLASS(klass);
-
- set_bit(DEVICE_CATEGORY_DISPLAY, dc->categories);
- dc->realize = sga_realizefn;
- dc->desc = "Serial Graphics Adapter";
-}
-
-static const TypeInfo sga_info = {
- .name = TYPE_SGA,
- .parent = TYPE_ISA_DEVICE,
- .instance_size = sizeof(ISASGAState),
- .class_init = sga_class_initfn,
-};
-
-static void sga_register_types(void)
-{
- type_register_static(&sga_info);
-}
-
-type_init(sga_register_types)
diff --git a/.gitmodules b/.gitmodules
index 24cffa87d4..6ce5bf49c5 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -13,9 +13,6 @@
[submodule "roms/qemu-palcode"]
path = roms/qemu-palcode
url = https://gitlab.com/qemu-project/qemu-palcode.git
-[submodule "roms/sgabios"]
- path = roms/sgabios
- url = https://gitlab.com/qemu-project/sgabios.git
[submodule "dtc"]
path = dtc
url = https://gitlab.com/qemu-project/dtc.git
diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig
index 1bf47b0b0b..9fbfe748b5 100644
--- a/hw/i386/Kconfig
+++ b/hw/i386/Kconfig
@@ -26,7 +26,6 @@ config PC
imply QXL
imply SEV
imply SGX
- imply SGA
imply TEST_DEVICES
imply TPM_CRB
imply TPM_TIS_ISA
diff --git a/hw/misc/Kconfig b/hw/misc/Kconfig
index eaeddca277..2ef5781ef8 100644
--- a/hw/misc/Kconfig
+++ b/hw/misc/Kconfig
@@ -15,10 +15,6 @@ config ISA_DEBUG
bool
depends on ISA_BUS
-config SGA
- bool
- depends on ISA_BUS
-
config ISA_TESTDEV
bool
default y if TEST_DEVICES
diff --git a/hw/misc/meson.build b/hw/misc/meson.build
index 448e14b531..fe869b98ca 100644
--- a/hw/misc/meson.build
+++ b/hw/misc/meson.build
@@ -5,7 +5,6 @@ softmmu_ss.add(when: 'CONFIG_ISA_DEBUG', if_true: files('debugexit.c'))
softmmu_ss.add(when: 'CONFIG_ISA_TESTDEV', if_true: files('pc-testdev.c'))
softmmu_ss.add(when: 'CONFIG_PCA9552', if_true: files('pca9552.c'))
softmmu_ss.add(when: 'CONFIG_PCI_TESTDEV', if_true: files('pci-testdev.c'))
-softmmu_ss.add(when: 'CONFIG_SGA', if_true: files('sga.c'))
softmmu_ss.add(when: 'CONFIG_UNIMP', if_true: files('unimp.c'))
softmmu_ss.add(when: 'CONFIG_EMPTY_SLOT', if_true: files('empty_slot.c'))
softmmu_ss.add(when: 'CONFIG_LED', if_true: files('led.c'))
diff --git a/pc-bios/README b/pc-bios/README
index b94f3fb081..3702ed485c 100644
--- a/pc-bios/README
+++ b/pc-bios/README
@@ -20,12 +20,6 @@
-machine pseries,x-vof=on. When enabled, the firmware acts as a slim shim and
QEMU implements parts of the IEEE 1275 Open Firmware interface.
-- sgabios (the Serial Graphics Adapter option ROM) provides a means for
- legacy x86 software to communicate with an attached serial console as
- if a video card were attached. The master sources reside in a subversion
- repository at http://sgabios.googlecode.com/svn/trunk. A git mirror is
- available at https://gitlab.com/qemu-project/sgabios.git.
-
- The PXE roms come from the iPXE project. Built with BANNER_TIME 0.
Sources available at http://ipxe.org. Vendor:Device ID -> ROM mapping:
diff --git a/pc-bios/meson.build b/pc-bios/meson.build
index 388e0db6e4..a7224ef469 100644
--- a/pc-bios/meson.build
+++ b/pc-bios/meson.build
@@ -28,7 +28,6 @@ blobs = [
'bios-256k.bin',
'bios-microvm.bin',
'qboot.rom',
- 'sgabios.bin',
'vgabios.bin',
'vgabios-cirrus.bin',
'vgabios-stdvga.bin',
diff --git a/pc-bios/sgabios.bin b/pc-bios/sgabios.bin
deleted file mode 100644
index 6308f2e2d7064b52ff3c2e207b71018710866c05..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 4096
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
diff --git a/roms/Makefile b/roms/Makefile
index 5e44d97890..955f92286d 100644
--- a/roms/Makefile
+++ b/roms/Makefile
@@ -57,7 +57,6 @@ default help:
@echo "available build targets:"
@echo " bios -- update bios.bin (seabios)"
@echo " vgabios -- update vgabios binaries (seabios)"
- @echo " sgabios -- update sgabios binaries"
@echo " pxerom -- update nic roms (bios only)"
@echo " efirom -- update nic roms (bios+efi)"
@echo " slof -- update slof.bin"
@@ -102,11 +101,7 @@ build-seabios-config-%: config.%
OUT=$(CURDIR)/seabios/builds/$*/ all
-.PHONY: sgabios skiboot qboot
-sgabios:
- $(MAKE) -C sgabios
- cp sgabios/sgabios.bin ../pc-bios
-
+.PHONY: skiboot qboot
pxerom: $(patsubst %,pxe-rom-%,$(pxerom_variants))
@@ -199,8 +194,6 @@ npcm7xx_bootrom:
clean:
rm -rf seabios/.config seabios/out seabios/builds
- $(MAKE) -C sgabios clean
- rm -f sgabios/.depend
$(MAKE) -C ipxe/src veryclean
$(MAKE) -C edk2/BaseTools clean
$(MAKE) -C SLOF clean
diff --git a/roms/sgabios b/roms/sgabios
deleted file mode 160000
index cbaee52287..0000000000
--- a/roms/sgabios
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit cbaee52287e5f32373181cff50a00b6c4ac9015a
diff --git a/tests/migration/guestperf/engine.py b/tests/migration/guestperf/engine.py
index cc06fac592..e69d16a62c 100644
--- a/tests/migration/guestperf/engine.py
+++ b/tests/migration/guestperf/engine.py
@@ -337,7 +337,7 @@ def _get_common_args(self, hardware, tunnelled=False):
argv.extend(self._get_qemu_serial_args())
if self._debug:
- argv.extend(["-device", "sga"])
+ argv.extend(["-machine", "graphics=off"])
if hardware._prealloc_pages:
argv_source += ["-mem-path", "/dev/shm",
--
2.31.1
1 year, 9 months
[PATCH v3] cpu_s390: Implement getVendorForModel for IBM Z
by Thomas Huth
When running "virsh domcapabilities" on a s390x host, all the CPU
models show up with vendor='unknown' - which sounds kind of weird
since the vendor of these mainframe CPUs is well known: IBM.
All CPUs starting with either "z" or "gen" match a real mainframe
CPU by IBM, so let's return the string "IBM" for those now.
The only remaining ones are now the artifical "qemu" and "max"
models from QEMU itself, so it should be OK to get an "unknown"
vendor for those two.
Reviewed-by: Jiri Denemark <jdenemar(a)redhat.com>
Signed-off-by: Boris Fiuczynski<fiuczy(a)linux.ibm.com>
Signed-off-by: Thomas Huth <thuth(a)redhat.com>
---
v3: Use STRPREFIX() for the checks (thanks to Jiri for the hint!)
src/cpu/cpu_s390.c | 11 ++
tests/domaincapsdata/qemu_4.2.0.s390x.xml | 144 +++++++++++-----------
tests/domaincapsdata/qemu_5.2.0.s390x.xml | 144 +++++++++++-----------
tests/domaincapsdata/qemu_6.0.0.s390x.xml | 144 +++++++++++-----------
4 files changed, 227 insertions(+), 216 deletions(-)
diff --git a/src/cpu/cpu_s390.c b/src/cpu/cpu_s390.c
index d908a83928..81a1513ecb 100644
--- a/src/cpu/cpu_s390.c
+++ b/src/cpu/cpu_s390.c
@@ -109,6 +109,16 @@ virCPUs390ValidateFeatures(virCPUDef *cpu)
}
+static const char *
+virCPUs390GetVendorForModel(const char *modelName)
+{
+ if (STRPREFIX(modelName, "z") || STRPREFIX(modelName, "gen"))
+ return "IBM";
+
+ return NULL;
+}
+
+
struct cpuArchDriver cpuDriverS390 = {
.name = "s390",
.arch = archs,
@@ -119,4 +129,5 @@ struct cpuArchDriver cpuDriverS390 = {
.baseline = NULL,
.update = virCPUs390Update,
.validateFeatures = virCPUs390ValidateFeatures,
+ .getVendorForModel = virCPUs390GetVendorForModel,
};
diff --git a/tests/domaincapsdata/qemu_4.2.0.s390x.xml b/tests/domaincapsdata/qemu_4.2.0.s390x.xml
index 4f176e2d37..66841881a1 100644
--- a/tests/domaincapsdata/qemu_4.2.0.s390x.xml
+++ b/tests/domaincapsdata/qemu_4.2.0.s390x.xml
@@ -83,79 +83,79 @@
<feature policy='require' name='cmm'/>
</mode>
<mode name='custom' supported='yes'>
- <model usable='yes' vendor='unknown'>z800-base</model>
- <model usable='yes' vendor='unknown'>z890.2-base</model>
- <model usable='yes' vendor='unknown'>z9EC.2</model>
- <model usable='yes' vendor='unknown'>z13.2</model>
- <model usable='yes' vendor='unknown'>z9BC-base</model>
- <model usable='yes' vendor='unknown'>z990.5-base</model>
- <model usable='yes' vendor='unknown'>z890.2</model>
- <model usable='yes' vendor='unknown'>z890</model>
- <model usable='yes' vendor='unknown'>z9BC</model>
- <model usable='yes' vendor='unknown'>z13</model>
- <model usable='yes' vendor='unknown'>z196</model>
- <model usable='yes' vendor='unknown'>z13s</model>
- <model usable='yes' vendor='unknown'>z990.3</model>
- <model usable='yes' vendor='unknown'>z13s-base</model>
- <model usable='yes' vendor='unknown'>z9EC</model>
- <model usable='yes' vendor='unknown'>gen15a</model>
- <model usable='yes' vendor='unknown'>z14ZR1-base</model>
- <model usable='yes' vendor='unknown'>z14.2-base</model>
- <model usable='yes' vendor='unknown'>z900.3-base</model>
- <model usable='yes' vendor='unknown'>z13.2-base</model>
- <model usable='yes' vendor='unknown'>z196.2-base</model>
- <model usable='yes' vendor='unknown'>zBC12-base</model>
- <model usable='yes' vendor='unknown'>z9BC.2-base</model>
- <model usable='yes' vendor='unknown'>z900.2-base</model>
- <model usable='yes' vendor='unknown'>z9EC.3</model>
- <model usable='yes' vendor='unknown'>zEC12</model>
- <model usable='yes' vendor='unknown'>z900</model>
- <model usable='yes' vendor='unknown'>z114-base</model>
- <model usable='yes' vendor='unknown'>zEC12-base</model>
- <model usable='yes' vendor='unknown'>z10EC.2</model>
- <model usable='yes' vendor='unknown'>z10EC-base</model>
- <model usable='yes' vendor='unknown'>z900.3</model>
- <model usable='yes' vendor='unknown'>z14ZR1</model>
- <model usable='yes' vendor='unknown'>z10BC</model>
- <model usable='yes' vendor='unknown'>z10BC.2-base</model>
- <model usable='yes' vendor='unknown'>z990.2</model>
- <model usable='yes' vendor='unknown'>z9BC.2</model>
- <model usable='yes' vendor='unknown'>z990</model>
- <model usable='yes' vendor='unknown'>z14</model>
- <model usable='yes' vendor='unknown'>gen15b-base</model>
- <model usable='yes' vendor='unknown'>z990.4</model>
+ <model usable='yes' vendor='IBM'>z800-base</model>
+ <model usable='yes' vendor='IBM'>z890.2-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.2</model>
+ <model usable='yes' vendor='IBM'>z13.2</model>
+ <model usable='yes' vendor='IBM'>z9BC-base</model>
+ <model usable='yes' vendor='IBM'>z990.5-base</model>
+ <model usable='yes' vendor='IBM'>z890.2</model>
+ <model usable='yes' vendor='IBM'>z890</model>
+ <model usable='yes' vendor='IBM'>z9BC</model>
+ <model usable='yes' vendor='IBM'>z13</model>
+ <model usable='yes' vendor='IBM'>z196</model>
+ <model usable='yes' vendor='IBM'>z13s</model>
+ <model usable='yes' vendor='IBM'>z990.3</model>
+ <model usable='yes' vendor='IBM'>z13s-base</model>
+ <model usable='yes' vendor='IBM'>z9EC</model>
+ <model usable='yes' vendor='IBM'>gen15a</model>
+ <model usable='yes' vendor='IBM'>z14ZR1-base</model>
+ <model usable='yes' vendor='IBM'>z14.2-base</model>
+ <model usable='yes' vendor='IBM'>z900.3-base</model>
+ <model usable='yes' vendor='IBM'>z13.2-base</model>
+ <model usable='yes' vendor='IBM'>z196.2-base</model>
+ <model usable='yes' vendor='IBM'>zBC12-base</model>
+ <model usable='yes' vendor='IBM'>z9BC.2-base</model>
+ <model usable='yes' vendor='IBM'>z900.2-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.3</model>
+ <model usable='yes' vendor='IBM'>zEC12</model>
+ <model usable='yes' vendor='IBM'>z900</model>
+ <model usable='yes' vendor='IBM'>z114-base</model>
+ <model usable='yes' vendor='IBM'>zEC12-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.2</model>
+ <model usable='yes' vendor='IBM'>z10EC-base</model>
+ <model usable='yes' vendor='IBM'>z900.3</model>
+ <model usable='yes' vendor='IBM'>z14ZR1</model>
+ <model usable='yes' vendor='IBM'>z10BC</model>
+ <model usable='yes' vendor='IBM'>z10BC.2-base</model>
+ <model usable='yes' vendor='IBM'>z990.2</model>
+ <model usable='yes' vendor='IBM'>z9BC.2</model>
+ <model usable='yes' vendor='IBM'>z990</model>
+ <model usable='yes' vendor='IBM'>z14</model>
+ <model usable='yes' vendor='IBM'>gen15b-base</model>
+ <model usable='yes' vendor='IBM'>z990.4</model>
<model usable='yes' vendor='unknown'>max</model>
- <model usable='yes' vendor='unknown'>z10EC.2-base</model>
- <model usable='yes' vendor='unknown'>gen15a-base</model>
- <model usable='yes' vendor='unknown'>z800</model>
- <model usable='yes' vendor='unknown'>zEC12.2</model>
- <model usable='yes' vendor='unknown'>z10EC</model>
- <model usable='yes' vendor='unknown'>z990.2-base</model>
- <model usable='yes' vendor='unknown'>z900-base</model>
- <model usable='yes' vendor='unknown'>z10BC.2</model>
- <model usable='yes' vendor='unknown'>z9EC-base</model>
- <model usable='yes' vendor='unknown'>z9EC.3-base</model>
- <model usable='yes' vendor='unknown'>z114</model>
- <model usable='yes' vendor='unknown'>z890.3</model>
- <model usable='yes' vendor='unknown'>z196-base</model>
- <model usable='yes' vendor='unknown'>z9EC.2-base</model>
- <model usable='yes' vendor='unknown'>z196.2</model>
- <model usable='yes' vendor='unknown'>z14.2</model>
- <model usable='yes' vendor='unknown'>z990-base</model>
- <model usable='yes' vendor='unknown'>z900.2</model>
- <model usable='yes' vendor='unknown'>z890-base</model>
- <model usable='yes' vendor='unknown'>z10EC.3</model>
- <model usable='yes' vendor='unknown'>z14-base</model>
- <model usable='yes' vendor='unknown'>z990.4-base</model>
- <model usable='yes' vendor='unknown'>z10EC.3-base</model>
- <model usable='yes' vendor='unknown'>z10BC-base</model>
- <model usable='yes' vendor='unknown'>z13-base</model>
- <model usable='yes' vendor='unknown'>z990.3-base</model>
- <model usable='yes' vendor='unknown'>zEC12.2-base</model>
- <model usable='yes' vendor='unknown'>zBC12</model>
- <model usable='yes' vendor='unknown'>z890.3-base</model>
- <model usable='yes' vendor='unknown'>z990.5</model>
- <model usable='yes' vendor='unknown'>gen15b</model>
+ <model usable='yes' vendor='IBM'>z10EC.2-base</model>
+ <model usable='yes' vendor='IBM'>gen15a-base</model>
+ <model usable='yes' vendor='IBM'>z800</model>
+ <model usable='yes' vendor='IBM'>zEC12.2</model>
+ <model usable='yes' vendor='IBM'>z10EC</model>
+ <model usable='yes' vendor='IBM'>z990.2-base</model>
+ <model usable='yes' vendor='IBM'>z900-base</model>
+ <model usable='yes' vendor='IBM'>z10BC.2</model>
+ <model usable='yes' vendor='IBM'>z9EC-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.3-base</model>
+ <model usable='yes' vendor='IBM'>z114</model>
+ <model usable='yes' vendor='IBM'>z890.3</model>
+ <model usable='yes' vendor='IBM'>z196-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.2-base</model>
+ <model usable='yes' vendor='IBM'>z196.2</model>
+ <model usable='yes' vendor='IBM'>z14.2</model>
+ <model usable='yes' vendor='IBM'>z990-base</model>
+ <model usable='yes' vendor='IBM'>z900.2</model>
+ <model usable='yes' vendor='IBM'>z890-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.3</model>
+ <model usable='yes' vendor='IBM'>z14-base</model>
+ <model usable='yes' vendor='IBM'>z990.4-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.3-base</model>
+ <model usable='yes' vendor='IBM'>z10BC-base</model>
+ <model usable='yes' vendor='IBM'>z13-base</model>
+ <model usable='yes' vendor='IBM'>z990.3-base</model>
+ <model usable='yes' vendor='IBM'>zEC12.2-base</model>
+ <model usable='yes' vendor='IBM'>zBC12</model>
+ <model usable='yes' vendor='IBM'>z890.3-base</model>
+ <model usable='yes' vendor='IBM'>z990.5</model>
+ <model usable='yes' vendor='IBM'>gen15b</model>
<model usable='no' vendor='unknown'>qemu</model>
</mode>
</cpu>
diff --git a/tests/domaincapsdata/qemu_5.2.0.s390x.xml b/tests/domaincapsdata/qemu_5.2.0.s390x.xml
index 760f514d7b..31ddbfbc75 100644
--- a/tests/domaincapsdata/qemu_5.2.0.s390x.xml
+++ b/tests/domaincapsdata/qemu_5.2.0.s390x.xml
@@ -85,79 +85,79 @@
<feature policy='require' name='cmm'/>
</mode>
<mode name='custom' supported='yes'>
- <model usable='yes' vendor='unknown'>z800-base</model>
- <model usable='yes' vendor='unknown'>z890.2-base</model>
- <model usable='yes' vendor='unknown'>z9EC.2</model>
- <model usable='yes' vendor='unknown'>z13.2</model>
- <model usable='yes' vendor='unknown'>z990.5-base</model>
- <model usable='yes' vendor='unknown'>z9BC-base</model>
- <model usable='yes' vendor='unknown'>z890.2</model>
- <model usable='yes' vendor='unknown'>z890</model>
- <model usable='yes' vendor='unknown'>z9BC</model>
- <model usable='yes' vendor='unknown'>z13</model>
- <model usable='yes' vendor='unknown'>z196</model>
- <model usable='yes' vendor='unknown'>z13s</model>
- <model usable='yes' vendor='unknown'>z990.3</model>
- <model usable='yes' vendor='unknown'>z13s-base</model>
- <model usable='yes' vendor='unknown'>z9EC</model>
- <model usable='yes' vendor='unknown'>gen15a</model>
- <model usable='yes' vendor='unknown'>z14ZR1-base</model>
- <model usable='yes' vendor='unknown'>z14.2-base</model>
- <model usable='yes' vendor='unknown'>z900.3-base</model>
- <model usable='yes' vendor='unknown'>z13.2-base</model>
- <model usable='yes' vendor='unknown'>z196.2-base</model>
- <model usable='yes' vendor='unknown'>zBC12-base</model>
- <model usable='yes' vendor='unknown'>z9BC.2-base</model>
- <model usable='yes' vendor='unknown'>z900.2-base</model>
- <model usable='yes' vendor='unknown'>z9EC.3</model>
- <model usable='yes' vendor='unknown'>zEC12</model>
- <model usable='yes' vendor='unknown'>z900</model>
- <model usable='yes' vendor='unknown'>z114-base</model>
- <model usable='yes' vendor='unknown'>zEC12-base</model>
- <model usable='yes' vendor='unknown'>z10EC.2</model>
- <model usable='yes' vendor='unknown'>z10EC-base</model>
- <model usable='yes' vendor='unknown'>z900.3</model>
- <model usable='yes' vendor='unknown'>z14ZR1</model>
- <model usable='yes' vendor='unknown'>z10BC</model>
- <model usable='yes' vendor='unknown'>z10BC.2-base</model>
- <model usable='yes' vendor='unknown'>z9BC.2</model>
- <model usable='yes' vendor='unknown'>z990</model>
- <model usable='yes' vendor='unknown'>z990.2</model>
- <model usable='yes' vendor='unknown'>z14</model>
- <model usable='yes' vendor='unknown'>gen15b-base</model>
- <model usable='yes' vendor='unknown'>z990.4</model>
+ <model usable='yes' vendor='IBM'>z800-base</model>
+ <model usable='yes' vendor='IBM'>z890.2-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.2</model>
+ <model usable='yes' vendor='IBM'>z13.2</model>
+ <model usable='yes' vendor='IBM'>z990.5-base</model>
+ <model usable='yes' vendor='IBM'>z9BC-base</model>
+ <model usable='yes' vendor='IBM'>z890.2</model>
+ <model usable='yes' vendor='IBM'>z890</model>
+ <model usable='yes' vendor='IBM'>z9BC</model>
+ <model usable='yes' vendor='IBM'>z13</model>
+ <model usable='yes' vendor='IBM'>z196</model>
+ <model usable='yes' vendor='IBM'>z13s</model>
+ <model usable='yes' vendor='IBM'>z990.3</model>
+ <model usable='yes' vendor='IBM'>z13s-base</model>
+ <model usable='yes' vendor='IBM'>z9EC</model>
+ <model usable='yes' vendor='IBM'>gen15a</model>
+ <model usable='yes' vendor='IBM'>z14ZR1-base</model>
+ <model usable='yes' vendor='IBM'>z14.2-base</model>
+ <model usable='yes' vendor='IBM'>z900.3-base</model>
+ <model usable='yes' vendor='IBM'>z13.2-base</model>
+ <model usable='yes' vendor='IBM'>z196.2-base</model>
+ <model usable='yes' vendor='IBM'>zBC12-base</model>
+ <model usable='yes' vendor='IBM'>z9BC.2-base</model>
+ <model usable='yes' vendor='IBM'>z900.2-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.3</model>
+ <model usable='yes' vendor='IBM'>zEC12</model>
+ <model usable='yes' vendor='IBM'>z900</model>
+ <model usable='yes' vendor='IBM'>z114-base</model>
+ <model usable='yes' vendor='IBM'>zEC12-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.2</model>
+ <model usable='yes' vendor='IBM'>z10EC-base</model>
+ <model usable='yes' vendor='IBM'>z900.3</model>
+ <model usable='yes' vendor='IBM'>z14ZR1</model>
+ <model usable='yes' vendor='IBM'>z10BC</model>
+ <model usable='yes' vendor='IBM'>z10BC.2-base</model>
+ <model usable='yes' vendor='IBM'>z9BC.2</model>
+ <model usable='yes' vendor='IBM'>z990</model>
+ <model usable='yes' vendor='IBM'>z990.2</model>
+ <model usable='yes' vendor='IBM'>z14</model>
+ <model usable='yes' vendor='IBM'>gen15b-base</model>
+ <model usable='yes' vendor='IBM'>z990.4</model>
<model usable='yes' vendor='unknown'>max</model>
- <model usable='yes' vendor='unknown'>z990.2-base</model>
- <model usable='yes' vendor='unknown'>z10EC.2-base</model>
- <model usable='yes' vendor='unknown'>gen15a-base</model>
- <model usable='yes' vendor='unknown'>z800</model>
- <model usable='yes' vendor='unknown'>z10EC</model>
- <model usable='yes' vendor='unknown'>zEC12.2</model>
- <model usable='yes' vendor='unknown'>z900-base</model>
- <model usable='yes' vendor='unknown'>z10BC.2</model>
- <model usable='yes' vendor='unknown'>z9EC-base</model>
- <model usable='yes' vendor='unknown'>z9EC.3-base</model>
- <model usable='yes' vendor='unknown'>z114</model>
- <model usable='yes' vendor='unknown'>z890.3</model>
- <model usable='yes' vendor='unknown'>z196-base</model>
- <model usable='yes' vendor='unknown'>z9EC.2-base</model>
- <model usable='yes' vendor='unknown'>z196.2</model>
- <model usable='yes' vendor='unknown'>z14.2</model>
- <model usable='yes' vendor='unknown'>z990-base</model>
- <model usable='yes' vendor='unknown'>z900.2</model>
- <model usable='yes' vendor='unknown'>z10EC.3</model>
- <model usable='yes' vendor='unknown'>z890-base</model>
- <model usable='yes' vendor='unknown'>z14-base</model>
- <model usable='yes' vendor='unknown'>z990.4-base</model>
- <model usable='yes' vendor='unknown'>z10EC.3-base</model>
- <model usable='yes' vendor='unknown'>z10BC-base</model>
- <model usable='yes' vendor='unknown'>z13-base</model>
- <model usable='yes' vendor='unknown'>z990.3-base</model>
- <model usable='yes' vendor='unknown'>zEC12.2-base</model>
- <model usable='yes' vendor='unknown'>zBC12</model>
- <model usable='yes' vendor='unknown'>z890.3-base</model>
- <model usable='yes' vendor='unknown'>z990.5</model>
- <model usable='yes' vendor='unknown'>gen15b</model>
+ <model usable='yes' vendor='IBM'>z990.2-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.2-base</model>
+ <model usable='yes' vendor='IBM'>gen15a-base</model>
+ <model usable='yes' vendor='IBM'>z800</model>
+ <model usable='yes' vendor='IBM'>z10EC</model>
+ <model usable='yes' vendor='IBM'>zEC12.2</model>
+ <model usable='yes' vendor='IBM'>z900-base</model>
+ <model usable='yes' vendor='IBM'>z10BC.2</model>
+ <model usable='yes' vendor='IBM'>z9EC-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.3-base</model>
+ <model usable='yes' vendor='IBM'>z114</model>
+ <model usable='yes' vendor='IBM'>z890.3</model>
+ <model usable='yes' vendor='IBM'>z196-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.2-base</model>
+ <model usable='yes' vendor='IBM'>z196.2</model>
+ <model usable='yes' vendor='IBM'>z14.2</model>
+ <model usable='yes' vendor='IBM'>z990-base</model>
+ <model usable='yes' vendor='IBM'>z900.2</model>
+ <model usable='yes' vendor='IBM'>z10EC.3</model>
+ <model usable='yes' vendor='IBM'>z890-base</model>
+ <model usable='yes' vendor='IBM'>z14-base</model>
+ <model usable='yes' vendor='IBM'>z990.4-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.3-base</model>
+ <model usable='yes' vendor='IBM'>z10BC-base</model>
+ <model usable='yes' vendor='IBM'>z13-base</model>
+ <model usable='yes' vendor='IBM'>z990.3-base</model>
+ <model usable='yes' vendor='IBM'>zEC12.2-base</model>
+ <model usable='yes' vendor='IBM'>zBC12</model>
+ <model usable='yes' vendor='IBM'>z890.3-base</model>
+ <model usable='yes' vendor='IBM'>z990.5</model>
+ <model usable='yes' vendor='IBM'>gen15b</model>
<model usable='yes' vendor='unknown'>qemu</model>
</mode>
</cpu>
diff --git a/tests/domaincapsdata/qemu_6.0.0.s390x.xml b/tests/domaincapsdata/qemu_6.0.0.s390x.xml
index b1968668db..1cb19e051b 100644
--- a/tests/domaincapsdata/qemu_6.0.0.s390x.xml
+++ b/tests/domaincapsdata/qemu_6.0.0.s390x.xml
@@ -86,79 +86,79 @@
<feature policy='require' name='cmm'/>
</mode>
<mode name='custom' supported='yes'>
- <model usable='yes' vendor='unknown'>z800-base</model>
- <model usable='yes' vendor='unknown'>z890.2-base</model>
- <model usable='yes' vendor='unknown'>z9EC.2</model>
- <model usable='yes' vendor='unknown'>z13.2</model>
- <model usable='yes' vendor='unknown'>z990.5-base</model>
- <model usable='yes' vendor='unknown'>z9BC-base</model>
- <model usable='yes' vendor='unknown'>z890.2</model>
- <model usable='yes' vendor='unknown'>z890</model>
- <model usable='yes' vendor='unknown'>z9BC</model>
- <model usable='yes' vendor='unknown'>z13</model>
- <model usable='yes' vendor='unknown'>z196</model>
- <model usable='yes' vendor='unknown'>z13s</model>
- <model usable='yes' vendor='unknown'>z990.3</model>
- <model usable='yes' vendor='unknown'>z13s-base</model>
- <model usable='yes' vendor='unknown'>z9EC</model>
- <model usable='yes' vendor='unknown'>gen15a</model>
- <model usable='yes' vendor='unknown'>z14ZR1-base</model>
- <model usable='yes' vendor='unknown'>z14.2-base</model>
- <model usable='yes' vendor='unknown'>z900.3-base</model>
- <model usable='yes' vendor='unknown'>z13.2-base</model>
- <model usable='yes' vendor='unknown'>z196.2-base</model>
- <model usable='yes' vendor='unknown'>zBC12-base</model>
- <model usable='yes' vendor='unknown'>z9BC.2-base</model>
- <model usable='yes' vendor='unknown'>z900.2-base</model>
- <model usable='yes' vendor='unknown'>z9EC.3</model>
- <model usable='yes' vendor='unknown'>zEC12</model>
- <model usable='yes' vendor='unknown'>z900</model>
- <model usable='yes' vendor='unknown'>z114-base</model>
- <model usable='yes' vendor='unknown'>zEC12-base</model>
- <model usable='yes' vendor='unknown'>z10EC.2</model>
- <model usable='yes' vendor='unknown'>z10EC-base</model>
- <model usable='yes' vendor='unknown'>z900.3</model>
- <model usable='yes' vendor='unknown'>z14ZR1</model>
- <model usable='yes' vendor='unknown'>z10BC</model>
- <model usable='yes' vendor='unknown'>z10BC.2-base</model>
- <model usable='yes' vendor='unknown'>z9BC.2</model>
- <model usable='yes' vendor='unknown'>z990</model>
- <model usable='yes' vendor='unknown'>z990.2</model>
- <model usable='yes' vendor='unknown'>z14</model>
- <model usable='yes' vendor='unknown'>gen15b-base</model>
- <model usable='yes' vendor='unknown'>z990.4</model>
+ <model usable='yes' vendor='IBM'>z800-base</model>
+ <model usable='yes' vendor='IBM'>z890.2-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.2</model>
+ <model usable='yes' vendor='IBM'>z13.2</model>
+ <model usable='yes' vendor='IBM'>z990.5-base</model>
+ <model usable='yes' vendor='IBM'>z9BC-base</model>
+ <model usable='yes' vendor='IBM'>z890.2</model>
+ <model usable='yes' vendor='IBM'>z890</model>
+ <model usable='yes' vendor='IBM'>z9BC</model>
+ <model usable='yes' vendor='IBM'>z13</model>
+ <model usable='yes' vendor='IBM'>z196</model>
+ <model usable='yes' vendor='IBM'>z13s</model>
+ <model usable='yes' vendor='IBM'>z990.3</model>
+ <model usable='yes' vendor='IBM'>z13s-base</model>
+ <model usable='yes' vendor='IBM'>z9EC</model>
+ <model usable='yes' vendor='IBM'>gen15a</model>
+ <model usable='yes' vendor='IBM'>z14ZR1-base</model>
+ <model usable='yes' vendor='IBM'>z14.2-base</model>
+ <model usable='yes' vendor='IBM'>z900.3-base</model>
+ <model usable='yes' vendor='IBM'>z13.2-base</model>
+ <model usable='yes' vendor='IBM'>z196.2-base</model>
+ <model usable='yes' vendor='IBM'>zBC12-base</model>
+ <model usable='yes' vendor='IBM'>z9BC.2-base</model>
+ <model usable='yes' vendor='IBM'>z900.2-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.3</model>
+ <model usable='yes' vendor='IBM'>zEC12</model>
+ <model usable='yes' vendor='IBM'>z900</model>
+ <model usable='yes' vendor='IBM'>z114-base</model>
+ <model usable='yes' vendor='IBM'>zEC12-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.2</model>
+ <model usable='yes' vendor='IBM'>z10EC-base</model>
+ <model usable='yes' vendor='IBM'>z900.3</model>
+ <model usable='yes' vendor='IBM'>z14ZR1</model>
+ <model usable='yes' vendor='IBM'>z10BC</model>
+ <model usable='yes' vendor='IBM'>z10BC.2-base</model>
+ <model usable='yes' vendor='IBM'>z9BC.2</model>
+ <model usable='yes' vendor='IBM'>z990</model>
+ <model usable='yes' vendor='IBM'>z990.2</model>
+ <model usable='yes' vendor='IBM'>z14</model>
+ <model usable='yes' vendor='IBM'>gen15b-base</model>
+ <model usable='yes' vendor='IBM'>z990.4</model>
<model usable='yes' vendor='unknown'>max</model>
- <model usable='yes' vendor='unknown'>z10EC.2-base</model>
- <model usable='yes' vendor='unknown'>gen15a-base</model>
- <model usable='yes' vendor='unknown'>z800</model>
- <model usable='yes' vendor='unknown'>z10EC</model>
- <model usable='yes' vendor='unknown'>zEC12.2</model>
- <model usable='yes' vendor='unknown'>z990.2-base</model>
- <model usable='yes' vendor='unknown'>z900-base</model>
- <model usable='yes' vendor='unknown'>z10BC.2</model>
- <model usable='yes' vendor='unknown'>z9EC-base</model>
- <model usable='yes' vendor='unknown'>z9EC.3-base</model>
- <model usable='yes' vendor='unknown'>z114</model>
- <model usable='yes' vendor='unknown'>z890.3</model>
- <model usable='yes' vendor='unknown'>z196-base</model>
- <model usable='yes' vendor='unknown'>z9EC.2-base</model>
- <model usable='yes' vendor='unknown'>z196.2</model>
- <model usable='yes' vendor='unknown'>z14.2</model>
- <model usable='yes' vendor='unknown'>z990-base</model>
- <model usable='yes' vendor='unknown'>z900.2</model>
- <model usable='yes' vendor='unknown'>z890-base</model>
- <model usable='yes' vendor='unknown'>z10EC.3</model>
- <model usable='yes' vendor='unknown'>z14-base</model>
- <model usable='yes' vendor='unknown'>z990.4-base</model>
- <model usable='yes' vendor='unknown'>z10EC.3-base</model>
- <model usable='yes' vendor='unknown'>z10BC-base</model>
- <model usable='yes' vendor='unknown'>z13-base</model>
- <model usable='yes' vendor='unknown'>z990.3-base</model>
- <model usable='yes' vendor='unknown'>zEC12.2-base</model>
- <model usable='yes' vendor='unknown'>zBC12</model>
- <model usable='yes' vendor='unknown'>z890.3-base</model>
- <model usable='yes' vendor='unknown'>z990.5</model>
- <model usable='yes' vendor='unknown'>gen15b</model>
+ <model usable='yes' vendor='IBM'>z10EC.2-base</model>
+ <model usable='yes' vendor='IBM'>gen15a-base</model>
+ <model usable='yes' vendor='IBM'>z800</model>
+ <model usable='yes' vendor='IBM'>z10EC</model>
+ <model usable='yes' vendor='IBM'>zEC12.2</model>
+ <model usable='yes' vendor='IBM'>z990.2-base</model>
+ <model usable='yes' vendor='IBM'>z900-base</model>
+ <model usable='yes' vendor='IBM'>z10BC.2</model>
+ <model usable='yes' vendor='IBM'>z9EC-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.3-base</model>
+ <model usable='yes' vendor='IBM'>z114</model>
+ <model usable='yes' vendor='IBM'>z890.3</model>
+ <model usable='yes' vendor='IBM'>z196-base</model>
+ <model usable='yes' vendor='IBM'>z9EC.2-base</model>
+ <model usable='yes' vendor='IBM'>z196.2</model>
+ <model usable='yes' vendor='IBM'>z14.2</model>
+ <model usable='yes' vendor='IBM'>z990-base</model>
+ <model usable='yes' vendor='IBM'>z900.2</model>
+ <model usable='yes' vendor='IBM'>z890-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.3</model>
+ <model usable='yes' vendor='IBM'>z14-base</model>
+ <model usable='yes' vendor='IBM'>z990.4-base</model>
+ <model usable='yes' vendor='IBM'>z10EC.3-base</model>
+ <model usable='yes' vendor='IBM'>z10BC-base</model>
+ <model usable='yes' vendor='IBM'>z13-base</model>
+ <model usable='yes' vendor='IBM'>z990.3-base</model>
+ <model usable='yes' vendor='IBM'>zEC12.2-base</model>
+ <model usable='yes' vendor='IBM'>zBC12</model>
+ <model usable='yes' vendor='IBM'>z890.3-base</model>
+ <model usable='yes' vendor='IBM'>z990.5</model>
+ <model usable='yes' vendor='IBM'>gen15b</model>
<model usable='yes' vendor='unknown'>qemu</model>
</mode>
</cpu>
--
2.31.1
1 year, 9 months
[PATCH 1/1] Fix a trivial flake8 warning
by jshen28
Remove an unused '_' in file
Signed-off-by: jshen28 <yshxxsjt715(a)163.com>
---
tools/virt-qemu-qmp-proxy | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/virt-qemu-qmp-proxy b/tools/virt-qemu-qmp-proxy
index dfbaa1ff0c..2d9dd6495d 100755
--- a/tools/virt-qemu-qmp-proxy
+++ b/tools/virt-qemu-qmp-proxy
@@ -335,7 +335,7 @@ def main():
sock.bind(args.sockpath)
sock.listen(1)
- _ = QMPProxy(conn, dom, sock, args.verbose)
+ QMPProxy(conn, dom, sock, args.verbose)
while True:
libvirt.virEventRunDefaultImpl()
--
2.17.1
1 year, 9 months
[PATCH 0/6] add support for pvpanic-pci device
by Kristina Hanicova
*** BLURB HERE ***
Kristina Hanicova (6):
qemu: introduce QEMU_CAPS_DEVICE_PANIC_PCI
conf: add panic model 'pvpanic'
tests: add test cases for device pvpanic-pci
qemu: assign PCI address to device pvpanic-pci
tests: add case for pvpanic-pci without address
docs: document panic device 'pvpanic-pci'
docs/formatdomain.rst | 1 +
src/conf/domain_conf.c | 1 +
src/conf/domain_conf.h | 1 +
src/conf/schemas/domaincommon.rng | 1 +
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 19 +++++
src/qemu/qemu_domain_address.c | 34 ++++++++-
src/qemu/qemu_validate.c | 16 +++++
.../caps_6.0.0.aarch64.xml | 1 +
.../caps_6.0.0.x86_64.xml | 1 +
.../caps_6.1.0.x86_64.xml | 1 +
.../caps_6.2.0.aarch64.xml | 1 +
.../qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 +
.../caps_6.2.0.x86_64.xml | 1 +
.../caps_7.0.0.aarch64.xml | 1 +
.../qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 +
.../caps_7.0.0.x86_64.xml | 1 +
.../qemucapabilitiesdata/caps_7.1.0.ppc64.xml | 1 +
.../caps_7.1.0.x86_64.xml | 1 +
.../caps_7.2.0.x86_64.xml | 1 +
.../caps_8.0.0.riscv64.xml | 1 +
.../caps_8.0.0.x86_64.xml | 1 +
.../pvpanic-pci-aarch64.aarch64-latest.args | 43 ++++++++++++
.../qemuxml2argvdata/pvpanic-pci-aarch64.xml | 20 ++++++
...invalid-address-aarch64.aarch64-latest.err | 1 +
.../pvpanic-pci-invalid-address-aarch64.xml | 20 ++++++
...pci-no-address-aarch64.aarch64-latest.args | 41 +++++++++++
.../pvpanic-pci-no-address-aarch64.xml | 18 +++++
.../pvpanic-pci-x86_64.x86_64-latest.args | 43 ++++++++++++
tests/qemuxml2argvdata/pvpanic-pci-x86_64.xml | 31 +++++++++
tests/qemuxml2argvtest.c | 4 ++
.../pvpanic-pci-aarch64.aarch64-latest.xml | 63 +++++++++++++++++
...-pci-no-address-aarch64.aarch64-latest.xml | 53 ++++++++++++++
.../pvpanic-pci-x86_64.x86_64-latest.xml | 69 +++++++++++++++++++
tests/qemuxml2xmltest.c | 4 ++
36 files changed, 499 insertions(+), 1 deletion(-)
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-aarch64.aarch64-latest.args
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-aarch64.xml
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-invalid-address-aarch64.aarch64-latest.err
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-invalid-address-aarch64.xml
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-no-address-aarch64.aarch64-latest.args
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-no-address-aarch64.xml
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-x86_64.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/pvpanic-pci-x86_64.xml
create mode 100644 tests/qemuxml2xmloutdata/pvpanic-pci-aarch64.aarch64-latest.xml
create mode 100644 tests/qemuxml2xmloutdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml
create mode 100644 tests/qemuxml2xmloutdata/pvpanic-pci-x86_64.x86_64-latest.xml
--
2.39.1
1 year, 9 months
[PATCH V2 0/4] migration: add qemu parallel migration options
by Jiang Jiacheng
Add qemu parallel migration options to set multifd-compression
multifd-zlib-level and multifd-zstd-level. These parameters has
been supported by QEMU since 5.0.
v2 of:
https://listman.redhat.com/archives/libvir-list/2023-January/237088.html
diff to v1:
* remove VIR_MIGRATE_PARAM_PARALLEL_COMPRESSION and related message
* support to reuse VIR_MIGRATE_PARAM_COMPRESSION to set parallel
migration compress method
* update commit message
Jiang Jiacheng (4):
Add public API for parallel compression method
qemu: Add qemu parallel migration parameters
qemu: support set parallel migration compression method
virsh: Add migrate options to set parallel compress level
docs/manpages/virsh.rst | 22 ++++---
include/libvirt/libvirt-domain.h | 24 +++++++-
src/qemu/qemu_migration.h | 2 +
src/qemu/qemu_migration_params.c | 100 ++++++++++++++++++++++++++++++-
src/qemu/qemu_migration_params.h | 3 +
tools/virsh-domain.c | 26 ++++++++
6 files changed, 166 insertions(+), 11 deletions(-)
--
2.33.0
1 year, 9 months