[PATCH 0/3] Enable asynchronous teardown on s390x hosts

Boris Fiuczynski fiuczy at linux.ibm.com
Fri Jun 23 13:12:37 UTC 2023


On 6/21/23 6:54 PM, Jonathon Jongsma wrote:
> On 6/13/23 10:42 AM, Boris Fiuczynski wrote:
>> Update capabilities for QEMU 8.1 on s390x, add a new capability
>> async-teardown and make use of it when running on s390x hosts to improve
>> memory reclaiming.
> 
> Is this really something that should be enabled unconditionally on all 
> s390x guests, or should it be configured with some domain xml? If 
> there's ever a case where an s390x domain would want this disabled, I 
> think it would have to be configurable. Also, if there is any situation 
> where a domain on a different architecture might want to enable this, 
> that would also require some kind of configurability. At minimum it 
> seems to me that the commit log should have a lot more justification for 
> why this approach is justified.
> 
> Jonathon

Jonathon,
thanks for your feedback.

I am unsure where to located such a configuration option in the gust 
domain XML.

A few thoughts:
1) introduce a new emulator-options element in devices and a run-with 
child element with a parameter async-teardown, e.g.
...
<devices>
   <emulator>/usr/lib/bin/qemu</emulator>
   <emulator-options>
     <run-with async-teardown='on'/>
   </emulator-options>
</devices>
...

2) introduce a new run-with element with a parameter async-teardown in 
domain, e.g.

<domain>
   ...
   <run-with async-teardown='on'/>
   ...
</domain>

Any ideas and suggestions are welcome.

