Re: [libvirt PATCH v3 5/5] qemu: enable asynchronous teardown on s390x hosts by default

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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





[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux