On 7/5/23 8:45 AM, Thomas Huth wrote:
On 05/07/2023 08.20, Boris Fiuczynski wrote:
Enable by default asynchronous teardown on S390 hosts and add tests for
asynchronous teardown autogeneration support.
On S390 hosts, Secure Execution guests can take a long time to shutdown,
since the memory cleanup can take a long time. Since there is no
practical way to determine whether a S390 guest is running in Secure
Execution mode, and since the asynchronous teardown does not impact
normal (not Secure Execution) guests or guests without large memory
configurations, we enable asynchronous teardown by default on S390.
A user can select to override the default in the guest domain XML.
Signed-off-by: Boris Fiuczynski <fiuczy@xxxxxxxxxxxxx>
---
src/qemu/qemu_domain.c | 19 +++++++++++
.../qemuhotplug-base-ccw-live+ccw-virtio.xml | 1 +
...with-2-ccw-virtio+ccw-virtio-1-reverse.xml | 1 +
...otplug-base-ccw-live-with-2-ccw-virtio.xml | 1 +
...-with-ccw-virtio+ccw-virtio-2-explicit.xml | 1 +
...-ccw-live-with-ccw-virtio+ccw-virtio-2.xml | 1 +
...uhotplug-base-ccw-live-with-ccw-virtio.xml | 1 +
.../qemuhotplug-base-ccw-live.xml | 1 +
.../balloon-ccw-deflate.s390x-latest.args | 1 +
.../console-sclp.s390x-latest.args | 1 +
.../console-virtio-ccw.s390x-latest.args | 1 +
.../cpu-s390-features.s390x-latest.args | 1 +
.../cpu-s390-zEC12.s390x-latest.args | 1 +
...default-video-type-s390x.s390x-latest.args | 1 +
.../disk-error-policy-s390x.s390x-latest.args | 1 +
.../disk-virtio-ccw-many.s390x-latest.args | 1 +
.../disk-virtio-ccw.s390x-latest.args | 1 +
.../disk-virtio-s390-zpci.s390x-latest.args | 1 +
.../fs9p-ccw.s390x-latest.args | 1 +
...tdev-scsi-vhost-scsi-ccw.s390x-latest.args | 1 +
...tdev-subsys-mdev-vfio-ap.s390x-latest.args | 1 +
...ubsys-mdev-vfio-ccw-boot.s390x-latest.args | 1 +
...dev-subsys-mdev-vfio-ccw.s390x-latest.args | 1 +
...o-zpci-autogenerate-fids.s390x-latest.args | 1 +
...o-zpci-autogenerate-uids.s390x-latest.args | 1 +
...v-vfio-zpci-autogenerate.s390x-latest.args | 1 +
...dev-vfio-zpci-boundaries.s390x-latest.args | 1 +
...vfio-zpci-ccw-memballoon.s390x-latest.args | 1 +
...io-zpci-multidomain-many.s390x-latest.args | 1 +
.../hostdev-vfio-zpci.s390x-latest.args | 1 +
.../input-virtio-ccw.s390x-latest.args | 1 +
...othreads-virtio-scsi-ccw.s390x-latest.args | 1 +
.../launch-security-s390-pv.s390x-latest.args | 1 +
...chine-aeskeywrap-off-cap.s390x-latest.args | 1 +
...hine-aeskeywrap-off-caps.s390x-latest.args | 1 +
...achine-aeskeywrap-on-cap.s390x-latest.args | 1 +
...chine-aeskeywrap-on-caps.s390x-latest.args | 1 +
...chine-deakeywrap-off-cap.s390x-latest.args | 1 +
...hine-deakeywrap-off-caps.s390x-latest.args | 1 +
...achine-deakeywrap-on-cap.s390x-latest.args | 1 +
...chine-deakeywrap-on-caps.s390x-latest.args | 1 +
...achine-keywrap-none-caps.s390x-latest.args | 1 +
.../machine-keywrap-none.s390x-latest.args | 1 +
...machine-loadparm-hostdev.s390x-latest.args | 1 +
...multiple-disks-nets-s390.s390x-latest.args | 1 +
...achine-loadparm-net-s390.s390x-latest.args | 1 +
.../machine-loadparm-s390.s390x-latest.args | 1 +
.../net-virtio-ccw.s390x-latest.args | 1 +
...low-bogus-usb-controller.s390x-latest.args | 1 +
...390-allow-bogus-usb-none.s390x-latest.args | 1 +
...t-cpu-kvm-ccw-virtio-2.7.s390x-latest.args | 1 +
...t-cpu-kvm-ccw-virtio-4.2.s390x-latest.args | 1 +
...t-cpu-tcg-ccw-virtio-2.7.s390x-latest.args | 1 +
...t-cpu-tcg-ccw-virtio-4.2.s390x-latest.args | 1 +
...no-async-teardown-autogen.s390x-6.0.0.args | 32 ++++++++++++++++++
...o-async-teardown-autogen.s390x-latest.args | 33 +++++++++++++++++++
.../s390-no-async-teardown-autogen.xml | 18 ++++++++++
.../s390-panic-missing.s390x-latest.args | 1 +
.../s390-panic-no-address.s390x-latest.args | 1 +
.../s390-serial-2.s390x-latest.args | 1 +
.../s390-serial-console.s390x-latest.args | 1 +
.../s390-serial.s390x-latest.args | 1 +
.../s390x-ccw-graphics.s390x-latest.args | 1 +
.../s390x-ccw-headless.s390x-latest.args | 1 +
.../vhost-vsock-ccw-auto.s390x-latest.args | 1 +
.../vhost-vsock-ccw-iommu.s390x-latest.args | 1 +
.../vhost-vsock-ccw-iommu.xml | 3 ++
.../vhost-vsock-ccw.s390x-latest.args | 1 +
.../video-virtio-gpu-ccw.s390x-latest.args | 1 +
.../virtio-rng-ccw.s390x-latest.args | 1 +
.../watchdog-diag288.s390x-latest.args | 1 +
tests/qemuxml2argvtest.c | 2 ++
.../default-video-type-s390x.s390x-latest.xml | 3 ++
.../disk-virtio-s390-zpci.s390x-latest.xml | 3 ++
...stdev-scsi-vhost-scsi-ccw.s390x-latest.xml | 3 ++
...stdev-subsys-mdev-vfio-ap.s390x-latest.xml | 3 ++
...subsys-mdev-vfio-ccw-boot.s390x-latest.xml | 3 ++
...tdev-subsys-mdev-vfio-ccw.s390x-latest.xml | 3 ++
...io-zpci-autogenerate-fids.s390x-latest.xml | 3 ++
...io-zpci-autogenerate-uids.s390x-latest.xml | 3 ++
...ev-vfio-zpci-autogenerate.s390x-latest.xml | 3 ++
...tdev-vfio-zpci-boundaries.s390x-latest.xml | 3 ++
...-vfio-zpci-ccw-memballoon.s390x-latest.xml | 3 ++
...fio-zpci-multidomain-many.s390x-latest.xml | 3 ++
.../hostdev-vfio-zpci.s390x-latest.xml | 3 ++
.../input-virtio-ccw.s390x-latest.xml | 3 ++
...iothreads-disk-virtio-ccw.s390x-latest.xml | 3 ++
...iothreads-virtio-scsi-ccw.s390x-latest.xml | 3 ++
.../machine-loadparm-hostdev.s390x-latest.xml | 3 ++
...-multiple-disks-nets-s390.s390x-latest.xml | 3 ++
...lt-cpu-kvm-ccw-virtio-2.7.s390x-latest.xml | 3 ++
...lt-cpu-kvm-ccw-virtio-4.2.s390x-latest.xml | 3 ++
...lt-cpu-tcg-ccw-virtio-2.7.s390x-latest.xml | 3 ++
...lt-cpu-tcg-ccw-virtio-4.2.s390x-latest.xml | 3 ++
.../s390-defaultconsole.s390x-latest.xml | 3 ++
...-no-async-teardown-autogen.s390x-6.0.0.xml | 25 ++++++++++++++
...no-async-teardown-autogen.s390x-latest.xml | 28 ++++++++++++++++
.../s390-panic-missing.s390x-latest.xml | 3 ++
.../s390-panic-no-address.s390x-latest.xml | 3 ++
.../s390-panic.s390x-latest.xml | 3 ++
.../s390-serial-2.s390x-latest.xml | 3 ++
.../s390-serial-console.s390x-latest.xml | 3 ++
.../s390-serial.s390x-latest.xml | 3 ++
.../s390x-ccw-graphics.s390x-latest.xml | 3 ++
.../s390x-ccw-headless.s390x-latest.xml | 3 ++
.../vhost-vsock-ccw-auto.s390x-latest.xml | 3 ++
.../vhost-vsock-ccw.s390x-latest.xml | 3 ++
...video-virtio-gpu-ccw-auto.s390x-latest.xml | 3 ++
.../video-virtio-gpu-ccw.s390x-latest.xml | 3 ++
tests/qemuxml2xmltest.c | 2 ++
110 files changed, 333 insertions(+)
create mode 100644
tests/qemuxml2argvdata/s390-no-async-teardown-autogen.s390x-6.0.0.args
create mode 100644
tests/qemuxml2argvdata/s390-no-async-teardown-autogen.s390x-latest.args
create mode 100644
tests/qemuxml2argvdata/s390-no-async-teardown-autogen.xml
create mode 100644
tests/qemuxml2xmloutdata/s390-no-async-teardown-autogen.s390x-6.0.0.xml
create mode 100644
tests/qemuxml2xmloutdata/s390-no-async-teardown-autogen.s390x-latest.xml
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 94587638c3..884f1599b4 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -4402,6 +4402,18 @@ qemuDomainDefEnableDefaultFeatures(virDomainDef
*def,
* capabilities, we still want to enable this */
def->features[VIR_DOMAIN_FEATURE_GIC] = VIR_TRISTATE_SWITCH_ON;
}
+
+ /* Enabled asynchronous teardown by default on S390 hosts as Secure
+ * Execution guests can take a long time to shutdown, since the
memory
+ * cleanup can take a long time. Since there is no üractical way to
s/üractical/practical/
With the typo fixed:
Reviewed-by: Thomas Huth <thuth@xxxxxxxxxx>
Sorry about that and thanks for catching it.
Instead of resending the series I hope that the person pushing it could
do the fixup with the inlined patch below. Let me know otherwise.
From f08a53cd4954ade366bc794f3a006851f8e7e914 Mon Sep 17 00:00:00 2001
From: Boris Fiuczynski <fiuczy@xxxxxxxxxxxxx>
Date: Wed, 5 Jul 2023 09:34:12 +0200
Subject: [PATCH] qemu: fixup comment
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Replacing üractical with practical.
Signed-off-by: Boris Fiuczynski <fiuczy@xxxxxxxxxxxxx>
---
src/qemu/qemu_domain.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 884f1599b4..d3f9421943 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -4405,7 +4405,7 @@ qemuDomainDefEnableDefaultFeatures(virDomainDef *def,
/* Enabled asynchronous teardown by default on S390 hosts as Secure
* Execution guests can take a long time to shutdown, since the memory
- * cleanup can take a long time. Since there is no üractical way to
+ * cleanup can take a long time. Since there is no practical way to
* determine whether a S390 guest is running in Secure Execution mode,
* and since the asynchronous teardown does not impact normal (not
Secure
* Execution) guests or guests without large memory configurations. */
--
2.41.0
--
Mit freundlichen Grüßen/Kind regards
Boris Fiuczynski
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Gregor Pillen
Geschäftsführung: David Faller
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294