> 
> 
>> Boris Fiuczynski (2):
>>    qemu: add run-with async-teardown capability
>>    qemu: enable asynchronous teardown on s390x hosts
>>
>> Shalini Chellathurai Saroja (1):
>>    tests: add capabilities for QEMU 8.1.0 on s390x
>>
>>   src/qemu/qemu_capabilities.c                  |     2 +
>>   src/qemu/qemu_capabilities.h                  |     1 +
>>   src/qemu/qemu_command.c                       |    15 +
>>   tests/domaincapsdata/qemu_8.1.0.s390x.xml     |   284 +
>>   .../caps_8.1.0_s390x.replies                  | 34594 ++++++++++++++++
>>   .../qemucapabilitiesdata/caps_8.1.0_s390x.xml |  3719 ++
>>   .../caps_8.1.0_x86_64.xml                     |     1 +
>>   .../qemuhotplug-base-ccw-live+ccw-virtio.xml  |     1 -
>>   ...ith-2-ccw-virtio+ccw-virtio-1-explicit.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     |     3 +-
>>   .../console-sclp.s390x-latest.args            |     7 +-
>>   .../console-virtio-ccw.s390x-latest.args      |     9 +-
>>   .../cpu-s390-features.s390x-latest.args       |     1 +
>>   .../cpu-s390-zEC12.s390x-latest.args          |     1 +
>>   ...default-video-type-s390x.s390x-latest.args |     5 +-
>>   .../disk-error-policy-s390x.s390x-latest.args |     7 +-
>>   .../disk-virtio-ccw-many.s390x-latest.args    |    11 +-
>>   .../disk-virtio-ccw.s390x-latest.args         |     7 +-
>>   .../disk-virtio-s390-zpci.s390x-latest.args   |     7 +-
>>   .../fs9p-ccw.s390x-latest.args                |    11 +-
>>   ...tdev-scsi-vhost-scsi-ccw.s390x-latest.args |     9 +-
>>   ...tdev-subsys-mdev-vfio-ap.s390x-latest.args |     5 +-
>>   ...ubsys-mdev-vfio-ccw-boot.s390x-latest.args |     5 +-
>>   ...dev-subsys-mdev-vfio-ccw.s390x-latest.args |     5 +-
>>   ...o-zpci-autogenerate-fids.s390x-latest.args |    11 +-
>>   ...o-zpci-autogenerate-uids.s390x-latest.args |    11 +-
>>   ...v-vfio-zpci-autogenerate.s390x-latest.args |     7 +-
>>   ...dev-vfio-zpci-boundaries.s390x-latest.args |    15 +-
>>   ...vfio-zpci-ccw-memballoon.s390x-latest.args |     9 +-
>>   ...io-zpci-multidomain-many.s390x-latest.args |    35 +-
>>   .../hostdev-vfio-zpci.s390x-latest.args       |     7 +-
>>   .../input-virtio-ccw.s390x-latest.args        |    11 +-
>>   ...othreads-virtio-scsi-ccw.s390x-latest.args |     9 +-
>>   .../launch-security-s390-pv.s390x-latest.args |     7 +-
>>   ...chine-aeskeywrap-off-cap.s390x-latest.args |     3 +-
>>   ...hine-aeskeywrap-off-caps.s390x-latest.args |     3 +-
>>   ...achine-aeskeywrap-on-cap.s390x-latest.args |     3 +-
>>   ...chine-aeskeywrap-on-caps.s390x-latest.args |     3 +-
>>   ...chine-deakeywrap-off-cap.s390x-latest.args |     3 +-
>>   ...hine-deakeywrap-off-caps.s390x-latest.args |     3 +-
>>   ...achine-deakeywrap-on-cap.s390x-latest.args |     3 +-
>>   ...chine-deakeywrap-on-caps.s390x-latest.args |     3 +-
>>   ...achine-keywrap-none-caps.s390x-latest.args |     3 +-
>>   .../machine-keywrap-none.s390x-latest.args    |     3 +-
>>   ...machine-loadparm-hostdev.s390x-latest.args |     5 +-
>>   ...multiple-disks-nets-s390.s390x-latest.args |    15 +-
>>   ...achine-loadparm-net-s390.s390x-latest.args |     7 +-
>>   .../machine-loadparm-s390.s390x-latest.args   |     5 +-
>>   .../net-virtio-ccw.s390x-latest.args          |    11 +-
>>   .../no-async-teardown-s390x.s390x-6.0.0.args  |    32 +
>>   .../no-async-teardown-s390x.xml               |    18 +
>>   ...low-bogus-usb-controller.s390x-latest.args |    11 +-
>>   ...390-allow-bogus-usb-none.s390x-latest.args |    11 +-
>>   ...t-cpu-kvm-ccw-virtio-2.7.s390x-latest.args |     3 +-
>>   ...t-cpu-kvm-ccw-virtio-4.2.s390x-latest.args |     5 +-
>>   ...t-cpu-tcg-ccw-virtio-2.7.s390x-latest.args |     3 +-
>>   ...t-cpu-tcg-ccw-virtio-4.2.s390x-latest.args |     3 +-
>>   .../s390-panic-missing.s390x-latest.args      |     7 +-
>>   .../s390-panic-no-address.s390x-latest.args   |     7 +-
>>   .../s390-serial-2.s390x-latest.args           |     5 +-
>>   .../s390-serial-console.s390x-latest.args     |     3 +-
>>   .../s390-serial.s390x-latest.args             |     3 +-
>>   .../s390x-ccw-graphics.s390x-latest.args      |    23 +-
>>   .../s390x-ccw-headless.s390x-latest.args      |    17 +-
>>   .../vhost-vsock-ccw-auto.s390x-latest.args    |     7 +-
>>   .../vhost-vsock-ccw-iommu.s390x-latest.args   |     7 +-
>>   .../vhost-vsock-ccw.s390x-latest.args         |     7 +-
>>   .../video-virtio-gpu-ccw.s390x-latest.args    |     9 +-
>>   .../virtio-rng-ccw.s390x-latest.args          |    11 +-
>>   .../watchdog-diag288.s390x-latest.args        |     7 +-
>>   tests/qemuxml2argvtest.c                      |     2 +
>>   77 files changed, 38916 insertions(+), 197 deletions(-)
>>   create mode 100644 tests/domaincapsdata/qemu_8.1.0.s390x.xml
>>   create mode 100644 tests/qemucapabilitiesdata/caps_8.1.0_s390x.replies
>>   create mode 100644 tests/qemucapabilitiesdata/caps_8.1.0_s390x.xml
>>   create mode 100644 
>> tests/qemuxml2argvdata/no-async-teardown-s390x.s390x-6.0.0.args
>>   create mode 100644 tests/qemuxml2argvdata/no-async-teardown-s390x.xml
>>
> 


-- 
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


More information about the libvir-list mailing list