Devel
Threads by month
- ----- 2026 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
December 2020
- 60 participants
- 154 discussions
17 Dec '20
Before this patch set, numatune only has three memory modes:
static, interleave and prefered. These memory policies are
ultimately set by mbind() system call.
Memory policy could be 'hard coded' into the kernel, but none of
above policies fit our requirment under this case. mbind() support
default memory policy, but it requires a NULL nodemask. So obviously
setting allowed memory nodes is cgroups' mission under this case.
So we introduce a new option for mode in numatune named 'restrictive'.
<numatune>
<memory mode="restrictive" nodeset="1-4,^3"/>
<memnode cellid="0" mode="restrictive" nodeset="1"/>
<memnode cellid="2" mode="restrictive" nodeset="2"/>
</numatune>
The config above means we only use cgroups to restrict the allowed
memory nodes and not setting any specific memory policies explicitly.
RFC discussion:
https://www.redhat.com/archives/libvir-list/2020-November/msg01256.html
Regards,
Luyao
Luyao Zhong (3):
docs: add docs for 'restrictive' option for mode in numatune
schema: add 'restrictive' config option for mode in numatune
qemu: add parser and formatter for 'restrictive' mode in numatune
docs/formatdomain.rst | 7 +++-
docs/schemas/domaincommon.rng | 2 +
include/libvirt/libvirt-domain.h | 1 +
src/conf/numa_conf.c | 9 +++++
src/qemu/qemu_command.c | 6 ++-
src/qemu/qemu_process.c | 27 +++++++++++++
src/util/virnuma.c | 3 ++
.../numatune-memnode-invalid-mode.err | 1 +
.../numatune-memnode-invalid-mode.xml | 33 +++++++++++++++
...emnode-restrictive-mode.x86_64-latest.args | 40 +++++++++++++++++++
.../numatune-memnode-restrictive-mode.xml | 33 +++++++++++++++
tests/qemuxml2argvtest.c | 2 +
...memnode-restrictive-mode.x86_64-latest.xml | 40 +++++++++++++++++++
tests/qemuxml2xmltest.c | 1 +
14 files changed, 202 insertions(+), 3 deletions(-)
create mode 100644 tests/qemuxml2argvdata/numatune-memnode-invalid-mode.err
create mode 100644 tests/qemuxml2argvdata/numatune-memnode-invalid-mode.xml
create mode 100644 tests/qemuxml2argvdata/numatune-memnode-restrictive-mode.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/numatune-memnode-restrictive-mode.xml
create mode 100644 tests/qemuxml2xmloutdata/numatune-memnode-restrictive-mode.x86_64-latest.xml
--
2.25.4
2
5
A few issues came up during review of this series that were better
fixed in cleanups rather than requiring yet another round of
review. (A couple of things I noticed after the other patches were
already pushed).
Laine Stump (5):
util: fix tap device name auto-generation for FreeBSD
bhyve: remove redundant code that adds "template" netdev name
qemu: remove redundant code that adds "template" netdev name
util: simplify virNetDevMacVLanCreateWithVPortProfile()
util: minor comment/formatting changes to virNetDevTapCreate()
src/bhyve/bhyve_command.c | 7 ----
src/qemu/qemu_interface.c | 18 +++--------
src/util/virnetdevmacvlan.c | 64 ++++++-------------------------------
src/util/virnetdevtap.c | 46 +++++++-------------------
4 files changed, 25 insertions(+), 110 deletions(-)
--
2.28.0
3
12
Current virPCIGetNetName() logic is to get net device name by checking
it's phys_port_id, if caller provide it, or by it's index (eg, by it's
position at sysfs net directory). This approach worked fine up until
linux kernel version 5.8, where NVIDIA Mellanox driver implemented
linking of VFs' representors to PCI device in switchdev mode. This mean
that device's sysfs net directory will hold multiple net devices. Ex.:
$ ls '/sys/bus/pci/devices/0000:82:00.0/net'
ens1f0 eth0 eth1
Most switch devices support phys_port_name instead of phys_port_id, so
virPCIGetNetName() will try to get PF name by it's index - 0. The
problem here is that the PF nedev entry may not be the first.
To fix that, for switch devices, we introduce a new logic to select the
PF uplink netdev according to the content of phys_port_name. Extend
virPCIGetNetName() with physPortNameRegex variable to get proper device
by it's phys_port_name scheme, for ex., "p[0-9]+$" to get PF,
"pf[0-9]+vf[0-9]+$" to get VF or "p1$" to get exact net device. So now
virPCIGetNetName() logic work in following sequence:
- filter by phys_port_id, if it's provided,
or
- filter by phys_port_name, if it's regex provided,
or
- get net device by it's index (position) in sysfs net directory.
Also, make getting content of iface sysfs files more generic.
Signed-off-by: Dmytro Linkin <dlinkin(a)nvidia.com>
Reviewed-by: Adrian Chiris <adrianc(a)nvidia.com>
---
src/hypervisor/virhostdev.c | 2 +-
src/util/virnetdev.c | 74 ++++++++++++++++++++++++++++++++++++---------
src/util/virnetdev.h | 4 +++
src/util/virpci.c | 63 ++++++++++++++++++++++++++++++++++++--
src/util/virpci.h | 6 ++++
5 files changed, 130 insertions(+), 19 deletions(-)
diff --git a/src/hypervisor/virhostdev.c b/src/hypervisor/virhostdev.c
index 69102b8..1f5c347 100644
--- a/src/hypervisor/virhostdev.c
+++ b/src/hypervisor/virhostdev.c
@@ -333,7 +333,7 @@ virHostdevNetDevice(virDomainHostdevDefPtr hostdev,
* type='hostdev'>, and it is only those devices that should
* end up calling this function.
*/
- if (virPCIGetNetName(sysfs_path, 0, NULL, linkdev) < 0)
+ if (virPCIGetNetName(sysfs_path, 0, NULL, NULL, linkdev) < 0)
return -1;
if (!(*linkdev)) {
diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c
index b42fa86..99e3b35 100644
--- a/src/util/virnetdev.c
+++ b/src/util/virnetdev.c
@@ -1112,6 +1112,29 @@ virNetDevGetPCIDevice(const char *devName)
}
+/* A wrapper to get content of file from ifname SYSFS_NET_DIR
+ */
+static int
+virNetDevGetSysfsFileValue(const char *ifname,
+ const char *fileName,
+ char **sysfsFileData)
+{
+ g_autofree char *sysfsFile = NULL;
+
+ *sysfsFileData = NULL;
+
+ if (virNetDevSysfsFile(&sysfsFile, ifname, fileName) < 0)
+ return -1;
+
+ /* a failure to read just means the driver doesn't support
+ * <fileName>, so set success now and ignore the return from
+ * virFileReadAllQuiet().
+ */
+
+ ignore_value(virFileReadAllQuiet(sysfsFile, 1024, sysfsFileData));
+ return 0;
+}
+
/**
* virNetDevGetPhysPortID:
*
@@ -1130,20 +1153,29 @@ int
virNetDevGetPhysPortID(const char *ifname,
char **physPortID)
{
- g_autofree char *physPortIDFile = NULL;
-
- *physPortID = NULL;
-
- if (virNetDevSysfsFile(&physPortIDFile, ifname, "phys_port_id") < 0)
- return -1;
+ return virNetDevGetSysfsFileValue(ifname, "phys_port_id", physPortID);
+}
- /* a failure to read just means the driver doesn't support
- * phys_port_id, so set success now and ignore the return from
- * virFileReadAllQuiet().
- */
- ignore_value(virFileReadAllQuiet(physPortIDFile, 1024, physPortID));
- return 0;
+/**
+ * virNetDevGetPhysPortName:
+ *
+ * @ifname: name of a netdev
+ *
+ * @physPortName: pointer to char* that will receive @ifname's
+ * phys_port_name from sysfs (null terminated
+ * string). Could be NULL if @ifname's net driver doesn't
+ * support phys_port_name (most netdev drivers
+ * don't). Caller is responsible for freeing the string
+ * when finished.
+ *
+ * Returns 0 on success or -1 on failure.
+ */
+int
+virNetDevGetPhysPortName(const char *ifname,
+ char **physPortName)
+{
+ return virNetDevGetSysfsFileValue(ifname, "phys_port_name", physPortName);
}
@@ -1200,7 +1232,7 @@ virNetDevGetVirtualFunctions(const char *pfname,
}
if (virPCIGetNetName(pci_sysfs_device_link, 0,
- pfPhysPortID, &((*vfname)[i])) < 0) {
+ pfPhysPortID, NULL, &((*vfname)[i])) < 0) {
goto cleanup;
}
@@ -1295,7 +1327,8 @@ virNetDevGetPhysicalFunction(const char *ifname, char **pfname)
return -1;
if (virPCIGetNetName(physfn_sysfs_path, 0,
- vfPhysPortID, pfname) < 0) {
+ vfPhysPortID,
+ VIR_PF_PHYS_PORT_NAME_REGEX, pfname) < 0) {
return -1;
}
@@ -1358,7 +1391,7 @@ virNetDevPFGetVF(const char *pfname, int vf, char **vfname)
* isn't bound to a netdev driver, it won't have a netdev name,
* and vfname will be NULL).
*/
- return virPCIGetNetName(virtfnSysfsPath, 0, pfPhysPortID, vfname);
+ return virPCIGetNetName(virtfnSysfsPath, 0, pfPhysPortID, NULL, vfname);
}
@@ -1403,6 +1436,17 @@ virNetDevGetPhysPortID(const char *ifname G_GNUC_UNUSED,
}
int
+virNetDevGetPhysPortName(const char *ifname G_GNUC_UNUSED,
+ char **physPortName)
+{
+ /* this actually should never be called, and is just here to
+ * satisfy the linker.
+ */
+ *physPortName = NULL;
+ return 0;
+}
+
+int
virNetDevGetVirtualFunctions(const char *pfname G_GNUC_UNUSED,
char ***vfname G_GNUC_UNUSED,
virPCIDeviceAddressPtr **virt_fns G_GNUC_UNUSED,
diff --git a/src/util/virnetdev.h b/src/util/virnetdev.h
index 55e3948..712421d 100644
--- a/src/util/virnetdev.h
+++ b/src/util/virnetdev.h
@@ -229,6 +229,10 @@ int virNetDevGetPhysPortID(const char *ifname,
char **physPortID)
ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2)
G_GNUC_WARN_UNUSED_RESULT;
+int virNetDevGetPhysPortName(const char *ifname,
+ char **physPortName)
+ ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2)
+ G_GNUC_WARN_UNUSED_RESULT;
int virNetDevGetVirtualFunctions(const char *pfname,
char ***vfname,
diff --git a/src/util/virpci.c b/src/util/virpci.c
index 47c671d..18b3f66 100644
--- a/src/util/virpci.c
+++ b/src/util/virpci.c
@@ -2409,8 +2409,10 @@ virPCIDeviceAddressGetSysfsFile(virPCIDeviceAddressPtr addr,
* virPCIGetNetName:
* @device_link_sysfs_path: sysfs path to the PCI device
* @idx: used to choose which netdev when there are several
- * (ignored if physPortID is set)
+ * (ignored if physPortID or physPortNameRegex is set)
* @physPortID: match this string in the netdev's phys_port_id
+ * (or NULL to ignore and use phys_port_name or idx instead)
+ * @physPortNameRegex: match this regex with netdev's phys_port_name
* (or NULL to ignore and use idx instead)
* @netname: used to return the name of the netdev
* (set to NULL (but returns success) if there is no netdev)
@@ -2421,11 +2423,13 @@ int
virPCIGetNetName(const char *device_link_sysfs_path,
size_t idx,
char *physPortID,
+ char *physPortNameRegex,
char **netname)
{
g_autofree char *pcidev_sysfs_net_path = NULL;
g_autofree char *firstEntryName = NULL;
g_autofree char *thisPhysPortID = NULL;
+ g_autofree char *thisPhysPortName = NULL;
int ret = -1;
DIR *dir = NULL;
struct dirent *entry = NULL;
@@ -2466,6 +2470,41 @@ virPCIGetNetName(const char *device_link_sysfs_path,
continue;
}
+ } else if (physPortNameRegex) {
+ /* Most switch devices use phys_port_name instead of
+ * phys_port_id.
+ * NOTE: VFs' representors net devices can be linked to PF's PCI
+ * device, which mean that there'll be multiple net devices
+ * instances and to get a proper net device need to match on
+ * specific regex.
+ * To get PF netdev, for ex., used following regex:
+ * "(p[0-9]+$)|(p[0-9]+s[0-9]+$)"
+ * or to get exact VF's netdev next regex is used:
+ * "pf0vf1$"
+ */
+ if (virNetDevGetPhysPortName(entry->d_name, &thisPhysPortName) < 0)
+ goto cleanup;
+
+ if (thisPhysPortName) {
+ /* if this one doesn't match, keep looking */
+ if (!virStringMatch(thisPhysPortName, physPortNameRegex)) {
+ VIR_FREE(thisPhysPortName);
+ /* Save the first entry we find to use as a failsafe
+ * in case we fail to match on regex.
+ */
+ if (!firstEntryName)
+ firstEntryName = g_strdup(entry->d_name);
+
+ continue;
+ }
+ } else {
+ /* Save the first entry we find to use as a failsafe in case
+ * phys_port_name is not supported.
+ */
+ if (!firstEntryName)
+ firstEntryName = g_strdup(entry->d_name);
+ continue;
+ }
} else {
if (i++ < idx)
continue;
@@ -2494,6 +2533,22 @@ virPCIGetNetName(const char *device_link_sysfs_path,
"phys_port_id '%s' under PCI device at %s"),
physPortID, device_link_sysfs_path);
}
+ } else if (physPortNameRegex) {
+ if (firstEntryName) {
+ /* We didn't match the provided phys_port_name regex, probably
+ * because kernel or NIC driver doesn't support it, so just
+ * return first netname we found.
+ */
+ *netname = firstEntryName;
+ firstEntryName = NULL;
+ ret = 0;
+ } else {
+ virReportError(VIR_ERR_INTERNAL_ERROR,
+ _("Could not find network device with "
+ "phys_port_name matching regex '%s' "
+ "under PCI device at %s"),
+ physPortNameRegex, device_link_sysfs_path);
+ }
} else {
ret = 0; /* no netdev at the given index is *not* an error */
}
@@ -2539,7 +2594,7 @@ virPCIGetVirtualFunctionInfo(const char *vf_sysfs_device_path,
* correct.
*/
if (pfNetDevIdx == -1) {
- if (virPCIGetNetName(vf_sysfs_device_path, 0, NULL, &vfname) < 0)
+ if (virPCIGetNetName(vf_sysfs_device_path, 0, NULL, NULL, &vfname) < 0)
goto cleanup;
if (vfname) {
@@ -2550,7 +2605,8 @@ virPCIGetVirtualFunctionInfo(const char *vf_sysfs_device_path,
}
if (virPCIGetNetName(pf_sysfs_device_path,
- pfNetDevIdx, vfPhysPortID, pfname) < 0) {
+ pfNetDevIdx, vfPhysPortID,
+ VIR_PF_PHYS_PORT_NAME_REGEX, pfname) < 0) {
goto cleanup;
}
@@ -2688,6 +2744,7 @@ int
virPCIGetNetName(const char *device_link_sysfs_path G_GNUC_UNUSED,
size_t idx G_GNUC_UNUSED,
char *physPortID G_GNUC_UNUSED,
+ char *physPortNameScheme G_GNUC_UNUSED,
char **netname G_GNUC_UNUSED)
{
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _(unsupported));
diff --git a/src/util/virpci.h b/src/util/virpci.h
index b3322ba..6ea0873 100644
--- a/src/util/virpci.h
+++ b/src/util/virpci.h
@@ -55,6 +55,11 @@ struct _virZPCIDeviceAddress {
#define VIR_PCI_DEVICE_ADDRESS_FMT "%04x:%02x:%02x.%d"
+/* Represents format of PF's phys_port_name in switchdev mode:
+ * 'p%u' or 'p%us%u'. New line checked since value is readed from sysfs file.
+ */
+# define VIR_PF_PHYS_PORT_NAME_REGEX ((char *)"(p[0-9]+$)|(p[0-9]+s[0-9]+$)")
+
struct _virPCIDeviceAddress {
unsigned int domain;
unsigned int bus;
@@ -232,6 +237,7 @@ int virPCIDeviceAddressGetSysfsFile(virPCIDeviceAddressPtr addr,
int virPCIGetNetName(const char *device_link_sysfs_path,
size_t idx,
char *physPortID,
+ char *physPortNameRegex,
char **netname);
int virPCIGetSysfsFile(char *virPCIDeviceName,
--
1.8.3.1
3
7
I've noticed these thanks to question on the list:
https://www.redhat.com/archives/libvir-list/2020-December/msg00699.html
where I suggested to use namespace inheritance.
Michal PrÃvoznÃk (4):
schema: Allow lxc:namepsace children to appear individually
lxc: Allow NULL argument to lxcDomainDefNamespaceFree()
lxc: Rework lxcDomainDefNamespaceParse()
lxd_domain: Require that VIR_LXC_DOMAIN_NAMESPACE_SOURCE_NONE is zero
docs/schemas/domaincommon.rng | 66 +++++++++++++++++++----------------
src/lxc/lxc_domain.c | 44 +++++++++++++----------
src/lxc/lxc_domain.h | 2 +-
3 files changed, 63 insertions(+), 49 deletions(-)
--
2.26.2
2
9
[PATCH 0/2] virnetdevopenvswitch: Fir virNetDevOpenvswitchGetVhostuserIfname()
by Michal Privoznik 17 Dec '20
by Michal Privoznik 17 Dec '20
17 Dec '20
The first patch is a true fix of a mess I made earlier. The second is an
improvement that was found by QE when testing patches with openvswitch
older than I wrote patches with.
Michal PrÃvoznÃk (2):
virNetDevOpenvswitchGetVhostuserIfname: Actually use @path to lookup
interface
virnetdevopenvswitch: Try to unescape ovs-vsctl reply in one specific
case
src/libvirt_private.syms | 1 +
src/util/virnetdevopenvswitch.c | 49 +++++++++++++++++++++++++++++-
src/util/virnetdevopenvswitch.h | 4 +++
tests/virnetdevopenvswitchtest.c | 52 ++++++++++++++++++++++++++++++++
4 files changed, 105 insertions(+), 1 deletion(-)
--
2.26.2
3
5
[PATCH libvirt v1] tests: add capabilities for QEMU 5.1.0 on s390x
by Shalini Chellathurai Saroja 16 Dec '20
by Shalini Chellathurai Saroja 16 Dec '20
16 Dec '20
Signed-off-by: Shalini Chellathurai Saroja <shalini(a)linux.ibm.com>
---
The replies file is removed from this patch and is available in
https://gitlab.com/shalinichellathurai/libvirt/-/commit/1c34c07c434560d7f44…
tests/domaincapsdata/qemu_5.1.0.s390x.xml | 230 +
.../caps_5.1.0.s390x.replies | 24617 ++++++++++++++++
.../qemucapabilitiesdata/caps_5.1.0.s390x.xml | 3278 ++
...default-video-type-s390x.s390x-latest.args | 2 +-
.../disk-error-policy-s390x.s390x-latest.args | 12 +-
.../fs9p-ccw.s390x-latest.args | 4 +-
...othreads-virtio-scsi-ccw.s390x-latest.args | 2 +-
...t-cpu-kvm-ccw-virtio-4.2.s390x-latest.args | 2 +-
.../s390x-ccw-graphics.s390x-latest.args | 4 +-
.../s390x-ccw-headless.s390x-latest.args | 4 +-
.../vhost-vsock-ccw-auto.s390x-latest.args | 4 +-
.../vhost-vsock-ccw.s390x-latest.args | 4 +-
12 files changed, 28144 insertions(+), 19 deletions(-)
create mode 100644 tests/domaincapsdata/qemu_5.1.0.s390x.xml
create mode 100644 tests/qemucapabilitiesdata/caps_5.1.0.s390x.replies
create mode 100644 tests/qemucapabilitiesdata/caps_5.1.0.s390x.xml
diff --git a/tests/domaincapsdata/qemu_5.1.0.s390x.xml b/tests/domaincapsdata/qemu_5.1.0.s390x.xml
new file mode 100644
index 00000000..42780349
--- /dev/null
+++ b/tests/domaincapsdata/qemu_5.1.0.s390x.xml
@@ -0,0 +1,230 @@
+<domainCapabilities>
+ <path>/usr/bin/qemu-system-s390x</path>
+ <domain>kvm</domain>
+ <machine>s390-ccw-virtio-5.1</machine>
+ <arch>s390x</arch>
+ <vcpu max='248'/>
+ <iothreads supported='yes'/>
+ <os supported='yes'>
+ <enum name='firmware'/>
+ <loader supported='yes'>
+ <value>/usr/share/AAVMF/AAVMF_CODE.fd</value>
+ <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value>
+ <value>/usr/share/OVMF/OVMF_CODE.fd</value>
+ <enum name='type'>
+ <value>rom</value>
+ <value>pflash</value>
+ </enum>
+ <enum name='readonly'>
+ <value>yes</value>
+ <value>no</value>
+ </enum>
+ <enum name='secure'>
+ <value>no</value>
+ </enum>
+ </loader>
+ </os>
+ <cpu>
+ <mode name='host-passthrough' supported='yes'>
+ <enum name='hostPassthroughMigratable'>
+ <value>off</value>
+ </enum>
+ </mode>
+ <mode name='host-model' supported='yes'>
+ <model fallback='forbid'>gen15a-base</model>
+ <feature policy='require' name='aen'/>
+ <feature policy='require' name='cmmnt'/>
+ <feature policy='require' name='vxpdeh'/>
+ <feature policy='require' name='aefsi'/>
+ <feature policy='require' name='csske'/>
+ <feature policy='require' name='mepoch'/>
+ <feature policy='require' name='msa9'/>
+ <feature policy='require' name='msa8'/>
+ <feature policy='require' name='msa7'/>
+ <feature policy='require' name='msa6'/>
+ <feature policy='require' name='msa5'/>
+ <feature policy='require' name='msa4'/>
+ <feature policy='require' name='msa3'/>
+ <feature policy='require' name='msa2'/>
+ <feature policy='require' name='msa1'/>
+ <feature policy='require' name='sthyi'/>
+ <feature policy='require' name='edat'/>
+ <feature policy='require' name='ri'/>
+ <feature policy='require' name='deflate'/>
+ <feature policy='require' name='edat2'/>
+ <feature policy='require' name='etoken'/>
+ <feature policy='require' name='vx'/>
+ <feature policy='require' name='ipter'/>
+ <feature policy='require' name='mepochptff'/>
+ <feature policy='require' name='ap'/>
+ <feature policy='require' name='vxeh'/>
+ <feature policy='require' name='vxpd'/>
+ <feature policy='require' name='esop'/>
+ <feature policy='require' name='msa9_pckmo'/>
+ <feature policy='require' name='vxeh2'/>
+ <feature policy='require' name='esort'/>
+ <feature policy='require' name='apqi'/>
+ <feature policy='require' name='apft'/>
+ <feature policy='require' name='iep'/>
+ <feature policy='require' name='apqci'/>
+ <feature policy='require' name='cte'/>
+ <feature policy='require' name='ais'/>
+ <feature policy='require' name='bpb'/>
+ <feature policy='require' name='gs'/>
+ <feature policy='require' name='ppa15'/>
+ <feature policy='require' name='zpci'/>
+ <feature policy='require' name='sea_esop2'/>
+ <feature policy='require' name='te'/>
+ <feature policy='require' name='cmm'/>
+ </mode>
+ <mode name='custom' supported='yes'>
+ <model usable='yes'>z800-base</model>
+ <model usable='yes'>z890.2-base</model>
+ <model usable='yes'>z9EC.2</model>
+ <model usable='yes'>z13.2</model>
+ <model usable='yes'>z9BC-base</model>
+ <model usable='yes'>z990.5-base</model>
+ <model usable='yes'>z890.2</model>
+ <model usable='yes'>z890</model>
+ <model usable='yes'>z9BC</model>
+ <model usable='yes'>z13</model>
+ <model usable='yes'>z196</model>
+ <model usable='yes'>z13s</model>
+ <model usable='yes'>z990.3</model>
+ <model usable='yes'>z13s-base</model>
+ <model usable='yes'>z9EC</model>
+ <model usable='yes'>gen15a</model>
+ <model usable='yes'>z14ZR1-base</model>
+ <model usable='yes'>z14.2-base</model>
+ <model usable='yes'>z900.3-base</model>
+ <model usable='yes'>z13.2-base</model>
+ <model usable='yes'>z196.2-base</model>
+ <model usable='yes'>zBC12-base</model>
+ <model usable='yes'>z9BC.2-base</model>
+ <model usable='yes'>z900.2-base</model>
+ <model usable='yes'>z9EC.3</model>
+ <model usable='yes'>zEC12</model>
+ <model usable='yes'>z900</model>
+ <model usable='yes'>z114-base</model>
+ <model usable='yes'>zEC12-base</model>
+ <model usable='yes'>z10EC.2</model>
+ <model usable='yes'>z10EC-base</model>
+ <model usable='yes'>z900.3</model>
+ <model usable='yes'>z14ZR1</model>
+ <model usable='yes'>z10BC</model>
+ <model usable='yes'>z10BC.2-base</model>
+ <model usable='yes'>z9BC.2</model>
+ <model usable='yes'>z990.2</model>
+ <model usable='yes'>z990</model>
+ <model usable='yes'>z14</model>
+ <model usable='yes'>gen15b-base</model>
+ <model usable='yes'>z990.4</model>
+ <model usable='yes'>max</model>
+ <model usable='yes'>z10EC.2-base</model>
+ <model usable='yes'>gen15a-base</model>
+ <model usable='yes'>z800</model>
+ <model usable='yes'>z10EC</model>
+ <model usable='yes'>zEC12.2</model>
+ <model usable='yes'>z990.2-base</model>
+ <model usable='yes'>z900-base</model>
+ <model usable='yes'>z10BC.2</model>
+ <model usable='yes'>z9EC-base</model>
+ <model usable='yes'>z9EC.3-base</model>
+ <model usable='yes'>z114</model>
+ <model usable='yes'>z890.3</model>
+ <model usable='yes'>z196-base</model>
+ <model usable='yes'>z9EC.2-base</model>
+ <model usable='yes'>z196.2</model>
+ <model usable='yes'>z14.2</model>
+ <model usable='yes'>z990-base</model>
+ <model usable='yes'>z900.2</model>
+ <model usable='yes'>z890-base</model>
+ <model usable='yes'>z10EC.3</model>
+ <model usable='yes'>z14-base</model>
+ <model usable='yes'>z990.4-base</model>
+ <model usable='yes'>z10EC.3-base</model>
+ <model usable='yes'>z10BC-base</model>
+ <model usable='yes'>z13-base</model>
+ <model usable='yes'>z990.3-base</model>
+ <model usable='yes'>zEC12.2-base</model>
+ <model usable='yes'>zBC12</model>
+ <model usable='yes'>z890.3-base</model>
+ <model usable='yes'>z990.5</model>
+ <model usable='yes'>gen15b</model>
+ <model usable='yes'>qemu</model>
+ </mode>
+ </cpu>
+ <devices>
+ <disk supported='yes'>
+ <enum name='diskDevice'>
+ <value>disk</value>
+ <value>cdrom</value>
+ <value>floppy</value>
+ <value>lun</value>
+ </enum>
+ <enum name='bus'>
+ <value>fdc</value>
+ <value>scsi</value>
+ <value>virtio</value>
+ </enum>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ </disk>
+ <graphics supported='yes'>
+ <enum name='type'>
+ <value>sdl</value>
+ <value>vnc</value>
+ <value>egl-headless</value>
+ </enum>
+ </graphics>
+ <video supported='yes'>
+ <enum name='modelType'>
+ <value>virtio</value>
+ <value>none</value>
+ </enum>
+ </video>
+ <hostdev supported='yes'>
+ <enum name='mode'>
+ <value>subsystem</value>
+ </enum>
+ <enum name='startupPolicy'>
+ <value>default</value>
+ <value>mandatory</value>
+ <value>requisite</value>
+ <value>optional</value>
+ </enum>
+ <enum name='subsysType'>
+ <value>pci</value>
+ <value>scsi</value>
+ </enum>
+ <enum name='capsType'/>
+ <enum name='pciBackend'>
+ <value>default</value>
+ <value>vfio</value>
+ </enum>
+ </hostdev>
+ <rng supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>random</value>
+ <value>egd</value>
+ <value>builtin</value>
+ </enum>
+ </rng>
+ </devices>
+ <features>
+ <gic supported='no'/>
+ <vmcoreinfo supported='no'/>
+ <genid supported='no'/>
+ <backingStoreInput supported='yes'/>
+ <backup supported='no'/>
+ <sev supported='no'/>
+ </features>
+</domainCapabilities>
diff --git a/tests/qemucapabilitiesdata/caps_5.1.0.s390x.replies b/tests/qemucapabilitiesdata/caps_5.1.0.s390x.replies
new file mode 100644
index 00000000..ec3fd1f6
--- /dev/null
+++ b/tests/qemucapabilitiesdata/caps_5.1.0.s390x.replies
@@ -0,0 +1,24617 @@
[...]
diff --git a/tests/qemucapabilitiesdata/caps_5.1.0.s390x.xml b/tests/qemucapabilitiesdata/caps_5.1.0.s390x.xml
new file mode 100644
index 00000000..af2647aa
--- /dev/null
+++ b/tests/qemucapabilitiesdata/caps_5.1.0.s390x.xml
@@ -0,0 +1,3278 @@
+<qemuCaps>
+ <emulator>/usr/bin/qemu-system-s390x</emulator>
+ <qemuctime>0</qemuctime>
+ <selfctime>0</selfctime>
+ <selfvers>0</selfvers>
+ <flag name='kvm'/>
+ <flag name='virtio-tx-alg'/>
+ <flag name='virtio-blk-pci.ioeventfd'/>
+ <flag name='virtio-blk-pci.event_idx'/>
+ <flag name='virtio-net-pci.event_idx'/>
+ <flag name='virtio-blk-pci.scsi'/>
+ <flag name='scsi-disk.channel'/>
+ <flag name='scsi-block'/>
+ <flag name='dump-guest-memory'/>
+ <flag name='virtio-scsi-pci'/>
+ <flag name='blockio'/>
+ <flag name='scsi-disk.wwn'/>
+ <flag name='seccomp-sandbox'/>
+ <flag name='reboot-timeout'/>
+ <flag name='vnc'/>
+ <flag name='device-video-primary'/>
+ <flag name='s390-sclp'/>
+ <flag name='nbd-server'/>
+ <flag name='virtio-rng'/>
+ <flag name='rng-random'/>
+ <flag name='rng-egd'/>
+ <flag name='virtio-ccw'/>
+ <flag name='pci-bridge'/>
+ <flag name='vfio-pci'/>
+ <flag name='mem-merge'/>
+ <flag name='drive-discard'/>
+ <flag name='boot-strict'/>
+ <flag name='enable-fips'/>
+ <flag name='msg-timestamp'/>
+ <flag name='active-commit'/>
+ <flag name='change-backing-file'/>
+ <flag name='memory-backend-ram'/>
+ <flag name='numa'/>
+ <flag name='memory-backend-file'/>
+ <flag name='splash-timeout'/>
+ <flag name='iothread'/>
+ <flag name='migrate-rdma'/>
+ <flag name='drive-iotune-max'/>
+ <flag name='machine-vmport-opt'/>
+ <flag name='aes-key-wrap'/>
+ <flag name='dea-key-wrap'/>
+ <flag name='vhost-user-multiqueue'/>
+ <flag name='migration-event'/>
+ <flag name='virtio-net'/>
+ <flag name='gic-version'/>
+ <flag name='incoming-defer'/>
+ <flag name='virtio-gpu'/>
+ <flag name='virtio-gpu.virgl'/>
+ <flag name='virtio-keyboard'/>
+ <flag name='virtio-mouse'/>
+ <flag name='virtio-tablet'/>
+ <flag name='virtio-input-host'/>
+ <flag name='chardev-file-append'/>
+ <flag name='vserport-change-event'/>
+ <flag name='virtio-balloon-pci.deflate-on-oom'/>
+ <flag name='chardev-logfile'/>
+ <flag name='debug-threads'/>
+ <flag name='secret'/>
+ <flag name='virtio-scsi-pci.iothread'/>
+ <flag name='name-guest'/>
+ <flag name='drive-detect-zeroes'/>
+ <flag name='tls-creds-x509'/>
+ <flag name='smm'/>
+ <flag name='virtio-pci-disable-legacy'/>
+ <flag name='query-hotpluggable-cpus'/>
+ <flag name='virtio-net.rx_queue_size'/>
+ <flag name='drive-iotune-max-length'/>
+ <flag name='query-qmp-schema'/>
+ <flag name='gluster.debug_level'/>
+ <flag name='vhost-scsi'/>
+ <flag name='drive-iotune-group'/>
+ <flag name='query-cpu-model-expansion'/>
+ <flag name='virtio-net.host_mtu'/>
+ <flag name='query-cpu-definitions'/>
+ <flag name='block-write-threshold'/>
+ <flag name='query-named-block-nodes'/>
+ <flag name='kernel-irqchip'/>
+ <flag name='kernel-irqchip.split'/>
+ <flag name='virtio.iommu_platform'/>
+ <flag name='virtio.ats'/>
+ <flag name='loadparm'/>
+ <flag name='vnc-multi-servers'/>
+ <flag name='virtio-net.tx_queue_size'/>
+ <flag name='chardev-reconnect'/>
+ <flag name='virtio-gpu.max_outputs'/>
+ <flag name='virtio-blk.num-queues'/>
+ <flag name='sclplmconsole'/>
+ <flag name='numa.dist'/>
+ <flag name='disk-share-rw'/>
+ <flag name='iscsi.password-secret'/>
+ <flag name='dump-completed'/>
+ <flag name='virtio-gpu-ccw'/>
+ <flag name='virtio-keyboard-ccw'/>
+ <flag name='virtio-mouse-ccw'/>
+ <flag name='virtio-tablet-ccw'/>
+ <flag name='qcow2-luks'/>
+ <flag name='seccomp-blacklist'/>
+ <flag name='query-cpus-fast'/>
+ <flag name='disk-write-cache'/>
+ <flag name='nbd-tls'/>
+ <flag name='pr-manager-helper'/>
+ <flag name='qom-list-properties'/>
+ <flag name='memory-backend-file.discard-data'/>
+ <flag name='virtual-css-bridge'/>
+ <flag name='virtual-css-bridge.cssid-unrestricted'/>
+ <flag name='vfio-ccw'/>
+ <flag name='sdl-gl'/>
+ <flag name='screendump_device'/>
+ <flag name='blockdev-del'/>
+ <flag name='vhost-vsock'/>
+ <flag name='chardev-fd-pass'/>
+ <flag name='egl-headless'/>
+ <flag name='vfio-pci.display'/>
+ <flag name='blockdev'/>
+ <flag name='vfio-ap'/>
+ <flag name='zpci'/>
+ <flag name='memory-backend-memfd'/>
+ <flag name='memory-backend-memfd.hugetlb'/>
+ <flag name='iothread.poll-max-ns'/>
+ <flag name='egl-headless.rendernode'/>
+ <flag name='memory-backend-file.align'/>
+ <flag name='memory-backend-file.pmem'/>
+ <flag name='scsi-disk.device_id'/>
+ <flag name='virtio-pci-non-transitional'/>
+ <flag name='overcommit'/>
+ <flag name='query-current-machine'/>
+ <flag name='bitmap-merge'/>
+ <flag name='nbd-bitmap'/>
+ <flag name='migration-file-drop-cache'/>
+ <flag name='dbus-vmstate'/>
+ <flag name='vhost-user-gpu'/>
+ <flag name='query-cpu-model-baseline'/>
+ <flag name='query-cpu-model-comparison'/>
+ <flag name='blockdev-file-dynamic-auto-read-only'/>
+ <flag name='savevm-monitor-nodes'/>
+ <flag name='drive-nvme'/>
+ <flag name='smp-dies'/>
+ <flag name='rng-builtin'/>
+ <flag name='virtio-net.failover'/>
+ <flag name='vhost-user-fs'/>
+ <flag name='query-named-block-nodes.flat'/>
+ <flag name='blockdev-snapshot.allow-write-only-overlay'/>
+ <flag name='storage.werror'/>
+ <flag name='fsdev.multidevs'/>
+ <flag name='virtio.packed'/>
+ <flag name='aio.io_uring'/>
+ <flag name='tcg'/>
+ <flag name='virtio-blk-pci.scsi.default.disabled'/>
+ <flag name='fw_cfg'/>
+ <flag name='migration-param.bandwidth'/>
+ <flag name='migration-param.downtime'/>
+ <flag name='migration-param.xbzrle-cache-size'/>
+ <flag name='numa.hmat'/>
+ <flag name='blockdev-hostdev-scsi'/>
+ <flag name='virtio-balloon.free-page-reporting'/>
+ <flag name='netdev.vhost-vdpa'/>
+ <flag name='fsdev.createmode'/>
+ <version>5001000</version>
+ <kvmVersion>0</kvmVersion>
+ <microcodeVersion>39100242</microcodeVersion>
+ <package>qemu-5.1.0-20201029.0.64aaebe0ca.fc32</package>
+ <arch>s390x</arch>
+ <hostCPU type='kvm' model='gen15a-base' migratability='no'>
+ <property name='aen' type='boolean' value='true'/>
+ <property name='cmmnt' type='boolean' value='true'/>
+ <property name='vxpdeh' type='boolean' value='true'/>
+ <property name='aefsi' type='boolean' value='true'/>
+ <property name='csske' type='boolean' value='true'/>
+ <property name='mepoch' type='boolean' value='true'/>
+ <property name='msa9' type='boolean' value='true'/>
+ <property name='msa8' type='boolean' value='true'/>
+ <property name='msa7' type='boolean' value='true'/>
+ <property name='msa6' type='boolean' value='true'/>
+ <property name='msa5' type='boolean' value='true'/>
+ <property name='msa4' type='boolean' value='true'/>
+ <property name='msa3' type='boolean' value='true'/>
+ <property name='msa2' type='boolean' value='true'/>
+ <property name='msa1' type='boolean' value='true'/>
+ <property name='sthyi' type='boolean' value='true'/>
+ <property name='edat' type='boolean' value='true'/>
+ <property name='ri' type='boolean' value='true'/>
+ <property name='deflate' type='boolean' value='true'/>
+ <property name='edat2' type='boolean' value='true'/>
+ <property name='etoken' type='boolean' value='true'/>
+ <property name='vx' type='boolean' value='true'/>
+ <property name='ipter' type='boolean' value='true'/>
+ <property name='mepochptff' type='boolean' value='true'/>
+ <property name='ap' type='boolean' value='true'/>
+ <property name='vxeh' type='boolean' value='true'/>
+ <property name='vxpd' type='boolean' value='true'/>
+ <property name='esop' type='boolean' value='true'/>
+ <property name='msa9_pckmo' type='boolean' value='true'/>
+ <property name='vxeh2' type='boolean' value='true'/>
+ <property name='esort' type='boolean' value='true'/>
+ <property name='apqi' type='boolean' value='true'/>
+ <property name='apft' type='boolean' value='true'/>
+ <property name='iep' type='boolean' value='true'/>
+ <property name='apqci' type='boolean' value='true'/>
+ <property name='cte' type='boolean' value='true'/>
+ <property name='ais' type='boolean' value='true'/>
+ <property name='bpb' type='boolean' value='true'/>
+ <property name='gs' type='boolean' value='true'/>
+ <property name='ppa15' type='boolean' value='true'/>
+ <property name='zpci' type='boolean' value='true'/>
+ <property name='sea_esop2' type='boolean' value='true'/>
+ <property name='te' type='boolean' value='true'/>
+ <property name='cmm' type='boolean' value='true'/>
+ </hostCPU>
+ <cpu type='kvm' name='z800-base' typename='z800-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z890.2-base' typename='z890.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9EC.2' typename='z9EC.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z13.2' typename='z13.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9BC-base' typename='z9BC-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.5-base' typename='z990.5-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z890.2' typename='z890.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z890' typename='z890-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9BC' typename='z9BC-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z13' typename='z13-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z196' typename='z196-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z13s' typename='z13s-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='host' typename='host-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.3' typename='z990.3-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z13s-base' typename='z13s-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9EC' typename='z9EC-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='gen15a' typename='gen15a-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z14ZR1-base' typename='z14ZR1-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z14.2-base' typename='z14.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z900.3-base' typename='z900.3-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z13.2-base' typename='z13.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z196.2-base' typename='z196.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='zBC12-base' typename='zBC12-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9BC.2-base' typename='z9BC.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z900.2-base' typename='z900.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9EC.3' typename='z9EC.3-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='zEC12' typename='zEC12-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z900' typename='z900-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z114-base' typename='z114-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='zEC12-base' typename='zEC12-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10EC.2' typename='z10EC.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10EC-base' typename='z10EC-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z900.3' typename='z900.3-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z14ZR1' typename='z14ZR1-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10BC' typename='z10BC-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10BC.2-base' typename='z10BC.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9BC.2' typename='z9BC.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.2' typename='z990.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990' typename='z990-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z14' typename='z14-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='gen15b-base' typename='gen15b-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.4' typename='z990.4-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='max' typename='max-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10EC.2-base' typename='z10EC.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='gen15a-base' typename='gen15a-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z800' typename='z800-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10EC' typename='z10EC-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='zEC12.2' typename='zEC12.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.2-base' typename='z990.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z900-base' typename='z900-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10BC.2' typename='z10BC.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9EC-base' typename='z9EC-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9EC.3-base' typename='z9EC.3-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z114' typename='z114-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z890.3' typename='z890.3-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z196-base' typename='z196-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z9EC.2-base' typename='z9EC.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z196.2' typename='z196.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z14.2' typename='z14.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990-base' typename='z990-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z900.2' typename='z900.2-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z890-base' typename='z890-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10EC.3' typename='z10EC.3-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z14-base' typename='z14-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.4-base' typename='z990.4-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10EC.3-base' typename='z10EC.3-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z10BC-base' typename='z10BC-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z13-base' typename='z13-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.3-base' typename='z990.3-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='zEC12.2-base' typename='zEC12.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='zBC12' typename='zBC12-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z890.3-base' typename='z890.3-base-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='z990.5' typename='z990.5-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='gen15b' typename='gen15b-s390x-cpu' usable='yes'/>
+ <cpu type='kvm' name='qemu' typename='qemu-s390x-cpu' usable='yes'/>
+ <machine type='kvm' name='s390-ccw-virtio-5.1' alias='s390-ccw-virtio' hotplugCpus='yes' maxCpus='248' default='yes' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-4.0' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-3.1' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.6' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.12' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.9' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-3.0' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-4.2' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.5' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.11' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.8' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-5.0' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-4.1' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.4' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.10' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <machine type='kvm' name='s390-ccw-virtio-2.7' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu'/>
+ <hostCPU type='tcg' model='z13.2-base' migratability='no'>
+ <property name='dateh2' type='boolean' value='false'/>
+ <property name='aen' type='boolean' value='true'/>
+ <property name='gen13ptff' type='boolean' value='false'/>
+ <property name='kmac-tdea-192' type='boolean' value='false'/>
+ <property name='kmc-tdea-192' type='boolean' value='false'/>
+ <property name='parseh' type='boolean' value='false'/>
+ <property name='aefsi' type='boolean' value='true'/>
+ <property name='csske' type='boolean' value='false'/>
+ <property name='hfpm' type='boolean' value='false'/>
+ <property name='hfpue' type='boolean' value='false'/>
+ <property name='dfp' type='boolean' value='false'/>
+ <property name='km-dea' type='boolean' value='false'/>
+ <property name='vx' type='boolean' value='true'/>
+ <property name='emon' type='boolean' value='false'/>
+ <property name='kimd-sha-1' type='boolean' value='false'/>
+ <property name='cmpsceh' type='boolean' value='false'/>
+ <property name='dfppc' type='boolean' value='false'/>
+ <property name='dfpzc' type='boolean' value='false'/>
+ <property name='dfphp' type='boolean' value='false'/>
+ <property name='kmc-dea' type='boolean' value='false'/>
+ <property name='klmd-sha-1' type='boolean' value='false'/>
+ <property name='asnlxr' type='boolean' value='false'/>
+ <property name='esop' type='boolean' value='true'/>
+ <property name='km-tdea-192' type='boolean' value='false'/>
+ <property name='km-tdea-128' type='boolean' value='false'/>
+ <property name='kmac-dea' type='boolean' value='false'/>
+ <property name='iep' type='boolean' value='true'/>
+ <property name='kmc-tdea-128' type='boolean' value='false'/>
+ <property name='ais' type='boolean' value='true'/>
+ <property name='kmac-tdea-128' type='boolean' value='false'/>
+ <property name='zpci' type='boolean' value='true'/>
+ <property name='nonqks' type='boolean' value='false'/>
+ <property name='sea_esop2' type='boolean' value='true'/>
+ <property name='pfpo' type='boolean' value='false'/>
+ <property name='msa4-base' type='boolean' value='true'/>
+ <property name='msa3-base' type='boolean' value='true'/>
+ <property name='msa5-base' type='boolean' value='true'/>
+ <property name='tods' type='boolean' value='false'/>
+ </hostCPU>
+ <cpu type='tcg' name='z800-base' typename='z800-base-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z890.2-base' typename='z890.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z9EC.2' typename='z9EC.2-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z13.2' typename='z13.2-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9BC-base' typename='z9BC-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z990.5-base' typename='z990.5-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z890.2' typename='z890.2-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z890' typename='z890-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z9BC' typename='z9BC-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z13' typename='z13-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z196' typename='z196-s390x-cpu' usable='no'>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='sthyi'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z13s' typename='z13s-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='host' typename='host-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z990.3' typename='z990.3-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z13s-base' typename='z13s-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9EC' typename='z9EC-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='gen15a' typename='gen15a-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='etoken'/>
+ <blocker name='vxpdeh'/>
+ <blocker name='vxeh2'/>
+ <blocker name='mepoch'/>
+ <blocker name='vxeh'/>
+ <blocker name='vxpd'/>
+ <blocker name='gs'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='minste3'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='deflate'/>
+ <blocker name='mepochptff'/>
+ <blocker name='msa9_pckmo'/>
+ <blocker name='msa9'/>
+ <blocker name='msa8'/>
+ <blocker name='msa7'/>
+ <blocker name='msa6'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z14ZR1-base' typename='z14ZR1-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z14.2-base' typename='z14.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z900.3-base' typename='z900.3-base-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z13.2-base' typename='z13.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z196.2-base' typename='z196.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='zBC12-base' typename='zBC12-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9BC.2-base' typename='z9BC.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z900.2-base' typename='z900.2-base-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z9EC.3' typename='z9EC.3-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='zEC12' typename='zEC12-s390x-cpu' usable='no'>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z900' typename='z900-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z114-base' typename='z114-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='zEC12-base' typename='zEC12-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z10EC.2' typename='z10EC.2-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z10EC-base' typename='z10EC-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z900.3' typename='z900.3-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z14ZR1' typename='z14ZR1-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='mepoch'/>
+ <blocker name='vxeh'/>
+ <blocker name='vxpd'/>
+ <blocker name='gs'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='mepochptff'/>
+ <blocker name='msa8'/>
+ <blocker name='msa7'/>
+ <blocker name='msa6'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z10BC' typename='z10BC-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z10BC.2-base' typename='z10BC.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9BC.2' typename='z9BC.2-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z990.2' typename='z990.2-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z990' typename='z990-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z14' typename='z14-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='mepoch'/>
+ <blocker name='vxeh'/>
+ <blocker name='vxpd'/>
+ <blocker name='gs'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='mepochptff'/>
+ <blocker name='msa8'/>
+ <blocker name='msa7'/>
+ <blocker name='msa6'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='gen15b-base' typename='gen15b-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='minste3'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z990.4' typename='z990.4-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='max' typename='max-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z10EC.2-base' typename='z10EC.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='gen15a-base' typename='gen15a-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='minste3'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z800' typename='z800-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z10EC' typename='z10EC-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='zEC12.2' typename='zEC12.2-s390x-cpu' usable='no'>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z990.2-base' typename='z990.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z900-base' typename='z900-base-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z10BC.2' typename='z10BC.2-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9EC-base' typename='z9EC-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9EC.3-base' typename='z9EC.3-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z114' typename='z114-s390x-cpu' usable='no'>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='sthyi'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z890.3' typename='z890.3-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z196-base' typename='z196-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z9EC.2-base' typename='z9EC.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z196.2' typename='z196.2-s390x-cpu' usable='no'>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='sthyi'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z14.2' typename='z14.2-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='mepoch'/>
+ <blocker name='vxeh'/>
+ <blocker name='vxpd'/>
+ <blocker name='gs'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='mepochptff'/>
+ <blocker name='msa8'/>
+ <blocker name='msa7'/>
+ <blocker name='msa6'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z990-base' typename='z990-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z900.2' typename='z900.2-s390x-cpu' usable='yes'/>
+ <cpu type='tcg' name='z890-base' typename='z890-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z10EC.3' typename='z10EC.3-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='sthyi'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z14-base' typename='z14-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='z990.4-base' typename='z990.4-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z10EC.3-base' typename='z10EC.3-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z10BC-base' typename='z10BC-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z13-base' typename='z13-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfppc'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z990.3-base' typename='z990.3-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='zEC12.2-base' typename='zEC12.2-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='dateh2'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='csske'/>
+ <blocker name='asnlxr'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='zBC12' typename='zBC12-s390x-cpu' usable='no'>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='bpb'/>
+ <blocker name='ppa15'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='csske'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='tods'/>
+ </cpu>
+ <cpu type='tcg' name='z890.3-base' typename='z890.3-base-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='z990.5' typename='z990.5-s390x-cpu' usable='no'>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='hfpm'/>
+ </cpu>
+ <cpu type='tcg' name='gen15b' typename='gen15b-s390x-cpu' usable='no'>
+ <blocker name='ppno-sha-512-drng'/>
+ <blocker name='pcc-xts-eaes-256'/>
+ <blocker name='pcc-xts-eaes-128'/>
+ <blocker name='pcc-xts-aes-256'/>
+ <blocker name='pcc-xts-aes-128'/>
+ <blocker name='pcc-cmac-eaes-256'/>
+ <blocker name='pcc-cmac-eaes-192'/>
+ <blocker name='pcc-cmac-eaes-128'/>
+ <blocker name='pcc-cmac-aes-256'/>
+ <blocker name='pcc-cmac-aes-192'/>
+ <blocker name='pcc-cmac-aes-128'/>
+ <blocker name='pcc-cmac-etdea-192'/>
+ <blocker name='pcc-cmac-etdea-128'/>
+ <blocker name='pcc-cmac-edea'/>
+ <blocker name='pcc-cmac-tdea-192'/>
+ <blocker name='pcc-cmac-tdea-128'/>
+ <blocker name='pcc-cmac-dea'/>
+ <blocker name='kmo-eaes-256'/>
+ <blocker name='kmo-eaes-192'/>
+ <blocker name='kmo-eaes-128'/>
+ <blocker name='kmo-aes-256'/>
+ <blocker name='kmo-aes-192'/>
+ <blocker name='kmo-aes-128'/>
+ <blocker name='kmo-etdea-192'/>
+ <blocker name='kmo-etdea-128'/>
+ <blocker name='kmo-edea'/>
+ <blocker name='kmo-tdea-192'/>
+ <blocker name='kmo-tdea-128'/>
+ <blocker name='kmo-dea'/>
+ <blocker name='kmf-eaes-256'/>
+ <blocker name='kmf-eaes-192'/>
+ <blocker name='kmf-eaes-128'/>
+ <blocker name='kmf-aes-256'/>
+ <blocker name='kmf-aes-192'/>
+ <blocker name='kmf-aes-128'/>
+ <blocker name='kmf-etdea-192'/>
+ <blocker name='kmf-etdea-128'/>
+ <blocker name='kmf-edea'/>
+ <blocker name='kmf-tdea-192'/>
+ <blocker name='kmf-tdea-128'/>
+ <blocker name='kmf-dea'/>
+ <blocker name='kmctr-eaes-256'/>
+ <blocker name='kmctr-eaes-192'/>
+ <blocker name='kmctr-eaes-128'/>
+ <blocker name='kmctr-aes-256'/>
+ <blocker name='kmctr-aes-192'/>
+ <blocker name='kmctr-aes-128'/>
+ <blocker name='kmctr-etdea-192'/>
+ <blocker name='kmctr-etdea-128'/>
+ <blocker name='kmctr-edea'/>
+ <blocker name='kmctr-tdea-192'/>
+ <blocker name='kmctr-tdea-128'/>
+ <blocker name='kmctr-dea'/>
+ <blocker name='pckmo-aes-256'/>
+ <blocker name='pckmo-aes-192'/>
+ <blocker name='pckmo-aes-128'/>
+ <blocker name='pckmo-etdea-192'/>
+ <blocker name='pckmo-etdea-128'/>
+ <blocker name='pckmo-edea'/>
+ <blocker name='klmd-sha-1'/>
+ <blocker name='kimd-ghash'/>
+ <blocker name='kimd-sha-1'/>
+ <blocker name='km-xts-eaes-256'/>
+ <blocker name='km-xts-eaes-128'/>
+ <blocker name='km-xts-aes-256'/>
+ <blocker name='km-xts-aes-128'/>
+ <blocker name='km-eaes-256'/>
+ <blocker name='km-eaes-192'/>
+ <blocker name='km-eaes-128'/>
+ <blocker name='km-etdea-192'/>
+ <blocker name='km-etdea-128'/>
+ <blocker name='km-edea'/>
+ <blocker name='km-tdea-192'/>
+ <blocker name='km-tdea-128'/>
+ <blocker name='km-dea'/>
+ <blocker name='kmc-eaes-256'/>
+ <blocker name='kmc-eaes-192'/>
+ <blocker name='kmc-eaes-128'/>
+ <blocker name='kmc-etdea-192'/>
+ <blocker name='kmc-etdea-128'/>
+ <blocker name='kmc-edea'/>
+ <blocker name='kmc-tdea-192'/>
+ <blocker name='kmc-tdea-128'/>
+ <blocker name='kmc-dea'/>
+ <blocker name='kmac-eaes-256'/>
+ <blocker name='kmac-eaes-192'/>
+ <blocker name='kmac-eaes-128'/>
+ <blocker name='kmac-aes-256'/>
+ <blocker name='kmac-aes-192'/>
+ <blocker name='kmac-aes-128'/>
+ <blocker name='kmac-etdea-192'/>
+ <blocker name='kmac-etdea-128'/>
+ <blocker name='kmac-edea'/>
+ <blocker name='kmac-tdea-192'/>
+ <blocker name='kmac-tdea-128'/>
+ <blocker name='kmac-dea'/>
+ <blocker name='cmm'/>
+ <blocker name='dateh2'/>
+ <blocker name='etoken'/>
+ <blocker name='vxpdeh'/>
+ <blocker name='vxeh2'/>
+ <blocker name='mepoch'/>
+ <blocker name='vxeh'/>
+ <blocker name='vxpd'/>
+ <blocker name='gs'/>
+ <blocker name='ppa15'/>
+ <blocker name='dfppc'/>
+ <blocker name='edat2'/>
+ <blocker name='sthyi'/>
+ <blocker name='te'/>
+ <blocker name='ri'/>
+ <blocker name='minste3'/>
+ <blocker name='tsi'/>
+ <blocker name='sema'/>
+ <blocker name='minste2'/>
+ <blocker name='eec'/>
+ <blocker name='cte'/>
+ <blocker name='dfpzc'/>
+ <blocker name='cmpsceh'/>
+ <blocker name='pfpo'/>
+ <blocker name='dfphp'/>
+ <blocker name='dfp'/>
+ <blocker name='opc'/>
+ <blocker name='emon'/>
+ <blocker name='parseh'/>
+ <blocker name='hfpue'/>
+ <blocker name='hfpm'/>
+ <blocker name='nonqks'/>
+ <blocker name='ipter'/>
+ <blocker name='edat'/>
+ <blocker name='asnlxr'/>
+ <blocker name='deflate'/>
+ <blocker name='mepochptff'/>
+ <blocker name='msa9_pckmo'/>
+ <blocker name='msa9'/>
+ <blocker name='msa8'/>
+ <blocker name='msa7'/>
+ <blocker name='msa6'/>
+ <blocker name='msa2'/>
+ <blocker name='msa1'/>
+ <blocker name='gen13ptff'/>
+ <blocker name='tods'/>
+ <blocker name='type'/>
+ </cpu>
+ <cpu type='tcg' name='qemu' typename='qemu-s390x-cpu' usable='yes'/>
+ <machine type='tcg' name='s390-ccw-virtio-5.1' alias='s390-ccw-virtio' hotplugCpus='yes' maxCpus='248' default='yes' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-4.0' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-3.1' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.6' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.12' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.9' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-3.0' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-4.2' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.5' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.11' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.8' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-5.0' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-4.1' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.4' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.10' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+ <machine type='tcg' name='s390-ccw-virtio-2.7' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu'/>
+</qemuCaps>
diff --git a/tests/qemuxml2argvdata/default-video-type-s390x.s390x-latest.args b/tests/qemuxml2argvdata/default-video-type-s390x.s390x-latest.args
index 47818085..fa81a7aa 100644
--- a/tests/qemuxml2argvdata/default-video-type-s390x.s390x-latest.args
+++ b/tests/qemuxml2argvdata/default-video-type-s390x.s390x-latest.args
@@ -17,7 +17,7 @@ file=/tmp/lib/domain--1-default-video-type-s/master-key.aes \
msa8=on,msa7=on,msa6=on,msa5=on,msa4=on,msa3=on,msa2=on,msa1=on,sthyi=on,\
edat=on,ri=on,deflate=on,edat2=on,etoken=on,vx=on,ipter=on,mepochptff=on,ap=on,\
vxeh=on,vxpd=on,esop=on,msa9_pckmo=on,vxeh2=on,esort=on,apqi=on,apft=on,iep=on,\
-apqci=on,cte=on,bpb=on,gs=on,ppa15=on,zpci=on,sea_esop2=on,te=on,cmm=on \
+apqci=on,cte=on,ais=on,bpb=on,gs=on,ppa15=on,zpci=on,sea_esop2=on,te=on,cmm=on \
-m 1024 \
-overcommit mem-lock=off \
-smp 1,sockets=1,cores=1,threads=1 \
diff --git a/tests/qemuxml2argvdata/disk-error-policy-s390x.s390x-latest.args b/tests/qemuxml2argvdata/disk-error-policy-s390x.s390x-latest.args
index 414ffdba..ee0a08e8 100644
--- a/tests/qemuxml2argvdata/disk-error-policy-s390x.s390x-latest.args
+++ b/tests/qemuxml2argvdata/disk-error-policy-s390x.s390x-latest.args
@@ -32,24 +32,24 @@ file=/tmp/lib/domain--1-guest/master-key.aes \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,\
"cache":{"direct":true,"no-flush":false},"driver":"qcow2",\
"file":"libvirt-3-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=libvirt-3-format,\
-id=virtio-disk0,bootindex=1,write-cache=on,werror=stop,rerror=stop \
+-device virtio-blk-ccw,devno=fe.0.0000,drive=libvirt-3-format,id=virtio-disk0,\
+bootindex=1,write-cache=on,werror=stop,rerror=stop \
-blockdev '{"driver":"file","filename":"/var/images/image2",\
"node-name":"libvirt-2-storage","cache":{"direct":true,"no-flush":false},\
"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":false,\
"cache":{"direct":true,"no-flush":false},"driver":"qcow2",\
"file":"libvirt-2-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0001,drive=libvirt-2-format,\
-id=virtio-disk1,write-cache=on,werror=enospc \
+-device virtio-blk-ccw,devno=fe.0.0001,drive=libvirt-2-format,id=virtio-disk1,\
+write-cache=on,werror=enospc \
-blockdev '{"driver":"file","filename":"/var/images/image3",\
"node-name":"libvirt-1-storage","cache":{"direct":true,"no-flush":false},\
"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,\
"cache":{"direct":true,"no-flush":false},"driver":"qcow2",\
"file":"libvirt-1-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0002,drive=libvirt-1-format,\
-id=virtio-disk2,write-cache=on,werror=report,rerror=ignore \
+-device virtio-blk-ccw,devno=fe.0.0002,drive=libvirt-1-format,id=virtio-disk2,\
+write-cache=on,werror=report,rerror=ignore \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
resourcecontrol=deny \
-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/fs9p-ccw.s390x-latest.args b/tests/qemuxml2argvdata/fs9p-ccw.s390x-latest.args
index 50d4bc42..500cc0ad 100644
--- a/tests/qemuxml2argvdata/fs9p-ccw.s390x-latest.args
+++ b/tests/qemuxml2argvdata/fs9p-ccw.s390x-latest.args
@@ -30,8 +30,8 @@ file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw",\
"file":"libvirt-1-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=libvirt-1-format,\
-id=virtio-disk0,bootindex=1 \
+-device virtio-blk-ccw,devno=fe.0.0000,drive=libvirt-1-format,id=virtio-disk0,\
+bootindex=1 \
-fsdev local,security_model=passthrough,id=fsdev-fs0,path=/export/to/guest \
-device virtio-9p-ccw,id=fs0,fsdev=fsdev-fs0,mount_tag=/import/from/host,\
devno=fe.0.0001 \
diff --git a/tests/qemuxml2argvdata/iothreads-virtio-scsi-ccw.s390x-latest.args b/tests/qemuxml2argvdata/iothreads-virtio-scsi-ccw.s390x-latest.args
index 20288f2a..ca343cbe 100644
--- a/tests/qemuxml2argvdata/iothreads-virtio-scsi-ccw.s390x-latest.args
+++ b/tests/qemuxml2argvdata/iothreads-virtio-scsi-ccw.s390x-latest.args
@@ -33,7 +33,7 @@ file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
"node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":false,"driver":"raw",\
"file":"libvirt-2-storage"}' \
--device virtio-blk-ccw,iothread=iothread1,scsi=off,devno=fe.0.0000,\
+-device virtio-blk-ccw,iothread=iothread1,devno=fe.0.0000,\
drive=libvirt-2-format,id=virtio-disk0,bootindex=1 \
-blockdev '{"driver":"host_device","filename":"/dev/HostVG/QEMUGuest2",\
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
diff --git a/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-latest.args b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-latest.args
index 35093d4f..6da68d44 100644
--- a/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-latest.args
+++ b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-latest.args
@@ -17,7 +17,7 @@ file=/tmp/lib/domain--1-test/master-key.aes \
msa8=on,msa7=on,msa6=on,msa5=on,msa4=on,msa3=on,msa2=on,msa1=on,sthyi=on,\
edat=on,ri=on,deflate=on,edat2=on,etoken=on,vx=on,ipter=on,mepochptff=on,ap=on,\
vxeh=on,vxpd=on,esop=on,msa9_pckmo=on,vxeh2=on,esort=on,apqi=on,apft=on,iep=on,\
-apqci=on,cte=on,bpb=on,gs=on,ppa15=on,zpci=on,sea_esop2=on,te=on,cmm=on \
+apqci=on,cte=on,ais=on,bpb=on,gs=on,ppa15=on,zpci=on,sea_esop2=on,te=on,cmm=on \
-m 256 \
-overcommit mem-lock=off \
-smp 1,sockets=1,cores=1,threads=1 \
diff --git a/tests/qemuxml2argvdata/s390x-ccw-graphics.s390x-latest.args b/tests/qemuxml2argvdata/s390x-ccw-graphics.s390x-latest.args
index 5850b265..529beddc 100644
--- a/tests/qemuxml2argvdata/s390x-ccw-graphics.s390x-latest.args
+++ b/tests/qemuxml2argvdata/s390x-ccw-graphics.s390x-latest.args
@@ -30,8 +30,8 @@ file=/tmp/lib/domain--1-guest/master-key.aes \
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2",\
"file":"libvirt-1-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=libvirt-1-format,\
-id=virtio-disk0,bootindex=1 \
+-device virtio-blk-ccw,devno=fe.0.0000,drive=libvirt-1-format,id=virtio-disk0,\
+bootindex=1 \
-netdev user,id=hostnet0 \
-device virtio-net-ccw,netdev=hostnet0,id=net0,mac=52:54:00:09:1a:29,\
devno=fe.0.0001 \
diff --git a/tests/qemuxml2argvdata/s390x-ccw-headless.s390x-latest.args b/tests/qemuxml2argvdata/s390x-ccw-headless.s390x-latest.args
index 211cc24b..71282403 100644
--- a/tests/qemuxml2argvdata/s390x-ccw-headless.s390x-latest.args
+++ b/tests/qemuxml2argvdata/s390x-ccw-headless.s390x-latest.args
@@ -31,8 +31,8 @@ file=/tmp/lib/domain--1-guest/master-key.aes \
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2",\
"file":"libvirt-1-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=libvirt-1-format,\
-id=virtio-disk0,bootindex=1 \
+-device virtio-blk-ccw,devno=fe.0.0000,drive=libvirt-1-format,id=virtio-disk0,\
+bootindex=1 \
-netdev user,id=hostnet0 \
-device virtio-net-ccw,netdev=hostnet0,id=net0,mac=52:54:00:09:a4:37,\
devno=fe.0.0001 \
diff --git a/tests/qemuxml2argvdata/vhost-vsock-ccw-auto.s390x-latest.args b/tests/qemuxml2argvdata/vhost-vsock-ccw-auto.s390x-latest.args
index 4c5542d8..e8956037 100644
--- a/tests/qemuxml2argvdata/vhost-vsock-ccw-auto.s390x-latest.args
+++ b/tests/qemuxml2argvdata/vhost-vsock-ccw-auto.s390x-latest.args
@@ -30,8 +30,8 @@ file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw",\
"file":"libvirt-1-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=libvirt-1-format,\
-id=virtio-disk0,bootindex=1 \
+-device virtio-blk-ccw,devno=fe.0.0000,drive=libvirt-1-format,id=virtio-disk0,\
+bootindex=1 \
-device virtio-balloon-ccw,id=balloon0,devno=fe.0.0001 \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
resourcecontrol=deny \
diff --git a/tests/qemuxml2argvdata/vhost-vsock-ccw.s390x-latest.args b/tests/qemuxml2argvdata/vhost-vsock-ccw.s390x-latest.args
index de229bd0..7199416d 100644
--- a/tests/qemuxml2argvdata/vhost-vsock-ccw.s390x-latest.args
+++ b/tests/qemuxml2argvdata/vhost-vsock-ccw.s390x-latest.args
@@ -30,8 +30,8 @@ file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw",\
"file":"libvirt-1-storage"}' \
--device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=libvirt-1-format,\
-id=virtio-disk0,bootindex=1 \
+-device virtio-blk-ccw,devno=fe.0.0000,drive=libvirt-1-format,id=virtio-disk0,\
+bootindex=1 \
-device virtio-balloon-ccw,id=balloon0,devno=fe.0.0001 \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
resourcecontrol=deny \
--
2.26.2
2
3
16 Dec '20
V2 here: https://www.redhat.com/archives/libvir-list/2020-December/msg00563.html
Since V2:
* Fix libxl driver for missing changing virNetDevMacVLanReserveName
V1 here: https://www.redhat.com/archives/libvir-list/2020-December/msg00308.html
Since V1:
(1) Remove virNetDev[Lock|Unlock]GenName.
Only *lastID* needs to be protected. Now we lock *lastID*
inside virNetDevReserveName and virNetDevGenerateName, then lock and
unlock functions are no longer needed.
(2) Shorten the locking range for generating names for tap and macvlan.
Since virNetDevReserveName and virNetDevGenerateName are now with lock,
we can call them directly rather than adding lock outside.
(3) Rename *_GEN_NAME_TAP to *_GEN_NAME_VNET.
(4) Now veth and tap share the same prefix "vnet".
(5) Use name rather than type as the argument of virNetDevReserveName.
Just follow the style of virNetDev[Tap|MacVlan]ReserveName.
(6) Remove those in-between functions for tap and macvlan.
(7) Remove useless ENUM_[DECL|IMPL] for enum virNetDevGenNameType.
(8) Remove the *_NONE item for enum virNetDevGenNameType.
(9) Remove useless <math.h> in virnetdevtap.
(10) When @ifname of virNetDevGenerateName is NOT a template or NULL,
just leave it unchanged.
(11) Take advantage of the "g_strdup_printf(*ifname, id)" in
virNetDevGenerateName, prevent the functions that call virNetDevTapCreate()
from adding in "vnet%d" when ifname is empty.
(12) Use VIR_NETDEV_MACVLAN_CREATE_WITH_TAP to distinguish macvtap and
macvlan and remove those useless macros.
Shi Lei (5):
netdev: Introduce several helper functions for generating unique netdev name
netdevtap: Use common helper function to create unique tap name
netdevmacvlan: Use helper function to create unique macvlan/macvtap name
netdevveth: Simplify virNetDevVethCreate by using virNetDevGenerateName
netdev: Prevent functions that call virNetDevTapCreate from adding 'vnet%d' into ifname
src/bhyve/bhyve_command.c | 3 +-
src/conf/domain_conf.c | 4 +-
src/interface/interface_backend_udev.c | 2 +-
src/libvirt_private.syms | 4 +-
src/libxl/libxl_driver.c | 2 +-
src/lxc/lxc_process.c | 5 +-
src/qemu/qemu_interface.c | 16 +--
src/qemu/qemu_process.c | 4 +-
src/util/virnetdev.c | 116 ++++++++++++++++
src/util/virnetdev.h | 27 +++-
src/util/virnetdevmacvlan.c | 177 +++----------------------
src/util/virnetdevmacvlan.h | 14 +-
src/util/virnetdevtap.c | 100 +-------------
src/util/virnetdevtap.h | 4 -
src/util/virnetdevveth.c | 140 +++++--------------
15 files changed, 218 insertions(+), 400 deletions(-)
--
2.25.1
3
11
This is a request for comments on our patch for Issue 90. We didn't add
in the test yet because we've had a ton of trouble getting the testing
suite to work with our new test files, so they've omitted for now. We
also did not add any logic to the attach-disk method yet because we
wanted to focus on this set of changes first.
5
21
Hi,
I can't get iptables to work in libvirt-lxc containers. "iptables -L"
command shows empty chains. However I tested the same scenario with pure
lxc and iptables works as it should.
Has anyone experienced that? It seems like a bug, but maybe there is some
libvirt xml parameter I am missing?
BR
2
1
Commit 729a06c41 added code to the LXC driver (patterned after similar
code in the QEMU driver) that called
virNetDevMacVlanReserveName(net->ifname) for all type='direct'
interfaces during a libvirtd restart, to prevent other domains from
attempting to use a macvtap device name that was already in use by a
domain.
But, unlike a QEMU domain, when an LXC domain creates a macvtap
device, that device is almost immediately moved into the namespace of
the container (and it's then renamed, but that part isn't
important). Because of this, the LXC driver doesn't keep track (in
net->ifname) of the name used to create the device (as the QEMU driver
does).
The result of this is that if libvirtd is restarted while there is an
active LXC domain that has <interface type='direct'>, libvirtd will
segfault (since virNetDevMacVLanReserveName() doesn't check for a NULL
pointer).
The fix is to just not call that function in the case of the LXC
driver, since it is pointless anyway.
Signed-off-by: Laine Stump <laine(a)redhat.com>
---
src/lxc/lxc_process.c | 7 -------
1 file changed, 7 deletions(-)
diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
index 0f818e2ee0..79d84617d1 100644
--- a/src/lxc/lxc_process.c
+++ b/src/lxc/lxc_process.c
@@ -1635,13 +1635,6 @@ virLXCProcessReconnectNotifyNets(virDomainDefPtr def)
for (i = 0; i < def->nnets; i++) {
virDomainNetDefPtr net = def->nets[i];
- /* keep others from trying to use the macvtap device name, but
- * don't return error if this happens, since that causes the
- * domain to be unceremoniously killed, which would be *very*
- * impolite.
- */
- if (virDomainNetGetActualType(net) == VIR_DOMAIN_NET_TYPE_DIRECT)
- virNetDevMacVLanReserveName(net->ifname);
if (net->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
if (!conn && !(conn = virGetConnectNetwork()))
--
2.28.0
2
1