Devel
  Threads by month 
                
            - ----- 2025 -----
- 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
March 2025
- 46 participants
- 118 discussions
 
                        
                    
                        
                            
                                
                            
                            [PATCH 0/2] src: make it easier to updat the protocol structs files
                        
                        
by Daniel P. Berrangé 13 Mar '25
                    by Daniel P. Berrangé 13 Mar '25
13 Mar '25
                    
                        This introduces a new target:
   ninja -C build  regen-admin_protocol
and equiv for other protocol files
Daniel P. Berrangé (2):
  src: normalize whitespace in protocol structs files
  src: add new target for regenerating protocol structs files
 scripts/check-remote-protocol.py | 27 ++++++++++++++++++++++++++-
 src/admin_protocol-structs       |  2 +-
 src/meson.build                  | 14 ++++++++++++++
 src/qemu_protocol-structs        |  2 +-
 src/remote_protocol-structs      |  6 +++---
 5 files changed, 45 insertions(+), 6 deletions(-)
-- 
2.48.1
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            4
                            
                          
                          
                            
    
                          
                        
                    
                    
                        *** BLURB HERE ***
Michal Prívozník (6):
  network: Free inhibitor in networkStateCleanup()
  ch: Free retval of curl_slist_append()
  ch: Don't leak virCHDomainObjPrivate struct members
  ch: Free @iothreads array in virCHProcessSetupIOThreads()
  ch: Unref @cfg in virCHProcessStop()
  ch: Rework virCHProcessConnectMonitor()
 src/ch/ch_domain.c          |  3 +++
 src/ch/ch_monitor.c         |  3 +++
 src/ch/ch_process.c         | 22 +++++++++++++---------
 src/network/bridge_driver.c |  2 ++
 4 files changed, 21 insertions(+), 9 deletions(-)
-- 
2.48.1
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            13
                            
                          
                          
                            
    
                          
                        
                    
                    
                        The recent bump of minimum qemu version resulted into some capabilities
always being present. I've noticed one while doing a review and from
there I removed a few others, mostly storage related ones as well.
Peter Krempa (17):
  qemuBuildCompatDeprecatedCommandLine: Assume that
    QEMU_CAPS_COMPAT_DEPRECATED is supported
  qemu: capabilities: Retire QEMU_CAPS_COMPAT_DEPRECATED
  qemuBuildObjectCommandlineFromJSON: Assume all qemus support
    QEMU_CAPS_OBJECT_JSON
  qemu: monitor: Drop support for extra wrapper for 'object_add'
  util: Drop 'virQEMUBuildCommandLineJSONArrayBitmap'
  qemu: capabilities: Retire QEMU_CAPS_OBJECT_JSON
  qemu: monitor: Always assume support for
    QEMU_CAPS_QMP_QUERY_NAMED_BLOCK_NODES_FLAT
  qemu: capabilities: Retire QEMU_CAPS_QMP_QUERY_NAMED_BLOCK_NODES_FLAT
  qemu: Always assume supprot for QEMU_CAPS_BLOCKDEV_REOPEN
  qemu: capabilities: Retire QEMU_CAPS_BLOCKDEV_REOPEN
  qemu: Always assume support for
    QEMU_CAPS_BLOCKDEV_SNAPSHOT_ALLOW_WRITE_ONLY
  qemu: capabilities: Retire
    QEMU_CAPS_BLOCKDEV_SNAPSHOT_ALLOW_WRITE_ONLY
  qemu: Always assume support for QEMU_CAPS_INCREMENTAL_BACKUP
  qemu: capabilites: Retire QEMU_CAPS_INCREMENTAL_BACKUP
  qemu: domain: Remove qemuDomainSupportsCheckpointsBlockjobs
  qemu: migration: Always assume support for
    QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING
  qemu: capabilites: Retire
    QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING
 src/libvirt_private.syms                      |  1 -
 src/qemu/qemu_backup.c                        | 18 ---------
 src/qemu/qemu_block.c                         |  4 --
 src/qemu/qemu_blockjob.c                      | 20 ++--------
 src/qemu/qemu_capabilities.c                  | 33 +++++------------
 src/qemu/qemu_capabilities.h                  | 14 +++----
 src/qemu/qemu_checkpoint.c                    | 18 +--------
 src/qemu/qemu_command.c                       | 31 +++-------------
 src/qemu/qemu_domain.c                        | 23 ------------
 src/qemu/qemu_domain.h                        |  4 --
 src/qemu/qemu_driver.c                        | 37 +++++--------------
 src/qemu/qemu_migration.c                     | 10 +----
 src/qemu/qemu_monitor.c                       | 28 +-------------
 src/qemu/qemu_monitor_json.c                  |  2 +-
 src/qemu/qemu_monitor_priv.h                  |  4 --
 src/qemu/qemu_snapshot.c                      |  4 --
 src/util/virqemu.c                            | 36 ------------------
 src/util/virqemu.h                            |  3 --
 .../caps_10.0.0_s390x.xml                     |  7 ----
 .../caps_10.0.0_x86_64+amdsev.xml             |  7 ----
 .../caps_10.0.0_x86_64.xml                    |  7 ----
 .../qemucapabilitiesdata/caps_6.2.0_ppc64.xml |  7 ----
 .../caps_6.2.0_x86_64.xml                     |  7 ----
 .../qemucapabilitiesdata/caps_7.0.0_ppc64.xml |  7 ----
 .../caps_7.0.0_x86_64.xml                     |  7 ----
 .../qemucapabilitiesdata/caps_7.1.0_ppc64.xml |  7 ----
 .../caps_7.1.0_x86_64.xml                     |  7 ----
 tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml |  7 ----
 .../caps_7.2.0_x86_64+hvf.xml                 |  7 ----
 .../caps_7.2.0_x86_64.xml                     |  7 ----
 .../caps_8.0.0_x86_64.xml                     |  7 ----
 .../qemucapabilitiesdata/caps_8.1.0_s390x.xml |  7 ----
 .../caps_8.1.0_x86_64.xml                     |  7 ----
 .../caps_8.2.0_aarch64.xml                    |  7 ----
 .../caps_8.2.0_armv7l.xml                     |  7 ----
 .../caps_8.2.0_loongarch64.xml                |  7 ----
 .../qemucapabilitiesdata/caps_8.2.0_s390x.xml |  7 ----
 .../caps_8.2.0_x86_64.xml                     |  7 ----
 .../qemucapabilitiesdata/caps_9.0.0_sparc.xml |  7 ----
 .../caps_9.0.0_x86_64.xml                     |  7 ----
 .../caps_9.1.0_riscv64.xml                    |  7 ----
 .../qemucapabilitiesdata/caps_9.1.0_s390x.xml |  7 ----
 .../caps_9.1.0_x86_64.xml                     |  7 ----
 .../caps_9.2.0_aarch64+hvf.xml                |  7 ----
 .../qemucapabilitiesdata/caps_9.2.0_s390x.xml |  7 ----
 .../caps_9.2.0_x86_64+amdsev.xml              |  7 ----
 .../caps_9.2.0_x86_64.xml                     |  7 ----
 tests/qemucommandutiltest.c                   | 30 ---------------
 48 files changed, 40 insertions(+), 483 deletions(-)
-- 
2.48.1
                    
                  
                  
                          
                            
                            3
                            
                          
                          
                            
                            21
                            
                          
                          
                            
    
                          
                        
                    
                    
                        Hi,
The enhancement in this new version based on last feedback are:
* add more documentation on limitation of the feature
* no more double check of the vmsr socket, once is enough
* virQEMUBuildBufferEscapeComma() is used for user input Path
Because there is no garantie at the moment that the helper will be one 
day managed by libvirt, I decided not adding any preparation about this 
to avoid any confusion but add more documentation.
If the helper is managed in libvirt, the patch introducing it will also 
add the necessary API like mention on the previous review (i.e 
mode='unmanaged').
Thanks
Anthony
Anthony Harivel (1):
  qemu: Add support for RAPL MSRs feature
 docs/formatdomain.rst                          | 15 +++++++++++++++
 src/conf/domain_conf.c                         | 18 ++++++++++++++++++
 src/conf/domain_conf.h                         |  2 ++
 src/conf/schemas/domaincommon.rng              | 10 ++++++++++
 src/qemu/qemu_command.c                        |  9 +++++++++
 tests/qemuxmlconfdata/kvm-features-off.xml     |  1 +
 .../kvm-features.x86_64-latest.args            |  2 +-
 tests/qemuxmlconfdata/kvm-features.xml         |  1 +
 8 files changed, 57 insertions(+), 1 deletion(-)
-- 
2.48.1
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            2
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [PATCH] domainbackupxml2xml: Add test case with unix socket server for pull mode backup
                        
                        
by Peter Krempa 12 Mar '25
                    by Peter Krempa 12 Mar '25
12 Mar '25
                    
                        While we show the example in the docs we don't have an example XML for
exrecrcising the parser/formatter and schema.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
 .../backup-pull-unix.xml                      | 22 ++++++++++++++++++
 .../backup-pull-unix.xml                      | 23 +++++++++++++++++++
 tests/genericxml2xmltest.c                    |  1 +
 3 files changed, 46 insertions(+)
 create mode 100644 tests/domainbackupxml2xmlin/backup-pull-unix.xml
 create mode 100644 tests/domainbackupxml2xmlout/backup-pull-unix.xml
diff --git a/tests/domainbackupxml2xmlin/backup-pull-unix.xml b/tests/domainbackupxml2xmlin/backup-pull-unix.xml
new file mode 100644
index 0000000000..cde9ceafc9
--- /dev/null
+++ b/tests/domainbackupxml2xmlin/backup-pull-unix.xml
@@ -0,0 +1,22 @@
+<domainbackup mode='pull'>
+  <incremental>1525889631</incremental>
+  <server transport='unix' socket='/path/to/server'/>
+  <disks>
+    <disk name='vda' type='file'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='hda' backup='no'/>
+    <disk name='vdc' type='file' backupmode='full'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vdd' type='file' backupmode='incremental'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vde' type='file' backupmode='incremental' incremental='blah'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vdf' type='file' incremental='bleh'>
+      <scratch file='/path/to/file'/>
+    </disk>
+  </disks>
+</domainbackup>
diff --git a/tests/domainbackupxml2xmlout/backup-pull-unix.xml b/tests/domainbackupxml2xmlout/backup-pull-unix.xml
new file mode 100644
index 0000000000..811edfdf39
--- /dev/null
+++ b/tests/domainbackupxml2xmlout/backup-pull-unix.xml
@@ -0,0 +1,23 @@
+<domainbackup mode='pull'>
+  <incremental>1525889631</incremental>
+  <server transport='unix' socket='/path/to/server'/>
+  <disks>
+    <disk name='vda' backup='yes' type='file' backupmode='incremental' incremental='1525889631'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='hda' backup='no'/>
+    <disk name='vdc' backup='yes' type='file' backupmode='full'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vdd' backup='yes' type='file' backupmode='incremental' incremental='1525889631'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vde' backup='yes' type='file' backupmode='incremental' incremental='blah'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vdf' backup='yes' type='file' backupmode='incremental' incremental='bleh'>
+      <scratch file='/path/to/file'/>
+    </disk>
+    <disk name='vdextradisk' backup='no'/>
+  </disks>
+</domainbackup>
diff --git a/tests/genericxml2xmltest.c b/tests/genericxml2xmltest.c
index 61613d21f9..b46b9515c3 100644
--- a/tests/genericxml2xmltest.c
+++ b/tests/genericxml2xmltest.c
@@ -244,6 +244,7 @@ mymain(void)
     DO_TEST_BACKUP("empty");
     DO_TEST_BACKUP("backup-pull");
+    DO_TEST_BACKUP("backup-pull-unix");
     DO_TEST_BACKUP("backup-pull-seclabel");
     DO_TEST_BACKUP("backup-pull-encrypted");
     DO_TEST_BACKUP("backup-push");
-- 
2.48.1
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            1
                            
                          
                          
                            
    
                          
                        
                    
                    
                        Supersedes: <20250308-require-v1-1-fe6850bf3f30(a)daynix.com>
("[PATCH] util: Require libnl for Linux")
Based on previous discussions, this implements yet another approach to
fix builds without libnl for Linux.
Signed-off-by: Akihiko Odaki <akihiko.odaki(a)daynix.com>
---
Akihiko Odaki (2):
      Remove libnl checks specific to Linux
      virnetlink: Remove stub functions
 src/libvirt_libnl.syms     |  23 ++++++
 src/libvirt_private.syms   |  19 -----
 src/meson.build            |   6 ++
 src/remote/remote_daemon.c |  10 ++-
 src/util/meson.build       |   5 +-
 src/util/virarptable.c     |   2 +-
 src/util/virnetdev.c       |  44 +---------
 src/util/virnetdevbridge.c |  33 ++------
 src/util/virnetlink.c      | 196 +++------------------------------------------
 src/util/virnetlink.h      |  11 +--
 tests/virnetdevtest.c      |  10 +--
 11 files changed, 65 insertions(+), 294 deletions(-)
---
base-commit: e5299ddf86121d3c792ca271ffcb54900eb19dc3
change-id: 20250312-linux-30e6e1af51a5
Best regards,
-- 
Akihiko Odaki <akihiko.odaki(a)daynix.com>
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            2
                            
                          
                          
                            
    
                          
                        
                     
                        
                    12 Mar '25
                    
                        From: hongleiwang <honglei.wang(a)smartx.com>
QEMU has supported nvme disk emulation for a long time,
see: https://qemu-project.gitlab.io/qemu/system/devices/nvme.html.
The following patches introduce nvme and nvme-ns disk bus type:
A disk with nvme as bus is represented as nvme disk that contains
only one nvme namespace. In XML, it can be used like this:
<devices>
  ...
  <disk type='file' device='disk'>
    <driver name='qemu' type='raw'/>
    <source file='/tmp/data.img'/>
    <target dev='nvmea' bus='nvme'/>
    <serial>nvme-serial-value</serial>
  </disk>
  ...
</devices>
A disk with nvme-ns as bus is represented as an nvme namespace
and needs to be attached to an nvme controller. In XML, it can be
used like this:
<devices>
  ...
  <disk type='file' device='disk'>
    <driver name='qemu' type='raw'/>
    <source file='/tmp/data.img'/>
    <target dev='nvmensa' bus='nvme-ns'/>
    <address type='drive' controller='0' bus='0' target='0' unit='0'/>
  </disk>
  <controller type='nvme' index='0'>
    <serial>nvme-controller-serial-value</serial>
    <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
  </controller>
  ...
</devices>
ray (5):
  qemu: Add support for NVMe disk bus type
  qemu: Add support for NVMe namespace disk bus type
  qemu_capabilities: Add support for NVMe disk capabilities
  docs: Add NVMe and NVMe namespace disk bus types to documentation
  tests: Add test case for NVMe device configuration
 docs/formatdomain.rst                              |  5 ++-
 src/conf/domain_conf.c                             | 42 +++++++++++++++++++
 src/conf/domain_conf.h                             |  8 ++++
 src/conf/domain_postparse.c                        |  4 ++
 src/conf/domain_validate.c                         |  5 ++-
 src/conf/schemas/domaincommon.rng                  | 12 +++++-
 src/conf/virconftypes.h                            |  2 +
 src/hyperv/hyperv_driver.c                         |  4 ++
 src/qemu/qemu_alias.c                              |  2 +
 src/qemu/qemu_capabilities.c                       | 10 +++++
 src/qemu/qemu_capabilities.h                       |  2 +
 src/qemu/qemu_command.c                            | 31 ++++++++++++++
 src/qemu/qemu_domain_address.c                     | 30 +++++++++++--
 src/qemu/qemu_domain_address.h                     |  4 ++
 src/qemu/qemu_hotplug.c                            | 14 +++++++
 src/qemu/qemu_postparse.c                          |  1 +
 src/qemu/qemu_validate.c                           | 40 ++++++++++++++++++
 src/test/test_driver.c                             |  4 ++
 src/util/virutil.c                                 |  2 +-
 src/vbox/vbox_common.c                             |  3 ++
 src/vmx/vmx.c                                      |  2 +
 tests/domaincapsdata/qemu_10.0.0-q35.x86_64.xml    |  2 +
 tests/domaincapsdata/qemu_10.0.0-tcg.x86_64.xml    |  2 +
 tests/domaincapsdata/qemu_10.0.0.s390x.xml         |  2 +
 tests/domaincapsdata/qemu_10.0.0.x86_64.xml        |  2 +
 tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml     |  2 +
 .../domaincapsdata/qemu_5.2.0-tcg-virt.riscv64.xml |  2 +
 tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_5.2.0-virt.aarch64.xml   |  2 +
 tests/domaincapsdata/qemu_5.2.0-virt.riscv64.xml   |  2 +
 tests/domaincapsdata/qemu_5.2.0.aarch64.xml        |  2 +
 tests/domaincapsdata/qemu_5.2.0.ppc64.xml          |  2 +
 tests/domaincapsdata/qemu_5.2.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_6.0.0-virt.aarch64.xml   |  2 +
 tests/domaincapsdata/qemu_6.0.0.aarch64.xml        |  2 +
 tests/domaincapsdata/qemu_6.0.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_6.1.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_6.2.0-virt.aarch64.xml   |  2 +
 tests/domaincapsdata/qemu_6.2.0.aarch64.xml        |  2 +
 tests/domaincapsdata/qemu_6.2.0.ppc64.xml          |  2 +
 tests/domaincapsdata/qemu_6.2.0.x86_64.xml         |  2 +
 .../domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml  |  2 +
 tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml   |  2 +
 tests/domaincapsdata/qemu_7.0.0.aarch64.xml        |  2 +
 tests/domaincapsdata/qemu_7.0.0.ppc64.xml          |  2 +
 tests/domaincapsdata/qemu_7.0.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_7.1.0.ppc64.xml          |  2 +
 tests/domaincapsdata/qemu_7.1.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_7.2.0-hvf.x86_64+hvf.xml |  2 +
 tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml |  2 +
 tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_7.2.0.ppc.xml            |  2 +
 tests/domaincapsdata/qemu_7.2.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml     |  2 +
 .../domaincapsdata/qemu_8.0.0-tcg-virt.riscv64.xml |  2 +
 tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_8.0.0-virt.riscv64.xml   |  2 +
 tests/domaincapsdata/qemu_8.0.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_8.1.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml     |  2 +
 .../qemu_8.2.0-tcg-virt.loongarch64.xml            |  2 +
 tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_8.2.0-virt.aarch64.xml   |  2 +
 .../domaincapsdata/qemu_8.2.0-virt.loongarch64.xml |  2 +
 tests/domaincapsdata/qemu_8.2.0.aarch64.xml        |  2 +
 tests/domaincapsdata/qemu_8.2.0.armv7l.xml         |  2 +
 tests/domaincapsdata/qemu_8.2.0.s390x.xml          |  2 +
 tests/domaincapsdata/qemu_8.2.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_9.0.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml     |  2 +
 .../domaincapsdata/qemu_9.1.0-tcg-virt.riscv64.xml |  2 +
 tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_9.1.0-virt.riscv64.xml   |  2 +
 tests/domaincapsdata/qemu_9.1.0.s390x.xml          |  2 +
 tests/domaincapsdata/qemu_9.1.0.x86_64.xml         |  2 +
 tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml     |  2 +
 tests/domaincapsdata/qemu_9.2.0.s390x.xml          |  2 +
 tests/domaincapsdata/qemu_9.2.0.x86_64.xml         |  2 +
 tests/qemucapabilitiesdata/caps_10.0.0_s390x.xml   |  2 +
 tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml    |  2 +
 tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_6.1.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_6.2.0_ppc64.xml    |  2 +
 tests/qemucapabilitiesdata/caps_6.2.0_x86_64.xml   |  2 +
 .../caps_7.0.0_aarch64+hvf.xml                     |  2 +
 tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_7.0.0_ppc64.xml    |  2 +
 tests/qemucapabilitiesdata/caps_7.0.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_7.1.0_ppc64.xml    |  2 +
 tests/qemucapabilitiesdata/caps_7.1.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml      |  2 +
 .../qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml |  2 +
 tests/qemucapabilitiesdata/caps_7.2.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_8.2.0_aarch64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_8.2.0_armv7l.xml   |  2 +
 .../caps_8.2.0_loongarch64.xml                     |  2 +
 tests/qemucapabilitiesdata/caps_8.2.0_s390x.xml    |  2 +
 tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml  |  2 +
 tests/qemucapabilitiesdata/caps_9.1.0_s390x.xml    |  2 +
 tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml   |  2 +
 tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml    |  2 +
 tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml   |  2 +
 .../disk-nvme-device.x86_64-latest.args            | 38 +++++++++++++++++
 .../disk-nvme-device.x86_64-latest.xml             | 49 ++++++++++++++++++++++
 tests/qemuxmlconfdata/disk-nvme-device.xml         | 46 ++++++++++++++++++++
 tests/qemuxmlconftest.c                            |  1 +
 133 files changed, 569 insertions(+), 8 deletions(-)
 create mode 100644 tests/qemuxmlconfdata/disk-nvme-device.x86_64-latest.args
 create mode 100644 tests/qemuxmlconfdata/disk-nvme-device.x86_64-latest.xml
 create mode 100644 tests/qemuxmlconfdata/disk-nvme-device.xml
-- 
2.11.0
                    
                  
                  
                          
                            
                            3
                            
                          
                          
                            
                            9
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [PATCH v1] tests: update capabilities for QEMU 9.2.0 on s390x
                        
                        
by Shalini Chellathurai Saroja 12 Mar '25
                    by Shalini Chellathurai Saroja 12 Mar '25
12 Mar '25
                    
                        Update the replies and xml files for QEMU 9.2.0 on s390x based on
the released QEMU tag v9.2.0 with commit Id
ae35f033b874c627d81d51070187fbf55f0bf1a7.
Signed-off-by: Shalini Chellathurai Saroja <shalini(a)linux.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy(a)linux.ibm.com>
---
 .../caps_9.2.0_s390x.replies                  | 3496 +++++++++--------
 .../qemucapabilitiesdata/caps_9.2.0_s390x.xml |    8 +-
 2 files changed, 1824 insertions(+), 1680 deletions(-)
diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
index 9a58acaf08..d328e83a61 100644
--- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.replies
@@ -16,11 +16,11 @@
 {
   "return": {
     "qemu": {
-      "micro": 50,
-      "minor": 1,
+      "micro": 0,
+      "minor": 2,
       "major": 9
     },
-    "package": "v9.1.0-1348-g11b8920ed2"
+    "package": "v9.2.0"
   },
   "id": "libvirt-2"
 }
@@ -1193,39 +1193,48 @@
       "meta-type": "event",
       "arg-type": "193"
     },
+    {
+      "name": "device-sync-config",
+      "ret-type": "0",
+      "meta-type": "command",
+      "arg-type": "194",
+      "features": [
+        "unstable"
+      ]
+    },
     {
       "name": "query-cpus-fast",
-      "ret-type": "[194]",
+      "ret-type": "[195]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-machines",
-      "ret-type": "[196]",
+      "ret-type": "[197]",
       "meta-type": "command",
-      "arg-type": "195"
+      "arg-type": "196"
     },
     {
       "name": "query-current-machine",
-      "ret-type": "197",
+      "ret-type": "198",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-target",
-      "ret-type": "198",
+      "ret-type": "199",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-uuid",
-      "ret-type": "199",
+      "ret-type": "200",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-vm-generation-id",
-      "ret-type": "200",
+      "ret-type": "201",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1255,7 +1264,7 @@
     },
     {
       "name": "query-kvm",
-      "ret-type": "201",
+      "ret-type": "202",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1263,23 +1272,23 @@
       "name": "memsave",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "202"
+      "arg-type": "203"
     },
     {
       "name": "pmemsave",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "203"
+      "arg-type": "204"
     },
     {
       "name": "query-memdev",
-      "ret-type": "[204]",
+      "ret-type": "[205]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-hotpluggable-cpus",
-      "ret-type": "[205]",
+      "ret-type": "[206]",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1287,56 +1296,56 @@
       "name": "set-numa-node",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "206"
+      "arg-type": "207"
     },
     {
       "name": "balloon",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "207"
+      "arg-type": "208"
     },
     {
       "name": "query-balloon",
-      "ret-type": "208",
+      "ret-type": "209",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "BALLOON_CHANGE",
       "meta-type": "event",
-      "arg-type": "209"
+      "arg-type": "210"
     },
     {
       "name": "query-hv-balloon-status-report",
-      "ret-type": "210",
+      "ret-type": "211",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "HV_BALLOON_STATUS_REPORT",
       "meta-type": "event",
-      "arg-type": "210"
+      "arg-type": "211"
     },
     {
       "name": "query-memory-size-summary",
-      "ret-type": "211",
+      "ret-type": "212",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-memory-devices",
-      "ret-type": "[212]",
+      "ret-type": "[213]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "MEMORY_DEVICE_SIZE_CHANGE",
       "meta-type": "event",
-      "arg-type": "213"
+      "arg-type": "214"
     },
     {
       "name": "x-query-irq",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1345,7 +1354,7 @@
     },
     {
       "name": "x-query-jit",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1354,7 +1363,7 @@
     },
     {
       "name": "x-query-numa",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1363,7 +1372,7 @@
     },
     {
       "name": "x-query-opcount",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1372,7 +1381,7 @@
     },
     {
       "name": "x-query-ramblock",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1381,7 +1390,7 @@
     },
     {
       "name": "x-query-roms",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1390,7 +1399,7 @@
     },
     {
       "name": "x-query-usb",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1401,11 +1410,11 @@
       "name": "dumpdtb",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "215"
+      "arg-type": "216"
     },
     {
       "name": "x-query-interrupt-controllers",
-      "ret-type": "214",
+      "ret-type": "215",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1414,25 +1423,25 @@
     },
     {
       "name": "query-cpu-model-comparison",
-      "ret-type": "217",
+      "ret-type": "218",
       "meta-type": "command",
-      "arg-type": "216"
+      "arg-type": "217"
     },
     {
       "name": "query-cpu-model-baseline",
-      "ret-type": "219",
+      "ret-type": "220",
       "meta-type": "command",
-      "arg-type": "218"
+      "arg-type": "219"
     },
     {
       "name": "query-cpu-model-expansion",
-      "ret-type": "221",
+      "ret-type": "222",
       "meta-type": "command",
-      "arg-type": "220"
+      "arg-type": "221"
     },
     {
       "name": "query-cpu-definitions",
-      "ret-type": "[222]",
+      "ret-type": "[223]",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1440,7 +1449,7 @@
       "name": "set-cpu-topology",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "223",
+      "arg-type": "224",
       "features": [
         "unstable"
       ]
@@ -1448,14 +1457,14 @@
     {
       "name": "CPU_POLARIZATION_CHANGE",
       "meta-type": "event",
-      "arg-type": "224",
+      "arg-type": "225",
       "features": [
         "unstable"
       ]
     },
     {
       "name": "query-s390x-cpu-polarization",
-      "ret-type": "225",
+      "ret-type": "226",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1464,7 +1473,7 @@
     },
     {
       "name": "query-replay",
-      "ret-type": "226",
+      "ret-type": "227",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1472,7 +1481,7 @@
       "name": "replay-break",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "227"
+      "arg-type": "228"
     },
     {
       "name": "replay-delete-break",
@@ -1484,18 +1493,18 @@
       "name": "replay-seek",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "228"
+      "arg-type": "229"
     },
     {
       "name": "yank",
       "ret-type": "0",
       "allow-oob": true,
       "meta-type": "command",
-      "arg-type": "229"
+      "arg-type": "230"
     },
     {
       "name": "query-yank",
-      "ret-type": "[230]",
+      "ret-type": "[231]",
       "allow-oob": true,
       "meta-type": "command",
       "arg-type": "0"
@@ -1504,17 +1513,17 @@
       "name": "add_client",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "231"
+      "arg-type": "232"
     },
     {
       "name": "query-name",
-      "ret-type": "232",
+      "ret-type": "233",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-iothreads",
-      "ret-type": "[233]",
+      "ret-type": "[234]",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1543,7 +1552,7 @@
       "name": "human-monitor-command",
       "ret-type": "str",
       "meta-type": "command",
-      "arg-type": "234",
+      "arg-type": "235",
       "features": [
         "savevm-monitor-nodes"
       ]
@@ -1552,92 +1561,92 @@
       "name": "getfd",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "235"
+      "arg-type": "236"
     },
     {
       "name": "closefd",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "237"
+      "arg-type": "238"
     },
     {
       "name": "add-fd",
-      "ret-type": "239",
+      "ret-type": "240",
       "meta-type": "command",
-      "arg-type": "238"
+      "arg-type": "239"
     },
     {
       "name": "remove-fd",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "240"
+      "arg-type": "241"
     },
     {
       "name": "query-fdsets",
-      "ret-type": "[241]",
+      "ret-type": "[242]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-command-line-options",
-      "ret-type": "[243]",
+      "ret-type": "[244]",
       "meta-type": "command",
-      "arg-type": "242"
+      "arg-type": "243"
     },
     {
       "name": "RTC_CHANGE",
       "meta-type": "event",
-      "arg-type": "244"
+      "arg-type": "245"
     },
     {
       "name": "VFU_CLIENT_HANGUP",
       "meta-type": "event",
-      "arg-type": "245"
+      "arg-type": "246"
     },
     {
       "name": "dump-skeys",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "252"
+      "arg-type": "253"
     },
     {
       "name": "query-audiodevs",
-      "ret-type": "[257]",
+      "ret-type": "[258]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-acpi-ospm-status",
-      "ret-type": "[258]",
+      "ret-type": "[259]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "ACPI_DEVICE_OST",
       "meta-type": "event",
-      "arg-type": "259"
+      "arg-type": "260"
     },
     {
       "name": "query-pci",
-      "ret-type": "[260]",
+      "ret-type": "[261]",
       "meta-type": "command",
       "arg-type": "0"
     },
     {
       "name": "query-stats",
-      "ret-type": "[262]",
+      "ret-type": "[263]",
       "meta-type": "command",
-      "arg-type": "261"
+      "arg-type": "262"
     },
     {
       "name": "query-stats-schemas",
-      "ret-type": "[264]",
+      "ret-type": "[265]",
       "meta-type": "command",
-      "arg-type": "263"
+      "arg-type": "264"
     },
     {
       "name": "x-query-virtio",
-      "ret-type": "[265]",
+      "ret-type": "[266]",
       "meta-type": "command",
       "arg-type": "0",
       "features": [
@@ -1646,36 +1655,36 @@
     },
     {
       "name": "x-query-virtio-status",
-      "ret-type": "267",
+      "ret-type": "268",
       "meta-type": "command",
-      "arg-type": "266",
+      "arg-type": "267",
       "features": [
         "unstable"
       ]
     },
     {
       "name": "x-query-virtio-queue-status",
-      "ret-type": "269",
+      "ret-type": "270",
       "meta-type": "command",
-      "arg-type": "268",
+      "arg-type": "269",
       "features": [
         "unstable"
       ]
     },
     {
       "name": "x-query-virtio-vhost-queue-status",
-      "ret-type": "271",
+      "ret-type": "272",
       "meta-type": "command",
-      "arg-type": "270",
+      "arg-type": "271",
       "features": [
         "unstable"
       ]
     },
     {
       "name": "x-query-virtio-queue-element",
-      "ret-type": "273",
+      "ret-type": "274",
       "meta-type": "command",
-      "arg-type": "272",
+      "arg-type": "273",
       "features": [
         "unstable"
       ]
@@ -1683,11 +1692,11 @@
     {
       "name": "VFIO_MIGRATION",
       "meta-type": "event",
-      "arg-type": "274"
+      "arg-type": "275"
     },
     {
       "name": "query-cryptodev",
-      "ret-type": "[275]",
+      "ret-type": "[276]",
       "meta-type": "command",
       "arg-type": "0"
     },
@@ -1695,43 +1704,43 @@
       "name": "cxl-inject-general-media-event",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "276"
+      "arg-type": "277"
     },
     {
       "name": "cxl-inject-dram-event",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "277"
+      "arg-type": "278"
     },
     {
       "name": "cxl-inject-memory-module-event",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "278"
+      "arg-type": "279"
     },
     {
       "name": "cxl-inject-poison",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "279"
+      "arg-type": "280"
     },
     {
       "name": "cxl-inject-uncorrectable-errors",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "280"
+      "arg-type": "281"
     },
     {
       "name": "cxl-inject-correctable-error",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "281"
+      "arg-type": "282"
     },
     {
       "name": "cxl-add-dynamic-capacity",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "282",
+      "arg-type": "283",
       "features": [
         "unstable"
       ]
@@ -1740,7 +1749,7 @@
       "name": "cxl-release-dynamic-capacity",
       "ret-type": "0",
       "meta-type": "command",
-      "arg-type": "283",
+      "arg-type": "284",
       "features": [
         "unstable"
       ]
@@ -1759,7 +1768,7 @@
         },
         {
           "name": "status",
-          "type": "284"
+          "type": "285"
         }
       ],
       "meta-type": "object"
@@ -1773,7 +1782,7 @@
         },
         {
           "name": "reason",
-          "type": "285"
+          "type": "286"
         }
       ],
       "meta-type": "object"
@@ -1787,7 +1796,7 @@
         },
         {
           "name": "reason",
-          "type": "285"
+          "type": "286"
         }
       ],
       "meta-type": "object"
@@ -1797,7 +1806,7 @@
       "members": [
         {
           "name": "action",
-          "type": "286"
+          "type": "287"
         }
       ],
       "meta-type": "object"
@@ -1807,7 +1816,7 @@
       "members": [
         {
           "name": "action",
-          "type": "286"
+          "type": "287"
         }
       ],
       "meta-type": "object"
@@ -1818,22 +1827,22 @@
         {
           "name": "reboot",
           "default": null,
-          "type": "287"
+          "type": "288"
         },
         {
           "name": "shutdown",
           "default": null,
-          "type": "288"
+          "type": "289"
         },
         {
           "name": "panic",
           "default": null,
-          "type": "289"
+          "type": "290"
         },
         {
           "name": "watchdog",
           "default": null,
-          "type": "286"
+          "type": "287"
         }
       ],
       "meta-type": "object"
@@ -1843,12 +1852,12 @@
       "members": [
         {
           "name": "action",
-          "type": "290"
+          "type": "291"
         },
         {
           "name": "info",
           "default": null,
-          "type": "291"
+          "type": "292"
         }
       ],
       "meta-type": "object"
@@ -1858,12 +1867,12 @@
       "members": [
         {
           "name": "action",
-          "type": "290"
+          "type": "291"
         },
         {
           "name": "info",
           "default": null,
-          "type": "291"
+          "type": "292"
         }
       ],
       "meta-type": "object"
@@ -1873,15 +1882,15 @@
       "members": [
         {
           "name": "recipient",
-          "type": "292"
+          "type": "293"
         },
         {
           "name": "action",
-          "type": "293"
+          "type": "294"
         },
         {
           "name": "flags",
-          "type": "294"
+          "type": "295"
         }
       ],
       "meta-type": "object"
@@ -1895,7 +1904,7 @@
         },
         {
           "name": "status",
-          "type": "295"
+          "type": "296"
         }
       ],
       "meta-type": "object"
@@ -1974,11 +1983,11 @@
         },
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         },
         {
           "name": "status",
-          "type": "295"
+          "type": "296"
         },
         {
           "name": "current-progress",
@@ -2139,7 +2148,7 @@
         {
           "name": "read-only-mode",
           "default": null,
-          "type": "297"
+          "type": "298"
         }
       ],
       "meta-type": "object"
@@ -2366,7 +2375,7 @@
         {
           "name": "io-status",
           "default": null,
-          "type": "298"
+          "type": "299"
         }
       ],
       "meta-type": "object"
@@ -2407,12 +2416,12 @@
         },
         {
           "name": "stats",
-          "type": "299"
+          "type": "300"
         },
         {
           "name": "driver-specific",
           "default": null,
-          "type": "300"
+          "type": "301"
         },
         {
           "name": "parent",
@@ -2438,7 +2447,7 @@
       "variants": [
         {
           "case": "mirror",
-          "type": "301"
+          "type": "302"
         },
         {
           "case": "commit",
@@ -2476,7 +2485,7 @@
       "members": [
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         },
         {
           "name": "device",
@@ -2504,7 +2513,7 @@
         },
         {
           "name": "io-status",
-          "type": "298"
+          "type": "299"
         },
         {
           "name": "ready",
@@ -2512,7 +2521,7 @@
         },
         {
           "name": "status",
-          "type": "295"
+          "type": "296"
         },
         {
           "name": "auto-finalize",
@@ -2580,7 +2589,7 @@
         {
           "name": "mode",
           "default": null,
-          "type": "302"
+          "type": "303"
         }
       ],
       "meta-type": "object"
@@ -2673,7 +2682,7 @@
         {
           "name": "on-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "filter-node-name",
@@ -2707,7 +2716,7 @@
         },
         {
           "name": "sync",
-          "type": "304"
+          "type": "305"
         },
         {
           "name": "speed",
@@ -2722,7 +2731,7 @@
         {
           "name": "bitmap-mode",
           "default": null,
-          "type": "305"
+          "type": "306"
         },
         {
           "name": "compress",
@@ -2732,12 +2741,12 @@
         {
           "name": "on-source-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "on-target-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "auto-finalize",
@@ -2762,7 +2771,7 @@
         {
           "name": "x-perf",
           "default": null,
-          "type": "306",
+          "type": "307",
           "features": [
             "unstable"
           ]
@@ -2779,7 +2788,7 @@
         {
           "name": "mode",
           "default": null,
-          "type": "302"
+          "type": "303"
         }
       ],
       "meta-type": "object"
@@ -2798,7 +2807,7 @@
         },
         {
           "name": "sync",
-          "type": "304"
+          "type": "305"
         },
         {
           "name": "speed",
@@ -2813,7 +2822,7 @@
         {
           "name": "bitmap-mode",
           "default": null,
-          "type": "305"
+          "type": "306"
         },
         {
           "name": "compress",
@@ -2823,12 +2832,12 @@
         {
           "name": "on-source-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "on-target-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "auto-finalize",
@@ -2853,7 +2862,7 @@
         {
           "name": "x-perf",
           "default": null,
-          "type": "306",
+          "type": "307",
           "features": [
             "unstable"
           ]
@@ -2916,7 +2925,7 @@
         },
         {
           "name": "detect_zeroes",
-          "type": "307"
+          "type": "308"
         },
         {
           "name": "bps",
@@ -2944,7 +2953,7 @@
         },
         {
           "name": "image",
-          "type": "308"
+          "type": "309"
         },
         {
           "name": "bps_max",
@@ -3018,7 +3027,7 @@
         },
         {
           "name": "cache",
-          "type": "309"
+          "type": "310"
         },
         {
           "name": "write_threshold",
@@ -3027,7 +3036,7 @@
         {
           "name": "dirty-bitmaps",
           "default": null,
-          "type": "[310]"
+          "type": "[311]"
         }
       ],
       "meta-type": "object"
@@ -3037,11 +3046,11 @@
       "members": [
         {
           "name": "nodes",
-          "type": "[311]"
+          "type": "[312]"
         },
         {
           "name": "edges",
-          "type": "[312]"
+          "type": "[313]"
         }
       ],
       "meta-type": "object"
@@ -3079,12 +3088,12 @@
         },
         {
           "name": "sync",
-          "type": "304"
+          "type": "305"
         },
         {
           "name": "mode",
           "default": null,
-          "type": "302"
+          "type": "303"
         },
         {
           "name": "speed",
@@ -3104,12 +3113,12 @@
         {
           "name": "on-source-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "on-target-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "unmap",
@@ -3119,7 +3128,7 @@
         {
           "name": "copy-mode",
           "default": null,
-          "type": "313"
+          "type": "314"
         },
         {
           "name": "auto-finalize",
@@ -3190,7 +3199,7 @@
         },
         {
           "name": "bitmaps",
-          "type": "[314]"
+          "type": "[315]"
         }
       ],
       "meta-type": "object"
@@ -3228,7 +3237,7 @@
         },
         {
           "name": "sync",
-          "type": "304"
+          "type": "305"
         },
         {
           "name": "speed",
@@ -3248,12 +3257,12 @@
         {
           "name": "on-source-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "on-target-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "filter-node-name",
@@ -3263,7 +3272,7 @@
         {
           "name": "copy-mode",
           "default": null,
-          "type": "313"
+          "type": "314"
         },
         {
           "name": "auto-finalize",
@@ -3323,7 +3332,7 @@
         {
           "name": "on-error",
           "default": null,
-          "type": "303"
+          "type": "304"
         },
         {
           "name": "filter-node-name",
@@ -3428,7 +3437,7 @@
       "variants": [
         {
           "case": "mirror",
-          "type": "315"
+          "type": "316"
         },
         {
           "case": "commit",
@@ -3470,7 +3479,7 @@
         },
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         }
       ],
       "meta-type": "object"
@@ -3481,197 +3490,197 @@
       "variants": [
         {
           "case": "blkdebug",
-          "type": "319"
+          "type": "320"
         },
         {
           "case": "blklogwrites",
-          "type": "320"
+          "type": "321"
         },
         {
           "case": "blkverify",
-          "type": "321"
+          "type": "322"
         },
         {
           "case": "blkreplay",
-          "type": "322"
+          "type": "323"
         },
         {
           "case": "bochs",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "cloop",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "compress",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "copy-before-write",
-          "type": "324"
+          "type": "325"
         },
         {
           "case": "copy-on-read",
-          "type": "325"
+          "type": "326"
         },
         {
           "case": "dmg",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "file",
-          "type": "326"
+          "type": "327"
         },
         {
           "case": "ftp",
-          "type": "327"
+          "type": "328"
         },
         {
           "case": "ftps",
-          "type": "328"
+          "type": "329"
         },
         {
           "case": "gluster",
-          "type": "329"
+          "type": "330"
         },
         {
           "case": "host_cdrom",
-          "type": "326"
+          "type": "327"
         },
         {
           "case": "host_device",
-          "type": "326"
+          "type": "327"
         },
         {
           "case": "http",
-          "type": "330"
+          "type": "331"
         },
         {
           "case": "https",
-          "type": "331"
+          "type": "332"
         },
         {
           "case": "io_uring",
-          "type": "332"
+          "type": "333"
         },
         {
           "case": "iscsi",
-          "type": "333"
+          "type": "334"
         },
         {
           "case": "luks",
-          "type": "334"
+          "type": "335"
         },
         {
           "case": "nbd",
-          "type": "335"
+          "type": "336"
         },
         {
           "case": "nfs",
-          "type": "336"
+          "type": "337"
         },
         {
           "case": "null-aio",
-          "type": "337"
+          "type": "338"
         },
         {
           "case": "null-co",
-          "type": "337"
+          "type": "338"
         },
         {
           "case": "nvme",
-          "type": "338"
+          "type": "339"
         },
         {
           "case": "nvme-io_uring",
-          "type": "339"
+          "type": "340"
         },
         {
           "case": "parallels",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "preallocate",
-          "type": "340"
+          "type": "341"
         },
         {
           "case": "qcow2",
-          "type": "341"
+          "type": "342"
         },
         {
           "case": "qcow",
-          "type": "342"
+          "type": "343"
         },
         {
           "case": "qed",
-          "type": "343"
+          "type": "344"
         },
         {
           "case": "quorum",
-          "type": "344"
+          "type": "345"
         },
         {
           "case": "raw",
-          "type": "345"
+          "type": "346"
         },
         {
           "case": "rbd",
-          "type": "346"
+          "type": "347"
         },
         {
           "case": "replication",
-          "type": "347"
+          "type": "348"
         },
         {
           "case": "snapshot-access",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "ssh",
-          "type": "348"
+          "type": "349"
         },
         {
           "case": "throttle",
-          "type": "349"
+          "type": "350"
         },
         {
           "case": "vdi",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "vhdx",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "virtio-blk-vfio-pci",
-          "type": "350"
+          "type": "351"
         },
         {
           "case": "virtio-blk-vhost-user",
-          "type": "351"
+          "type": "352"
         },
         {
           "case": "virtio-blk-vhost-vdpa",
-          "type": "352"
+          "type": "353"
         },
         {
           "case": "vmdk",
-          "type": "343"
+          "type": "344"
         },
         {
           "case": "vpc",
-          "type": "323"
+          "type": "324"
         },
         {
           "case": "vvfat",
-          "type": "353"
+          "type": "354"
         }
       ],
       "members": [
         {
           "name": "driver",
-          "type": "316"
+          "type": "317"
         },
         {
           "name": "node-name",
@@ -3681,12 +3690,12 @@
         {
           "name": "discard",
           "default": null,
-          "type": "317"
+          "type": "318"
         },
         {
           "name": "cache",
           "default": null,
-          "type": "318"
+          "type": "319"
         },
         {
           "name": "read-only",
@@ -3706,7 +3715,7 @@
         {
           "name": "detect-zeroes",
           "default": null,
-          "type": "307"
+          "type": "308"
         }
       ],
       "meta-type": "object"
@@ -3740,7 +3749,7 @@
         },
         {
           "name": "options",
-          "type": "354"
+          "type": "355"
         }
       ],
       "meta-type": "object"
@@ -3758,7 +3767,7 @@
         },
         {
           "name": "options",
-          "type": "355"
+          "type": "356"
         },
         {
           "name": "force",
@@ -3819,11 +3828,11 @@
         },
         {
           "name": "operation",
-          "type": "356"
+          "type": "357"
         },
         {
           "name": "action",
-          "type": "357"
+          "type": "358"
         },
         {
           "name": "nospace",
@@ -3842,7 +3851,7 @@
       "members": [
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         },
         {
           "name": "device",
@@ -3873,7 +3882,7 @@
       "members": [
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         },
         {
           "name": "device",
@@ -3903,11 +3912,11 @@
         },
         {
           "name": "operation",
-          "type": "356"
+          "type": "357"
         },
         {
           "name": "action",
-          "type": "357"
+          "type": "358"
         }
       ],
       "meta-type": "object"
@@ -3917,7 +3926,7 @@
       "members": [
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         },
         {
           "name": "device",
@@ -3943,7 +3952,7 @@
       "members": [
         {
           "name": "type",
-          "type": "296"
+          "type": "297"
         },
         {
           "name": "id",
@@ -4013,7 +4022,7 @@
         },
         {
           "name": "iothread",
-          "type": "358"
+          "type": "359"
         },
         {
           "name": "force",
@@ -4046,7 +4055,7 @@
       "members": [
         {
           "name": "type",
-          "type": "359"
+          "type": "360"
         },
         {
           "name": "error",
@@ -4146,7 +4155,7 @@
       "members": [
         {
           "name": "addr",
-          "type": "360"
+          "type": "361"
         },
         {
           "name": "tls-creds",
@@ -4206,7 +4215,7 @@
         {
           "name": "mode",
           "default": null,
-          "type": "361"
+          "type": "362"
         }
       ],
       "meta-type": "object"
@@ -4217,25 +4226,25 @@
       "variants": [
         {
           "case": "nbd",
-          "type": "363"
+          "type": "364"
         },
         {
           "case": "vhost-user-blk",
-          "type": "364"
+          "type": "365"
         },
         {
           "case": "fuse",
-          "type": "365"
+          "type": "366"
         },
         {
           "case": "vduse-blk",
-          "type": "366"
+          "type": "367"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "362"
+          "type": "363"
         },
         {
           "name": "id",
@@ -4278,7 +4287,7 @@
         {
           "name": "mode",
           "default": null,
-          "type": "361"
+          "type": "362"
         }
       ],
       "meta-type": "object"
@@ -4307,7 +4316,7 @@
         },
         {
           "name": "type",
-          "type": "362"
+          "type": "363"
         },
         {
           "name": "node-name",
@@ -4372,7 +4381,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "367"
+          "type": "368"
         }
       ],
       "meta-type": "object"
@@ -4391,7 +4400,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "367"
+          "type": "368"
         }
       ],
       "meta-type": "object"
@@ -4410,7 +4419,7 @@
         },
         {
           "name": "backend",
-          "type": "368"
+          "type": "369"
         }
       ],
       "meta-type": "object"
@@ -4435,7 +4444,7 @@
         },
         {
           "name": "backend",
-          "type": "368"
+          "type": "369"
         }
       ],
       "meta-type": "object"
@@ -4503,7 +4512,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "369"
+          "type": "370"
         }
       ],
       "meta-type": "object"
@@ -4513,7 +4522,7 @@
       "members": [
         {
           "name": "status",
-          "type": "370"
+          "type": "371"
         },
         {
           "name": "completed",
@@ -4546,7 +4555,7 @@
       "members": [
         {
           "name": "formats",
-          "type": "[369]"
+          "type": "[370]"
         }
       ],
       "meta-type": "object"
@@ -4571,59 +4580,59 @@
       "variants": [
         {
           "case": "nic",
-          "type": "372"
+          "type": "373"
         },
         {
           "case": "user",
-          "type": "373"
+          "type": "374"
         },
         {
           "case": "tap",
-          "type": "374"
+          "type": "375"
         },
         {
           "case": "l2tpv3",
-          "type": "375"
+          "type": "376"
         },
         {
           "case": "socket",
-          "type": "376"
+          "type": "377"
         },
         {
           "case": "stream",
-          "type": "377"
+          "type": "378"
         },
         {
           "case": "dgram",
-          "type": "378"
+          "type": "379"
         },
         {
           "case": "vde",
-          "type": "379"
+          "type": "380"
         },
         {
           "case": "bridge",
-          "type": "380"
+          "type": "381"
         },
         {
           "case": "hubport",
-          "type": "381"
+          "type": "382"
         },
         {
           "case": "netmap",
-          "type": "382"
+          "type": "383"
         },
         {
           "case": "af-xdp",
-          "type": "383"
+          "type": "384"
         },
         {
           "case": "vhost-user",
-          "type": "384"
+          "type": "385"
         },
         {
           "case": "vhost-vdpa",
-          "type": "385"
+          "type": "386"
         },
         {
           "case": "none",
@@ -4637,7 +4646,7 @@
         },
         {
           "name": "type",
-          "type": "371"
+          "type": "372"
         }
       ],
       "meta-type": "object"
@@ -4681,15 +4690,15 @@
         },
         {
           "name": "multicast",
-          "type": "389"
+          "type": "390"
         },
         {
           "name": "unicast",
-          "type": "389"
+          "type": "390"
         },
         {
           "name": "vlan",
-          "type": "389"
+          "type": "390"
         },
         {
           "name": "broadcast-allowed",
@@ -4788,7 +4797,7 @@
         },
         {
           "name": "addr",
-          "type": "390"
+          "type": "391"
         }
       ],
       "meta-type": "object"
@@ -4808,7 +4817,7 @@
       "members": [
         {
           "name": "id",
-          "type": "391"
+          "type": "392"
         }
       ],
       "meta-type": "object"
@@ -4887,11 +4896,11 @@
         },
         {
           "name": "duplex",
-          "type": "392"
+          "type": "393"
         },
         {
           "name": "autoneg",
-          "type": "393"
+          "type": "394"
         }
       ],
       "meta-type": "object"
@@ -4929,15 +4938,15 @@
         },
         {
           "name": "key",
-          "type": "394"
+          "type": "395"
         },
         {
           "name": "mask",
-          "type": "395"
+          "type": "396"
         },
         {
           "name": "action",
-          "type": "396"
+          "type": "397"
         }
       ],
       "meta-type": "object"
@@ -5095,7 +5104,7 @@
         },
         {
           "name": "options",
-          "type": "397"
+          "type": "398"
         }
       ],
       "meta-type": "object"
@@ -5106,7 +5115,7 @@
       "variants": [
         {
           "case": "vnc",
-          "type": "400"
+          "type": "401"
         },
         {
           "case": "spice",
@@ -5116,7 +5125,7 @@
       "members": [
         {
           "name": "protocol",
-          "type": "398"
+          "type": "399"
         },
         {
           "name": "password",
@@ -5125,7 +5134,7 @@
         {
           "name": "connected",
           "default": null,
-          "type": "399"
+          "type": "400"
         }
       ],
       "meta-type": "object"
@@ -5136,7 +5145,7 @@
       "variants": [
         {
           "case": "vnc",
-          "type": "401"
+          "type": "402"
         },
         {
           "case": "spice",
@@ -5146,7 +5155,7 @@
       "members": [
         {
           "name": "protocol",
-          "type": "398"
+          "type": "399"
         },
         {
           "name": "time",
@@ -5175,7 +5184,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "402"
+          "type": "403"
         }
       ],
       "meta-type": "object"
@@ -5195,7 +5204,7 @@
         {
           "name": "family",
           "default": null,
-          "type": "407"
+          "type": "408"
         },
         {
           "name": "service",
@@ -5210,7 +5219,7 @@
         {
           "name": "clients",
           "default": null,
-          "type": "[408]"
+          "type": "[409]"
         }
       ],
       "meta-type": "object"
@@ -5229,20 +5238,20 @@
         },
         {
           "name": "server",
-          "type": "[409]"
+          "type": "[410]"
         },
         {
           "name": "clients",
-          "type": "[408]"
+          "type": "[409]"
         },
         {
           "name": "auth",
-          "type": "410"
+          "type": "411"
         },
         {
           "name": "vencrypt",
           "default": null,
-          "type": "411"
+          "type": "412"
         },
         {
           "name": "display",
@@ -5267,11 +5276,11 @@
       "members": [
         {
           "name": "server",
-          "type": "412"
+          "type": "413"
         },
         {
           "name": "client",
-          "type": "413"
+          "type": "414"
         }
       ],
       "meta-type": "object"
@@ -5281,11 +5290,11 @@
       "members": [
         {
           "name": "server",
-          "type": "412"
+          "type": "413"
         },
         {
           "name": "client",
-          "type": "408"
+          "type": "409"
         }
       ],
       "meta-type": "object"
@@ -5295,11 +5304,11 @@
       "members": [
         {
           "name": "server",
-          "type": "412"
+          "type": "413"
         },
         {
           "name": "client",
-          "type": "408"
+          "type": "409"
         }
       ],
       "meta-type": "object"
@@ -5336,7 +5345,7 @@
       "members": [
         {
           "name": "keys",
-          "type": "[414]"
+          "type": "[415]"
         },
         {
           "name": "hold-time",
@@ -5361,7 +5370,7 @@
         },
         {
           "name": "events",
-          "type": "[415]"
+          "type": "[416]"
         }
       ],
       "meta-type": "object"
@@ -5372,23 +5381,23 @@
       "variants": [
         {
           "case": "gtk",
-          "type": "418"
+          "type": "419"
         },
         {
           "case": "curses",
-          "type": "420"
+          "type": "421"
         },
         {
           "case": "egl-headless",
-          "type": "421"
+          "type": "422"
         },
         {
           "case": "dbus",
-          "type": "422"
+          "type": "423"
         },
         {
           "case": "sdl",
-          "type": "423"
+          "type": "424"
         },
         {
           "case": "default",
@@ -5402,7 +5411,7 @@
       "members": [
         {
           "name": "type",
-          "type": "416"
+          "type": "417"
         },
         {
           "name": "full-screen",
@@ -5422,7 +5431,7 @@
         {
           "name": "gl",
           "default": null,
-          "type": "417"
+          "type": "418"
         }
       ],
       "meta-type": "object"
@@ -5433,13 +5442,13 @@
       "variants": [
         {
           "case": "vnc",
-          "type": "425"
+          "type": "426"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "424"
+          "type": "425"
         }
       ],
       "meta-type": "object"
@@ -5450,13 +5459,13 @@
       "variants": [
         {
           "case": "vnc",
-          "type": "427"
+          "type": "428"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "426"
+          "type": "427"
         }
       ],
       "meta-type": "object"
@@ -5496,22 +5505,22 @@
         {
           "name": "status",
           "default": null,
-          "type": "428"
+          "type": "429"
         },
         {
           "name": "ram",
           "default": null,
-          "type": "429"
+          "type": "430"
         },
         {
           "name": "vfio",
           "default": null,
-          "type": "430"
+          "type": "431"
         },
         {
           "name": "xbzrle-cache",
           "default": null,
-          "type": "431"
+          "type": "432"
         },
         {
           "name": "total-time",
@@ -5561,7 +5570,7 @@
         {
           "name": "socket-address",
           "default": null,
-          "type": "[390]"
+          "type": "[391]"
         },
         {
           "name": "dirty-limit-throttle-time-per-round",
@@ -5596,7 +5605,7 @@
       "members": [
         {
           "name": "capability",
-          "type": "432"
+          "type": "433"
         },
         {
           "name": "state",
@@ -5651,17 +5660,17 @@
         {
           "name": "tls-creds",
           "default": null,
-          "type": "358"
+          "type": "359"
         },
         {
           "name": "tls-hostname",
           "default": null,
-          "type": "358"
+          "type": "359"
         },
         {
           "name": "tls-authz",
           "default": null,
-          "type": "358"
+          "type": "359"
         },
         {
           "name": "max-bandwidth",
@@ -5709,7 +5718,7 @@
         {
           "name": "multifd-compression",
           "default": null,
-          "type": "433"
+          "type": "434"
         },
         {
           "name": "multifd-zlib-level",
@@ -5729,7 +5738,7 @@
         {
           "name": "block-bitmap-mapping",
           "default": null,
-          "type": "[434]"
+          "type": "[435]"
         },
         {
           "name": "x-vcpu-dirty-limit-period",
@@ -5747,12 +5756,12 @@
         {
           "name": "mode",
           "default": null,
-          "type": "435"
+          "type": "436"
         },
         {
           "name": "zero-page-detection",
           "default": null,
-          "type": "436"
+          "type": "437"
         },
         {
           "name": "direct-io",
@@ -5866,7 +5875,7 @@
         {
           "name": "multifd-compression",
           "default": null,
-          "type": "433"
+          "type": "434"
         },
         {
           "name": "multifd-zlib-level",
@@ -5886,7 +5895,7 @@
         {
           "name": "block-bitmap-mapping",
           "default": null,
-          "type": "[434]"
+          "type": "[435]"
         },
         {
           "name": "x-vcpu-dirty-limit-period",
@@ -5904,12 +5913,12 @@
         {
           "name": "mode",
           "default": null,
-          "type": "435"
+          "type": "436"
         },
         {
           "name": "zero-page-detection",
           "default": null,
-          "type": "436"
+          "type": "437"
         },
         {
           "name": "direct-io",
@@ -5924,7 +5933,7 @@
       "members": [
         {
           "name": "status",
-          "type": "428"
+          "type": "429"
         }
       ],
       "meta-type": "object"
@@ -5944,11 +5953,11 @@
       "members": [
         {
           "name": "mode",
-          "type": "437"
+          "type": "438"
         },
         {
           "name": "reason",
-          "type": "438"
+          "type": "439"
         }
       ],
       "meta-type": "object"
@@ -5958,7 +5967,7 @@
       "members": [
         {
           "name": "state",
-          "type": "428"
+          "type": "429"
         }
       ],
       "meta-type": "object"
@@ -5974,7 +5983,7 @@
         {
           "name": "channels",
           "default": null,
-          "type": "[439]"
+          "type": "[440]"
         },
         {
           "name": "detach",
@@ -6000,7 +6009,7 @@
         {
           "name": "channels",
           "default": null,
-          "type": "[439]"
+          "type": "[440]"
         },
         {
           "name": "exit-on-error",
@@ -6084,15 +6093,15 @@
       "members": [
         {
           "name": "mode",
-          "type": "437"
+          "type": "438"
         },
         {
           "name": "last-mode",
-          "type": "437"
+          "type": "438"
         },
         {
           "name": "reason",
-          "type": "438"
+          "type": "439"
         }
       ],
       "meta-type": "object"
@@ -6127,7 +6136,7 @@
         {
           "name": "calc-time-unit",
           "default": null,
-          "type": "440"
+          "type": "441"
         },
         {
           "name": "sample-pages",
@@ -6137,7 +6146,7 @@
         {
           "name": "mode",
           "default": null,
-          "type": "441"
+          "type": "442"
         }
       ],
       "meta-type": "object"
@@ -6148,7 +6157,7 @@
         {
           "name": "calc-time-unit",
           "default": null,
-          "type": "440"
+          "type": "441"
         }
       ],
       "meta-type": "object"
@@ -6163,7 +6172,7 @@
         },
         {
           "name": "status",
-          "type": "442"
+          "type": "443"
         },
         {
           "name": "start-time",
@@ -6175,7 +6184,7 @@
         },
         {
           "name": "calc-time-unit",
-          "type": "440"
+          "type": "441"
         },
         {
           "name": "sample-pages",
@@ -6183,12 +6192,12 @@
         },
         {
           "name": "mode",
-          "type": "441"
+          "type": "442"
         },
         {
           "name": "vcpu-dirty-rate",
           "default": null,
-          "type": "[443]"
+          "type": "[444]"
         }
       ],
       "meta-type": "object"
@@ -6328,12 +6337,12 @@
       "members": [
         {
           "name": "actions",
-          "type": "[444]"
+          "type": "[445]"
         },
         {
           "name": "properties",
           "default": null,
-          "type": "445"
+          "type": "446"
         }
       ],
       "meta-type": "object"
@@ -6362,7 +6371,7 @@
         },
         {
           "name": "state",
-          "type": "446"
+          "type": "447"
         }
       ],
       "meta-type": "object"
@@ -6392,7 +6401,7 @@
         {
           "name": "enable",
           "default": null,
-          "type": "[447]"
+          "type": "[448]"
         }
       ],
       "meta-type": "object"
@@ -6402,7 +6411,7 @@
       "members": [
         {
           "name": "qemu",
-          "type": "448"
+          "type": "449"
         },
         {
           "name": "package",
@@ -6437,31 +6446,31 @@
       "variants": [
         {
           "case": "builtin",
-          "type": "450"
+          "type": "451"
         },
         {
           "case": "enum",
-          "type": "451"
+          "type": "452"
         },
         {
           "case": "array",
-          "type": "452"
+          "type": "453"
         },
         {
           "case": "object",
-          "type": "453"
+          "type": "454"
         },
         {
           "case": "alternate",
-          "type": "454"
+          "type": "455"
         },
         {
           "case": "command",
-          "type": "455"
+          "type": "456"
         },
         {
           "case": "event",
-          "type": "456"
+          "type": "457"
         }
       ],
       "members": [
@@ -6471,7 +6480,7 @@
         },
         {
           "name": "meta-type",
-          "type": "449"
+          "type": "450"
         },
         {
           "name": "features",
@@ -6614,183 +6623,187 @@
       "variants": [
         {
           "case": "acpi-generic-initiator",
-          "type": "458"
+          "type": "459"
+        },
+        {
+          "case": "acpi-generic-port",
+          "type": "460"
         },
         {
           "case": "authz-list",
-          "type": "459"
+          "type": "461"
         },
         {
           "case": "authz-listfile",
-          "type": "460"
+          "type": "462"
         },
         {
           "case": "authz-pam",
-          "type": "461"
+          "type": "463"
         },
         {
           "case": "authz-simple",
-          "type": "462"
+          "type": "464"
         },
         {
           "case": "can-host-socketcan",
-          "type": "463"
+          "type": "465"
         },
         {
           "case": "colo-compare",
-          "type": "464"
+          "type": "466"
         },
         {
           "case": "cryptodev-backend",
-          "type": "465"
+          "type": "467"
         },
         {
           "case": "cryptodev-backend-builtin",
-          "type": "465"
+          "type": "467"
         },
         {
           "case": "cryptodev-backend-lkcf",
-          "type": "465"
+          "type": "467"
         },
         {
           "case": "cryptodev-vhost-user",
-          "type": "466"
+          "type": "468"
         },
         {
           "case": "dbus-vmstate",
-          "type": "467"
+          "type": "469"
         },
         {
           "case": "filter-buffer",
-          "type": "468"
+          "type": "470"
         },
         {
           "case": "filter-dump",
-          "type": "469"
+          "type": "471"
         },
         {
           "case": "filter-mirror",
-          "type": "470"
+          "type": "472"
         },
         {
           "case": "filter-redirector",
-          "type": "471"
+          "type": "473"
         },
         {
           "case": "filter-replay",
-          "type": "472"
+          "type": "474"
         },
         {
           "case": "filter-rewriter",
-          "type": "473"
+          "type": "475"
         },
         {
           "case": "input-barrier",
-          "type": "474"
+          "type": "476"
         },
         {
           "case": "input-linux",
-          "type": "475"
+          "type": "477"
         },
         {
           "case": "iommufd",
-          "type": "476"
+          "type": "478"
         },
         {
           "case": "iothread",
-          "type": "477"
+          "type": "479"
         },
         {
           "case": "main-loop",
-          "type": "478"
+          "type": "480"
         },
         {
           "case": "memory-backend-epc",
-          "type": "479"
+          "type": "481"
         },
         {
           "case": "memory-backend-file",
-          "type": "480"
+          "type": "482"
         },
         {
           "case": "memory-backend-memfd",
-          "type": "481"
+          "type": "483"
         },
         {
           "case": "memory-backend-ram",
-          "type": "482"
+          "type": "484"
         },
         {
           "case": "memory-backend-shm",
-          "type": "483"
+          "type": "485"
         },
         {
           "case": "pr-manager-helper",
-          "type": "484"
+          "type": "486"
         },
         {
           "case": "qtest",
-          "type": "485"
+          "type": "487"
         },
         {
           "case": "rng-builtin",
-          "type": "486"
+          "type": "488"
         },
         {
           "case": "rng-egd",
-          "type": "487"
+          "type": "489"
         },
         {
           "case": "rng-random",
-          "type": "488"
+          "type": "490"
         },
         {
           "case": "secret",
-          "type": "489"
+          "type": "491"
         },
         {
           "case": "secret_keyring",
-          "type": "490"
+          "type": "492"
         },
         {
           "case": "sev-guest",
-          "type": "491"
+          "type": "493"
         },
         {
           "case": "sev-snp-guest",
-          "type": "492"
+          "type": "494"
         },
         {
           "case": "thread-context",
-          "type": "493"
+          "type": "495"
         },
         {
           "case": "throttle-group",
-          "type": "494"
+          "type": "496"
         },
         {
           "case": "tls-creds-anon",
-          "type": "495"
+          "type": "497"
         },
         {
           "case": "tls-creds-psk",
-          "type": "496"
+          "type": "498"
         },
         {
           "case": "tls-creds-x509",
-          "type": "497"
+          "type": "499"
         },
         {
           "case": "tls-cipher-suites",
-          "type": "498"
+          "type": "500"
         },
         {
           "case": "x-remote-object",
-          "type": "499"
+          "type": "501"
         },
         {
           "case": "x-vfio-user-server",
-          "type": "500"
+          "type": "502"
         },
         {
           "case": "can-bus",
@@ -6808,7 +6821,7 @@
       "members": [
         {
           "name": "qom-type",
-          "type": "457"
+          "type": "458"
         },
         {
           "name": "id",
@@ -6898,17 +6911,27 @@
       "meta-type": "object"
     },
     {
-      "name": "[194]",
-      "element-type": "194",
+      "name": "194",
+      "members": [
+        {
+          "name": "id",
+          "type": "str"
+        }
+      ],
+      "meta-type": "object"
+    },
+    {
+      "name": "[195]",
+      "element-type": "195",
       "meta-type": "array"
     },
     {
-      "name": "194",
+      "name": "195",
       "tag": "target",
       "variants": [
         {
           "case": "s390x",
-          "type": "503"
+          "type": "505"
         },
         {
           "case": "aarch64",
@@ -7039,17 +7062,17 @@
         {
           "name": "props",
           "default": null,
-          "type": "501"
+          "type": "503"
         },
         {
           "name": "target",
-          "type": "502"
+          "type": "504"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "195",
+      "name": "196",
       "members": [
         {
           "name": "compat-props",
@@ -7063,12 +7086,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[196]",
-      "element-type": "196",
+      "name": "[197]",
+      "element-type": "197",
       "meta-type": "array"
     },
     {
-      "name": "196",
+      "name": "197",
       "members": [
         {
           "name": "name",
@@ -7117,7 +7140,7 @@
         {
           "name": "compat-props",
           "default": null,
-          "type": "[504]",
+          "type": "[506]",
           "features": [
             "unstable"
           ]
@@ -7126,7 +7149,7 @@
       "meta-type": "object"
     },
     {
-      "name": "197",
+      "name": "198",
       "members": [
         {
           "name": "wakeup-suspend-support",
@@ -7136,17 +7159,17 @@
       "meta-type": "object"
     },
     {
-      "name": "198",
+      "name": "199",
       "members": [
         {
           "name": "arch",
-          "type": "502"
+          "type": "504"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "199",
+      "name": "200",
       "members": [
         {
           "name": "UUID",
@@ -7156,7 +7179,7 @@
       "meta-type": "object"
     },
     {
-      "name": "200",
+      "name": "201",
       "members": [
         {
           "name": "guid",
@@ -7166,7 +7189,7 @@
       "meta-type": "object"
     },
     {
-      "name": "201",
+      "name": "202",
       "members": [
         {
           "name": "enabled",
@@ -7180,7 +7203,7 @@
       "meta-type": "object"
     },
     {
-      "name": "202",
+      "name": "203",
       "members": [
         {
           "name": "val",
@@ -7203,7 +7226,7 @@
       "meta-type": "object"
     },
     {
-      "name": "203",
+      "name": "204",
       "members": [
         {
           "name": "val",
@@ -7221,12 +7244,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[204]",
-      "element-type": "204",
+      "name": "[205]",
+      "element-type": "205",
       "meta-type": "array"
     },
     {
-      "name": "204",
+      "name": "205",
       "members": [
         {
           "name": "id",
@@ -7264,18 +7287,18 @@
         },
         {
           "name": "policy",
-          "type": "505"
+          "type": "507"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[205]",
-      "element-type": "205",
+      "name": "[206]",
+      "element-type": "206",
       "meta-type": "array"
     },
     {
-      "name": "205",
+      "name": "206",
       "members": [
         {
           "name": "type",
@@ -7287,7 +7310,7 @@
         },
         {
           "name": "props",
-          "type": "501"
+          "type": "503"
         },
         {
           "name": "qom-path",
@@ -7298,40 +7321,40 @@
       "meta-type": "object"
     },
     {
-      "name": "206",
+      "name": "207",
       "tag": "type",
       "variants": [
         {
           "case": "node",
-          "type": "507"
+          "type": "509"
         },
         {
           "case": "dist",
-          "type": "508"
+          "type": "510"
         },
         {
           "case": "cpu",
-          "type": "509"
+          "type": "511"
         },
         {
           "case": "hmat-lb",
-          "type": "510"
+          "type": "512"
         },
         {
           "case": "hmat-cache",
-          "type": "511"
+          "type": "513"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "506"
+          "type": "508"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "207",
+      "name": "208",
       "members": [
         {
           "name": "value",
@@ -7341,7 +7364,7 @@
       "meta-type": "object"
     },
     {
-      "name": "208",
+      "name": "209",
       "members": [
         {
           "name": "actual",
@@ -7351,7 +7374,7 @@
       "meta-type": "object"
     },
     {
-      "name": "209",
+      "name": "210",
       "members": [
         {
           "name": "actual",
@@ -7361,7 +7384,7 @@
       "meta-type": "object"
     },
     {
-      "name": "210",
+      "name": "211",
       "members": [
         {
           "name": "committed",
@@ -7375,7 +7398,7 @@
       "meta-type": "object"
     },
     {
-      "name": "211",
+      "name": "212",
       "members": [
         {
           "name": "base-memory",
@@ -7390,49 +7413,49 @@
       "meta-type": "object"
     },
     {
-      "name": "[212]",
-      "element-type": "212",
+      "name": "[213]",
+      "element-type": "213",
       "meta-type": "array"
     },
     {
-      "name": "212",
+      "name": "213",
       "tag": "type",
       "variants": [
         {
           "case": "dimm",
-          "type": "513"
+          "type": "515"
         },
         {
           "case": "nvdimm",
-          "type": "513"
+          "type": "515"
         },
         {
           "case": "virtio-pmem",
-          "type": "514"
+          "type": "516"
         },
         {
           "case": "virtio-mem",
-          "type": "515"
+          "type": "517"
         },
         {
           "case": "sgx-epc",
-          "type": "516"
+          "type": "518"
         },
         {
           "case": "hv-balloon",
-          "type": "517"
+          "type": "519"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "512"
+          "type": "514"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "213",
+      "name": "214",
       "members": [
         {
           "name": "id",
@@ -7451,7 +7474,7 @@
       "meta-type": "object"
     },
     {
-      "name": "214",
+      "name": "215",
       "members": [
         {
           "name": "human-readable-text",
@@ -7461,7 +7484,7 @@
       "meta-type": "object"
     },
     {
-      "name": "215",
+      "name": "216",
       "members": [
         {
           "name": "filename",
@@ -7471,25 +7494,25 @@
       "meta-type": "object"
     },
     {
-      "name": "216",
+      "name": "217",
       "members": [
         {
           "name": "modela",
-          "type": "518"
+          "type": "520"
         },
         {
           "name": "modelb",
-          "type": "518"
+          "type": "520"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "217",
+      "name": "218",
       "members": [
         {
           "name": "result",
-          "type": "519"
+          "type": "521"
         },
         {
           "name": "responsible-properties",
@@ -7499,49 +7522,49 @@
       "meta-type": "object"
     },
     {
-      "name": "218",
+      "name": "219",
       "members": [
         {
           "name": "modela",
-          "type": "518"
+          "type": "520"
         },
         {
           "name": "modelb",
-          "type": "518"
+          "type": "520"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "219",
+      "name": "220",
       "members": [
         {
           "name": "model",
-          "type": "518"
+          "type": "520"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "220",
+      "name": "221",
       "members": [
         {
           "name": "type",
-          "type": "520"
+          "type": "522"
         },
         {
           "name": "model",
-          "type": "518"
+          "type": "520"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "221",
+      "name": "222",
       "members": [
         {
           "name": "model",
-          "type": "518"
+          "type": "520"
         },
         {
           "name": "deprecated-props",
@@ -7551,12 +7574,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[222]",
-      "element-type": "222",
+      "name": "[223]",
+      "element-type": "223",
       "meta-type": "array"
     },
     {
-      "name": "222",
+      "name": "223",
       "members": [
         {
           "name": "name",
@@ -7593,7 +7616,7 @@
       "meta-type": "object"
     },
     {
-      "name": "223",
+      "name": "224",
       "members": [
         {
           "name": "core-id",
@@ -7617,7 +7640,7 @@
         {
           "name": "entitlement",
           "default": null,
-          "type": "521"
+          "type": "523"
         },
         {
           "name": "dedicated",
@@ -7628,31 +7651,31 @@
       "meta-type": "object"
     },
     {
-      "name": "224",
+      "name": "225",
       "members": [
         {
           "name": "polarization",
-          "type": "522"
+          "type": "524"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "225",
+      "name": "226",
       "members": [
         {
           "name": "polarization",
-          "type": "522"
+          "type": "524"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "226",
+      "name": "227",
       "members": [
         {
           "name": "mode",
-          "type": "523"
+          "type": "525"
         },
         {
           "name": "filename",
@@ -7667,7 +7690,7 @@
       "meta-type": "object"
     },
     {
-      "name": "227",
+      "name": "228",
       "members": [
         {
           "name": "icount",
@@ -7677,7 +7700,7 @@
       "meta-type": "object"
     },
     {
-      "name": "228",
+      "name": "229",
       "members": [
         {
           "name": "icount",
@@ -7687,31 +7710,31 @@
       "meta-type": "object"
     },
     {
-      "name": "229",
+      "name": "230",
       "members": [
         {
           "name": "instances",
-          "type": "[230]"
+          "type": "[231]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[230]",
-      "element-type": "230",
+      "name": "[231]",
+      "element-type": "231",
       "meta-type": "array"
     },
     {
-      "name": "230",
+      "name": "231",
       "tag": "type",
       "variants": [
         {
           "case": "block-node",
-          "type": "525"
+          "type": "527"
         },
         {
           "case": "chardev",
-          "type": "526"
+          "type": "528"
         },
         {
           "case": "migration",
@@ -7721,13 +7744,13 @@
       "members": [
         {
           "name": "type",
-          "type": "524"
+          "type": "526"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "231",
+      "name": "232",
       "members": [
         {
           "name": "protocol",
@@ -7751,7 +7774,7 @@
       "meta-type": "object"
     },
     {
-      "name": "232",
+      "name": "233",
       "members": [
         {
           "name": "name",
@@ -7762,12 +7785,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[233]",
-      "element-type": "233",
+      "name": "[234]",
+      "element-type": "234",
       "meta-type": "array"
     },
     {
-      "name": "233",
+      "name": "234",
       "members": [
         {
           "name": "id",
@@ -7797,7 +7820,7 @@
       "meta-type": "object"
     },
     {
-      "name": "234",
+      "name": "235",
       "members": [
         {
           "name": "command-line",
@@ -7812,7 +7835,7 @@
       "meta-type": "object"
     },
     {
-      "name": "235",
+      "name": "236",
       "members": [
         {
           "name": "fdname",
@@ -7822,7 +7845,7 @@
       "meta-type": "object"
     },
     {
-      "name": "237",
+      "name": "238",
       "members": [
         {
           "name": "fdname",
@@ -7832,7 +7855,7 @@
       "meta-type": "object"
     },
     {
-      "name": "238",
+      "name": "239",
       "members": [
         {
           "name": "fdset-id",
@@ -7848,7 +7871,7 @@
       "meta-type": "object"
     },
     {
-      "name": "239",
+      "name": "240",
       "members": [
         {
           "name": "fdset-id",
@@ -7862,7 +7885,7 @@
       "meta-type": "object"
     },
     {
-      "name": "240",
+      "name": "241",
       "members": [
         {
           "name": "fdset-id",
@@ -7877,12 +7900,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[241]",
-      "element-type": "241",
+      "name": "[242]",
+      "element-type": "242",
       "meta-type": "array"
     },
     {
-      "name": "241",
+      "name": "242",
       "members": [
         {
           "name": "fdset-id",
@@ -7890,13 +7913,13 @@
         },
         {
           "name": "fds",
-          "type": "[527]"
+          "type": "[529]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "242",
+      "name": "243",
       "members": [
         {
           "name": "option",
@@ -7907,12 +7930,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[243]",
-      "element-type": "243",
+      "name": "[244]",
+      "element-type": "244",
       "meta-type": "array"
     },
     {
-      "name": "243",
+      "name": "244",
       "members": [
         {
           "name": "option",
@@ -7920,13 +7943,13 @@
         },
         {
           "name": "parameters",
-          "type": "[528]"
+          "type": "[530]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "244",
+      "name": "245",
       "members": [
         {
           "name": "offset",
@@ -7940,7 +7963,7 @@
       "meta-type": "object"
     },
     {
-      "name": "245",
+      "name": "246",
       "members": [
         {
           "name": "vfu-id",
@@ -7962,7 +7985,7 @@
       "meta-type": "object"
     },
     {
-      "name": "252",
+      "name": "253",
       "members": [
         {
           "name": "filename",
@@ -7972,49 +7995,49 @@
       "meta-type": "object"
     },
     {
-      "name": "[257]",
-      "element-type": "257",
+      "name": "[258]",
+      "element-type": "258",
       "meta-type": "array"
     },
     {
-      "name": "257",
+      "name": "258",
       "tag": "driver",
       "variants": [
         {
           "case": "none",
-          "type": "536"
+          "type": "538"
         },
         {
           "case": "alsa",
-          "type": "537"
+          "type": "539"
         },
         {
           "case": "dbus",
-          "type": "536"
+          "type": "538"
         },
         {
           "case": "jack",
-          "type": "540"
+          "type": "542"
         },
         {
           "case": "oss",
-          "type": "541"
+          "type": "543"
         },
         {
           "case": "pa",
-          "type": "542"
+          "type": "544"
         },
         {
           "case": "pipewire",
-          "type": "543"
+          "type": "545"
         },
         {
           "case": "sdl",
-          "type": "544"
+          "type": "546"
         },
         {
           "case": "wav",
-          "type": "546"
+          "type": "548"
         }
       ],
       "members": [
@@ -8024,7 +8047,7 @@
         },
         {
           "name": "driver",
-          "type": "535"
+          "type": "537"
         },
         {
           "name": "timer-period",
@@ -8035,12 +8058,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[258]",
-      "element-type": "258",
+      "name": "[259]",
+      "element-type": "259",
       "meta-type": "array"
     },
     {
-      "name": "258",
+      "name": "259",
       "members": [
         {
           "name": "device",
@@ -8053,7 +8076,7 @@
         },
         {
           "name": "slot-type",
-          "type": "547"
+          "type": "549"
         },
         {
           "name": "source",
@@ -8067,22 +8090,22 @@
       "meta-type": "object"
     },
     {
-      "name": "259",
+      "name": "260",
       "members": [
         {
           "name": "info",
-          "type": "258"
+          "type": "259"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[260]",
-      "element-type": "260",
+      "name": "[261]",
+      "element-type": "261",
       "meta-type": "array"
     },
     {
-      "name": "260",
+      "name": "261",
       "members": [
         {
           "name": "bus",
@@ -8090,18 +8113,18 @@
         },
         {
           "name": "devices",
-          "type": "[548]"
+          "type": "[550]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "261",
+      "name": "262",
       "tag": "target",
       "variants": [
         {
           "case": "vcpu",
-          "type": "551"
+          "type": "553"
         },
         {
           "case": "vm",
@@ -8115,27 +8138,27 @@
       "members": [
         {
           "name": "target",
-          "type": "549"
+          "type": "551"
         },
         {
           "name": "providers",
           "default": null,
-          "type": "[550]"
+          "type": "[552]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[262]",
-      "element-type": "262",
+      "name": "[263]",
+      "element-type": "263",
       "meta-type": "array"
     },
     {
-      "name": "262",
+      "name": "263",
       "members": [
         {
           "name": "provider",
-          "type": "552"
+          "type": "554"
         },
         {
           "name": "qom-path",
@@ -8144,52 +8167,52 @@
         },
         {
           "name": "stats",
-          "type": "[553]"
+          "type": "[555]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "263",
+      "name": "264",
       "members": [
         {
           "name": "provider",
           "default": null,
-          "type": "552"
+          "type": "554"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[264]",
-      "element-type": "264",
+      "name": "[265]",
+      "element-type": "265",
       "meta-type": "array"
     },
     {
-      "name": "264",
+      "name": "265",
       "members": [
         {
           "name": "provider",
-          "type": "552"
+          "type": "554"
         },
         {
           "name": "target",
-          "type": "549"
+          "type": "551"
         },
         {
           "name": "stats",
-          "type": "[554]"
+          "type": "[556]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[265]",
-      "element-type": "265",
+      "name": "[266]",
+      "element-type": "266",
       "meta-type": "array"
     },
     {
-      "name": "265",
+      "name": "266",
       "members": [
         {
           "name": "path",
@@ -8203,7 +8226,7 @@
       "meta-type": "object"
     },
     {
-      "name": "266",
+      "name": "267",
       "members": [
         {
           "name": "path",
@@ -8213,7 +8236,7 @@
       "meta-type": "object"
     },
     {
-      "name": "267",
+      "name": "268",
       "members": [
         {
           "name": "name",
@@ -8233,15 +8256,15 @@
         },
         {
           "name": "guest-features",
-          "type": "555"
+          "type": "557"
         },
         {
           "name": "host-features",
-          "type": "555"
+          "type": "557"
         },
         {
           "name": "backend-features",
-          "type": "555"
+          "type": "557"
         },
         {
           "name": "num-vqs",
@@ -8249,7 +8272,7 @@
         },
         {
           "name": "status",
-          "type": "556"
+          "type": "558"
         },
         {
           "name": "isr",
@@ -8298,13 +8321,13 @@
         {
           "name": "vhost-dev",
           "default": null,
-          "type": "557"
+          "type": "559"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "268",
+      "name": "269",
       "members": [
         {
           "name": "path",
@@ -8318,7 +8341,7 @@
       "meta-type": "object"
     },
     {
-      "name": "269",
+      "name": "270",
       "members": [
         {
           "name": "name",
@@ -8382,7 +8405,7 @@
       "meta-type": "object"
     },
     {
-      "name": "270",
+      "name": "271",
       "members": [
         {
           "name": "path",
@@ -8396,7 +8419,7 @@
       "meta-type": "object"
     },
     {
-      "name": "271",
+      "name": "272",
       "members": [
         {
           "name": "name",
@@ -8454,7 +8477,7 @@
       "meta-type": "object"
     },
     {
-      "name": "272",
+      "name": "273",
       "members": [
         {
           "name": "path",
@@ -8473,7 +8496,7 @@
       "meta-type": "object"
     },
     {
-      "name": "273",
+      "name": "274",
       "members": [
         {
           "name": "name",
@@ -8485,21 +8508,21 @@
         },
         {
           "name": "descs",
-          "type": "[558]"
+          "type": "[560]"
         },
         {
           "name": "avail",
-          "type": "559"
+          "type": "561"
         },
         {
           "name": "used",
-          "type": "560"
+          "type": "562"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "274",
+      "name": "275",
       "members": [
         {
           "name": "device-id",
@@ -8511,18 +8534,18 @@
         },
         {
           "name": "device-state",
-          "type": "561"
+          "type": "563"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[275]",
-      "element-type": "275",
+      "name": "[276]",
+      "element-type": "276",
       "meta-type": "array"
     },
     {
-      "name": "275",
+      "name": "276",
       "members": [
         {
           "name": "id",
@@ -8530,17 +8553,17 @@
         },
         {
           "name": "service",
-          "type": "[562]"
+          "type": "[564]"
         },
         {
           "name": "client",
-          "type": "[563]"
+          "type": "[565]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "276",
+      "name": "277",
       "members": [
         {
           "name": "path",
@@ -8548,7 +8571,7 @@
         },
         {
           "name": "log",
-          "type": "564"
+          "type": "566"
         },
         {
           "name": "flags",
@@ -8594,7 +8617,7 @@
       "meta-type": "object"
     },
     {
-      "name": "277",
+      "name": "278",
       "members": [
         {
           "name": "path",
@@ -8602,7 +8625,7 @@
         },
         {
           "name": "log",
-          "type": "564"
+          "type": "566"
         },
         {
           "name": "flags",
@@ -8668,7 +8691,7 @@
       "meta-type": "object"
     },
     {
-      "name": "278",
+      "name": "279",
       "members": [
         {
           "name": "path",
@@ -8676,7 +8699,7 @@
         },
         {
           "name": "log",
-          "type": "564"
+          "type": "566"
         },
         {
           "name": "flags",
@@ -8722,7 +8745,7 @@
       "meta-type": "object"
     },
     {
-      "name": "279",
+      "name": "280",
       "members": [
         {
           "name": "path",
@@ -8740,7 +8763,7 @@
       "meta-type": "object"
     },
     {
-      "name": "280",
+      "name": "281",
       "members": [
         {
           "name": "path",
@@ -8748,13 +8771,13 @@
         },
         {
           "name": "errors",
-          "type": "[565]"
+          "type": "[567]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "281",
+      "name": "282",
       "members": [
         {
           "name": "path",
@@ -8762,13 +8785,13 @@
         },
         {
           "name": "type",
-          "type": "566"
+          "type": "568"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "282",
+      "name": "283",
       "members": [
         {
           "name": "path",
@@ -8780,7 +8803,7 @@
         },
         {
           "name": "selection-policy",
-          "type": "567"
+          "type": "569"
         },
         {
           "name": "region",
@@ -8793,13 +8816,13 @@
         },
         {
           "name": "extents",
-          "type": "[568]"
+          "type": "[570]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "283",
+      "name": "284",
       "members": [
         {
           "name": "path",
@@ -8811,7 +8834,7 @@
         },
         {
           "name": "removal-policy",
-          "type": "569"
+          "type": "571"
         },
         {
           "name": "forced-removal",
@@ -8834,7 +8857,7 @@
         },
         {
           "name": "extents",
-          "type": "[568]"
+          "type": "[570]"
         }
       ],
       "meta-type": "object"
@@ -8845,7 +8868,7 @@
       "meta-type": "builtin"
     },
     {
-      "name": "284",
+      "name": "285",
       "members": [
         {
           "name": "debug"
@@ -8917,7 +8940,7 @@
       ]
     },
     {
-      "name": "285",
+      "name": "286",
       "members": [
         {
           "name": "none"
@@ -8969,7 +8992,7 @@
       ]
     },
     {
-      "name": "286",
+      "name": "287",
       "members": [
         {
           "name": "reset"
@@ -9005,7 +9028,7 @@
       ]
     },
     {
-      "name": "287",
+      "name": "288",
       "members": [
         {
           "name": "reset"
@@ -9021,7 +9044,7 @@
       ]
     },
     {
-      "name": "288",
+      "name": "289",
       "members": [
         {
           "name": "poweroff"
@@ -9037,7 +9060,7 @@
       ]
     },
     {
-      "name": "289",
+      "name": "290",
       "members": [
         {
           "name": "pause"
@@ -9061,7 +9084,7 @@
       ]
     },
     {
-      "name": "290",
+      "name": "291",
       "members": [
         {
           "name": "pause"
@@ -9081,28 +9104,28 @@
       ]
     },
     {
-      "name": "291",
+      "name": "292",
       "tag": "type",
       "variants": [
         {
           "case": "hyper-v",
-          "type": "571"
+          "type": "573"
         },
         {
           "case": "s390",
-          "type": "572"
+          "type": "574"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "570"
+          "type": "572"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "292",
+      "name": "293",
       "members": [
         {
           "name": "hypervisor"
@@ -9118,7 +9141,7 @@
       ]
     },
     {
-      "name": "293",
+      "name": "294",
       "members": [
         {
           "name": "ignore"
@@ -9142,7 +9165,7 @@
       ]
     },
     {
-      "name": "294",
+      "name": "295",
       "members": [
         {
           "name": "action-required",
@@ -9156,7 +9179,7 @@
       "meta-type": "object"
     },
     {
-      "name": "295",
+      "name": "296",
       "members": [
         {
           "name": "undefined"
@@ -9208,7 +9231,7 @@
       ]
     },
     {
-      "name": "296",
+      "name": "297",
       "members": [
         {
           "name": "commit"
@@ -9257,7 +9280,7 @@
       "meta-type": "builtin"
     },
     {
-      "name": "297",
+      "name": "298",
       "members": [
         {
           "name": "retain"
@@ -9282,7 +9305,7 @@
       "meta-type": "array"
     },
     {
-      "name": "298",
+      "name": "299",
       "members": [
         {
           "name": "ok"
@@ -9302,7 +9325,7 @@
       ]
     },
     {
-      "name": "299",
+      "name": "300",
       "members": [
         {
           "name": "rd_bytes",
@@ -9435,46 +9458,46 @@
         },
         {
           "name": "timed_stats",
-          "type": "[573]"
+          "type": "[575]"
         },
         {
           "name": "rd_latency_histogram",
           "default": null,
-          "type": "574"
+          "type": "576"
         },
         {
           "name": "wr_latency_histogram",
           "default": null,
-          "type": "574"
+          "type": "576"
         },
         {
           "name": "zone_append_latency_histogram",
           "default": null,
-          "type": "574"
+          "type": "576"
         },
         {
           "name": "flush_latency_histogram",
           "default": null,
-          "type": "574"
+          "type": "576"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "300",
+      "name": "301",
       "tag": "driver",
       "variants": [
         {
           "case": "file",
-          "type": "575"
+          "type": "577"
         },
         {
           "case": "host_device",
-          "type": "575"
+          "type": "577"
         },
         {
           "case": "nvme",
-          "type": "576"
+          "type": "578"
         },
         {
           "case": "blkdebug",
@@ -9656,13 +9679,13 @@
       "members": [
         {
           "name": "driver",
-          "type": "316"
+          "type": "317"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "301",
+      "name": "302",
       "members": [
         {
           "name": "actively-synced",
@@ -9672,7 +9695,7 @@
       "meta-type": "object"
     },
     {
-      "name": "302",
+      "name": "303",
       "members": [
         {
           "name": "existing"
@@ -9688,7 +9711,7 @@
       ]
     },
     {
-      "name": "303",
+      "name": "304",
       "members": [
         {
           "name": "report"
@@ -9716,7 +9739,7 @@
       ]
     },
     {
-      "name": "304",
+      "name": "305",
       "members": [
         {
           "name": "top"
@@ -9744,7 +9767,7 @@
       ]
     },
     {
-      "name": "305",
+      "name": "306",
       "members": [
         {
           "name": "on-success"
@@ -9764,7 +9787,7 @@
       ]
     },
     {
-      "name": "306",
+      "name": "307",
       "members": [
         {
           "name": "use-copy-range",
@@ -9790,7 +9813,7 @@
       "meta-type": "object"
     },
     {
-      "name": "307",
+      "name": "308",
       "members": [
         {
           "name": "off"
@@ -9810,7 +9833,7 @@
       ]
     },
     {
-      "name": "308",
+      "name": "309",
       "members": [
         {
           "name": "filename",
@@ -9872,18 +9895,18 @@
         {
           "name": "format-specific",
           "default": null,
-          "type": "577"
+          "type": "579"
         },
         {
           "name": "backing-image",
           "default": null,
-          "type": "308"
+          "type": "309"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "309",
+      "name": "310",
       "members": [
         {
           "name": "writeback",
@@ -9901,12 +9924,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[310]",
-      "element-type": "310",
+      "name": "[311]",
+      "element-type": "311",
       "meta-type": "array"
     },
     {
-      "name": "310",
+      "name": "311",
       "members": [
         {
           "name": "name",
@@ -9942,12 +9965,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[311]",
-      "element-type": "311",
+      "name": "[312]",
+      "element-type": "312",
       "meta-type": "array"
     },
     {
-      "name": "311",
+      "name": "312",
       "members": [
         {
           "name": "id",
@@ -9955,7 +9978,7 @@
         },
         {
           "name": "type",
-          "type": "578"
+          "type": "580"
         },
         {
           "name": "name",
@@ -9965,12 +9988,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[312]",
-      "element-type": "312",
+      "name": "[313]",
+      "element-type": "313",
       "meta-type": "array"
     },
     {
-      "name": "312",
+      "name": "313",
       "members": [
         {
           "name": "parent",
@@ -9986,17 +10009,17 @@
         },
         {
           "name": "perm",
-          "type": "[579]"
+          "type": "[581]"
         },
         {
           "name": "shared-perm",
-          "type": "[579]"
+          "type": "[581]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "313",
+      "name": "314",
       "members": [
         {
           "name": "background"
@@ -10012,12 +10035,12 @@
       ]
     },
     {
-      "name": "[314]",
-      "element-type": "314",
+      "name": "[315]",
+      "element-type": "315",
       "meta-type": "array"
     },
     {
-      "name": "314",
+      "name": "315",
       "members": [
         {
           "type": "str"
@@ -10029,17 +10052,17 @@
       "meta-type": "alternate"
     },
     {
-      "name": "315",
+      "name": "316",
       "members": [
         {
           "name": "copy-mode",
-          "type": "313"
+          "type": "314"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "316",
+      "name": "317",
       "members": [
         {
           "name": "blkdebug"
@@ -10238,7 +10261,7 @@
       ]
     },
     {
-      "name": "317",
+      "name": "318",
       "members": [
         {
           "name": "ignore"
@@ -10254,7 +10277,7 @@
       ]
     },
     {
-      "name": "318",
+      "name": "319",
       "members": [
         {
           "name": "direct",
@@ -10270,11 +10293,11 @@
       "meta-type": "object"
     },
     {
-      "name": "319",
+      "name": "320",
       "members": [
         {
           "name": "image",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "config",
@@ -10314,36 +10337,36 @@
         {
           "name": "inject-error",
           "default": null,
-          "type": "[581]"
+          "type": "[583]"
         },
         {
           "name": "set-state",
           "default": null,
-          "type": "[582]"
+          "type": "[584]"
         },
         {
           "name": "take-child-perms",
           "default": null,
-          "type": "[579]"
+          "type": "[581]"
         },
         {
           "name": "unshare-child-perms",
           "default": null,
-          "type": "[579]"
+          "type": "[581]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "320",
+      "name": "321",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "log",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "log-sector-size",
@@ -10364,49 +10387,49 @@
       "meta-type": "object"
     },
     {
-      "name": "321",
+      "name": "322",
       "members": [
         {
           "name": "test",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "raw",
-          "type": "580"
+          "type": "582"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "322",
+      "name": "323",
       "members": [
         {
           "name": "image",
-          "type": "580"
+          "type": "582"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "323",
+      "name": "324",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "324",
+      "name": "325",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "target",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "bitmap",
@@ -10416,7 +10439,7 @@
         {
           "name": "on-cbw-error",
           "default": null,
-          "type": "583"
+          "type": "585"
         },
         {
           "name": "cbw-timeout",
@@ -10432,11 +10455,11 @@
       "meta-type": "object"
     },
     {
-      "name": "325",
+      "name": "326",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "bottom",
@@ -10447,7 +10470,7 @@
       "meta-type": "object"
     },
     {
-      "name": "326",
+      "name": "327",
       "members": [
         {
           "name": "filename",
@@ -10461,12 +10484,12 @@
         {
           "name": "locking",
           "default": null,
-          "type": "584"
+          "type": "586"
         },
         {
           "name": "aio",
           "default": null,
-          "type": "585"
+          "type": "587"
         },
         {
           "name": "aio-max-batch",
@@ -10493,7 +10516,7 @@
       ]
     },
     {
-      "name": "327",
+      "name": "328",
       "members": [
         {
           "name": "url",
@@ -10533,7 +10556,7 @@
       "meta-type": "object"
     },
     {
-      "name": "328",
+      "name": "329",
       "members": [
         {
           "name": "url",
@@ -10578,7 +10601,7 @@
       "meta-type": "object"
     },
     {
-      "name": "329",
+      "name": "330",
       "members": [
         {
           "name": "volume",
@@ -10590,7 +10613,7 @@
         },
         {
           "name": "server",
-          "type": "[390]"
+          "type": "[391]"
         },
         {
           "name": "debug",
@@ -10606,7 +10629,7 @@
       "meta-type": "object"
     },
     {
-      "name": "330",
+      "name": "331",
       "members": [
         {
           "name": "url",
@@ -10656,7 +10679,7 @@
       "meta-type": "object"
     },
     {
-      "name": "331",
+      "name": "332",
       "members": [
         {
           "name": "url",
@@ -10711,7 +10734,7 @@
       "meta-type": "object"
     },
     {
-      "name": "332",
+      "name": "333",
       "members": [
         {
           "name": "filename",
@@ -10721,11 +10744,11 @@
       "meta-type": "object"
     },
     {
-      "name": "333",
+      "name": "334",
       "members": [
         {
           "name": "transport",
-          "type": "586"
+          "type": "588"
         },
         {
           "name": "portal",
@@ -10758,7 +10781,7 @@
         {
           "name": "header-digest",
           "default": null,
-          "type": "587"
+          "type": "589"
         },
         {
           "name": "timeout",
@@ -10769,11 +10792,11 @@
       "meta-type": "object"
     },
     {
-      "name": "334",
+      "name": "335",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "key-secret",
@@ -10783,17 +10806,17 @@
         {
           "name": "header",
           "default": null,
-          "type": "580"
+          "type": "582"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "335",
+      "name": "336",
       "members": [
         {
           "name": "server",
-          "type": "390"
+          "type": "391"
         },
         {
           "name": "export",
@@ -10832,11 +10855,11 @@
       "meta-type": "object"
     },
     {
-      "name": "336",
+      "name": "337",
       "members": [
         {
           "name": "server",
-          "type": "588"
+          "type": "590"
         },
         {
           "name": "path",
@@ -10876,7 +10899,7 @@
       "meta-type": "object"
     },
     {
-      "name": "337",
+      "name": "338",
       "members": [
         {
           "name": "size",
@@ -10897,7 +10920,7 @@
       "meta-type": "object"
     },
     {
-      "name": "338",
+      "name": "339",
       "members": [
         {
           "name": "device",
@@ -10911,7 +10934,7 @@
       "meta-type": "object"
     },
     {
-      "name": "339",
+      "name": "340",
       "members": [
         {
           "name": "path",
@@ -10921,11 +10944,11 @@
       "meta-type": "object"
     },
     {
-      "name": "340",
+      "name": "341",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "prealloc-align",
@@ -10941,16 +10964,16 @@
       "meta-type": "object"
     },
     {
-      "name": "341",
+      "name": "342",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "backing",
           "default": null,
-          "type": "589"
+          "type": "591"
         },
         {
           "name": "lazy-refcounts",
@@ -10980,7 +11003,7 @@
         {
           "name": "overlap-check",
           "default": null,
-          "type": "590"
+          "type": "592"
         },
         {
           "name": "cache-size",
@@ -11010,53 +11033,53 @@
         {
           "name": "encrypt",
           "default": null,
-          "type": "591"
+          "type": "593"
         },
         {
           "name": "data-file",
           "default": null,
-          "type": "580"
+          "type": "582"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "342",
+      "name": "343",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "backing",
           "default": null,
-          "type": "589"
+          "type": "591"
         },
         {
           "name": "encrypt",
           "default": null,
-          "type": "592"
+          "type": "594"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "343",
+      "name": "344",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "backing",
           "default": null,
-          "type": "589"
+          "type": "591"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "344",
+      "name": "345",
       "members": [
         {
           "name": "blkverify",
@@ -11065,7 +11088,7 @@
         },
         {
           "name": "children",
-          "type": "[580]"
+          "type": "[582]"
         },
         {
           "name": "vote-threshold",
@@ -11079,17 +11102,17 @@
         {
           "name": "read-pattern",
           "default": null,
-          "type": "593"
+          "type": "595"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "345",
+      "name": "346",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "offset",
@@ -11105,7 +11128,7 @@
       "meta-type": "object"
     },
     {
-      "name": "346",
+      "name": "347",
       "members": [
         {
           "name": "pool",
@@ -11133,7 +11156,7 @@
         {
           "name": "encrypt",
           "default": null,
-          "type": "594"
+          "type": "596"
         },
         {
           "name": "user",
@@ -11143,7 +11166,7 @@
         {
           "name": "auth-client-required",
           "default": null,
-          "type": "[595]"
+          "type": "[597]"
         },
         {
           "name": "key-secret",
@@ -11153,21 +11176,21 @@
         {
           "name": "server",
           "default": null,
-          "type": "[596]"
+          "type": "[598]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "347",
+      "name": "348",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "mode",
-          "type": "597"
+          "type": "599"
         },
         {
           "name": "top-id",
@@ -11178,11 +11201,11 @@
       "meta-type": "object"
     },
     {
-      "name": "348",
+      "name": "349",
       "members": [
         {
           "name": "server",
-          "type": "598"
+          "type": "600"
         },
         {
           "name": "path",
@@ -11196,13 +11219,13 @@
         {
           "name": "host-key-check",
           "default": null,
-          "type": "599"
+          "type": "601"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "349",
+      "name": "350",
       "members": [
         {
           "name": "throttle-group",
@@ -11210,13 +11233,13 @@
         },
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "350",
+      "name": "351",
       "members": [
         {
           "name": "path",
@@ -11226,7 +11249,7 @@
       "meta-type": "object"
     },
     {
-      "name": "351",
+      "name": "352",
       "members": [
         {
           "name": "path",
@@ -11236,7 +11259,7 @@
       "meta-type": "object"
     },
     {
-      "name": "352",
+      "name": "353",
       "members": [
         {
           "name": "path",
@@ -11249,7 +11272,7 @@
       ]
     },
     {
-      "name": "353",
+      "name": "354",
       "members": [
         {
           "name": "dir",
@@ -11284,64 +11307,64 @@
       "meta-type": "array"
     },
     {
-      "name": "354",
+      "name": "355",
       "tag": "driver",
       "variants": [
         {
           "case": "file",
-          "type": "600"
+          "type": "602"
         },
         {
           "case": "gluster",
-          "type": "601"
+          "type": "603"
         },
         {
           "case": "luks",
-          "type": "602"
+          "type": "604"
         },
         {
           "case": "nfs",
-          "type": "603"
+          "type": "605"
         },
         {
           "case": "parallels",
-          "type": "604"
+          "type": "606"
         },
         {
           "case": "qcow",
-          "type": "605"
+          "type": "607"
         },
         {
           "case": "qcow2",
-          "type": "606"
+          "type": "608"
         },
         {
           "case": "qed",
-          "type": "607"
+          "type": "609"
         },
         {
           "case": "rbd",
-          "type": "608"
+          "type": "610"
         },
         {
           "case": "ssh",
-          "type": "609"
+          "type": "611"
         },
         {
           "case": "vdi",
-          "type": "610"
+          "type": "612"
         },
         {
           "case": "vhdx",
-          "type": "611"
+          "type": "613"
         },
         {
           "case": "vmdk",
-          "type": "612"
+          "type": "614"
         },
         {
           "case": "vpc",
-          "type": "613"
+          "type": "615"
         },
         {
           "case": "blkdebug",
@@ -11479,22 +11502,22 @@
       "members": [
         {
           "name": "driver",
-          "type": "316"
+          "type": "317"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "355",
+      "name": "356",
       "tag": "driver",
       "variants": [
         {
           "case": "luks",
-          "type": "614"
+          "type": "616"
         },
         {
           "case": "qcow2",
-          "type": "615"
+          "type": "617"
         },
         {
           "case": "blkdebug",
@@ -11680,13 +11703,13 @@
       "members": [
         {
           "name": "driver",
-          "type": "316"
+          "type": "317"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "356",
+      "name": "357",
       "members": [
         {
           "name": "read"
@@ -11702,7 +11725,7 @@
       ]
     },
     {
-      "name": "357",
+      "name": "358",
       "members": [
         {
           "name": "ignore"
@@ -11722,7 +11745,7 @@
       ]
     },
     {
-      "name": "358",
+      "name": "359",
       "members": [
         {
           "type": "str"
@@ -11734,7 +11757,7 @@
       "meta-type": "alternate"
     },
     {
-      "name": "359",
+      "name": "360",
       "members": [
         {
           "name": "read"
@@ -11754,36 +11777,36 @@
       ]
     },
     {
-      "name": "360",
+      "name": "361",
       "tag": "type",
       "variants": [
         {
           "case": "inet",
-          "type": "617"
+          "type": "619"
         },
         {
           "case": "unix",
-          "type": "618"
+          "type": "620"
         },
         {
           "case": "vsock",
-          "type": "619"
+          "type": "621"
         },
         {
           "case": "fd",
-          "type": "620"
+          "type": "622"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "616"
+          "type": "618"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "361",
+      "name": "362",
       "members": [
         {
           "name": "safe"
@@ -11799,7 +11822,7 @@
       ]
     },
     {
-      "name": "362",
+      "name": "363",
       "members": [
         {
           "name": "nbd"
@@ -11823,7 +11846,7 @@
       ]
     },
     {
-      "name": "363",
+      "name": "364",
       "members": [
         {
           "name": "name",
@@ -11838,7 +11861,7 @@
         {
           "name": "bitmaps",
           "default": null,
-          "type": "[314]"
+          "type": "[315]"
         },
         {
           "name": "allocation-depth",
@@ -11849,11 +11872,11 @@
       "meta-type": "object"
     },
     {
-      "name": "364",
+      "name": "365",
       "members": [
         {
           "name": "addr",
-          "type": "390"
+          "type": "391"
         },
         {
           "name": "logical-block-size",
@@ -11869,7 +11892,7 @@
       "meta-type": "object"
     },
     {
-      "name": "365",
+      "name": "366",
       "members": [
         {
           "name": "mountpoint",
@@ -11883,13 +11906,13 @@
         {
           "name": "allow-other",
           "default": null,
-          "type": "621"
+          "type": "623"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "366",
+      "name": "367",
       "members": [
         {
           "name": "name",
@@ -11919,7 +11942,7 @@
       "meta-type": "object"
     },
     {
-      "name": "367",
+      "name": "368",
       "members": [
         {
           "name": "utf8"
@@ -11935,92 +11958,92 @@
       ]
     },
     {
-      "name": "368",
+      "name": "369",
       "tag": "type",
       "variants": [
         {
           "case": "file",
-          "type": "623"
+          "type": "625"
         },
         {
           "case": "serial",
-          "type": "624"
+          "type": "626"
         },
         {
           "case": "parallel",
-          "type": "624"
+          "type": "626"
         },
         {
           "case": "pipe",
-          "type": "624"
+          "type": "626"
         },
         {
           "case": "socket",
-          "type": "625"
+          "type": "627"
         },
         {
           "case": "udp",
-          "type": "626"
+          "type": "628"
         },
         {
           "case": "pty",
-          "type": "627"
+          "type": "629"
         },
         {
           "case": "null",
-          "type": "628"
+          "type": "630"
         },
         {
           "case": "mux",
-          "type": "629"
+          "type": "631"
         },
         {
           "case": "msmouse",
-          "type": "628"
+          "type": "630"
         },
         {
           "case": "wctablet",
-          "type": "628"
+          "type": "630"
         },
         {
           "case": "braille",
-          "type": "628"
+          "type": "630"
         },
         {
           "case": "testdev",
-          "type": "628"
+          "type": "630"
         },
         {
           "case": "stdio",
-          "type": "630"
+          "type": "632"
         },
         {
           "case": "dbus",
-          "type": "634"
+          "type": "636"
         },
         {
           "case": "vc",
-          "type": "635"
+          "type": "637"
         },
         {
           "case": "ringbuf",
-          "type": "636"
+          "type": "638"
         },
         {
           "case": "memory",
-          "type": "636"
+          "type": "638"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "622"
+          "type": "624"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "369",
+      "name": "370",
       "members": [
         {
           "name": "elf"
@@ -12060,7 +12083,7 @@
       ]
     },
     {
-      "name": "370",
+      "name": "371",
       "members": [
         {
           "name": "none"
@@ -12084,12 +12107,12 @@
       ]
     },
     {
-      "name": "[369]",
-      "element-type": "369",
+      "name": "[370]",
+      "element-type": "370",
       "meta-type": "array"
     },
     {
-      "name": "371",
+      "name": "372",
       "members": [
         {
           "name": "none"
@@ -12157,7 +12180,7 @@
       ]
     },
     {
-      "name": "372",
+      "name": "373",
       "members": [
         {
           "name": "netdev",
@@ -12188,7 +12211,7 @@
       "meta-type": "object"
     },
     {
-      "name": "373",
+      "name": "374",
       "members": [
         {
           "name": "hostname",
@@ -12248,7 +12271,7 @@
         {
           "name": "dnssearch",
           "default": null,
-          "type": "[637]"
+          "type": "[639]"
         },
         {
           "name": "domainname",
@@ -12288,12 +12311,12 @@
         {
           "name": "hostfwd",
           "default": null,
-          "type": "[637]"
+          "type": "[639]"
         },
         {
           "name": "guestfwd",
           "default": null,
-          "type": "[637]"
+          "type": "[639]"
         },
         {
           "name": "tftp-server-name",
@@ -12304,7 +12327,7 @@
       "meta-type": "object"
     },
     {
-      "name": "374",
+      "name": "375",
       "members": [
         {
           "name": "ifname",
@@ -12385,7 +12408,7 @@
       "meta-type": "object"
     },
     {
-      "name": "375",
+      "name": "376",
       "members": [
         {
           "name": "src",
@@ -12458,7 +12481,7 @@
       "meta-type": "object"
     },
     {
-      "name": "376",
+      "name": "377",
       "members": [
         {
           "name": "fd",
@@ -12494,11 +12517,11 @@
       "meta-type": "object"
     },
     {
-      "name": "377",
+      "name": "378",
       "members": [
         {
           "name": "addr",
-          "type": "390"
+          "type": "391"
         },
         {
           "name": "server",
@@ -12522,23 +12545,23 @@
       "meta-type": "object"
     },
     {
-      "name": "378",
+      "name": "379",
       "members": [
         {
           "name": "local",
           "default": null,
-          "type": "390"
+          "type": "391"
         },
         {
           "name": "remote",
           "default": null,
-          "type": "390"
+          "type": "391"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "379",
+      "name": "380",
       "members": [
         {
           "name": "sock",
@@ -12564,7 +12587,7 @@
       "meta-type": "object"
     },
     {
-      "name": "380",
+      "name": "381",
       "members": [
         {
           "name": "br",
@@ -12580,7 +12603,7 @@
       "meta-type": "object"
     },
     {
-      "name": "381",
+      "name": "382",
       "members": [
         {
           "name": "hubid",
@@ -12595,7 +12618,7 @@
       "meta-type": "object"
     },
     {
-      "name": "382",
+      "name": "383",
       "members": [
         {
           "name": "ifname",
@@ -12610,7 +12633,7 @@
       "meta-type": "object"
     },
     {
-      "name": "383",
+      "name": "384",
       "members": [
         {
           "name": "ifname",
@@ -12619,7 +12642,7 @@
         {
           "name": "mode",
           "default": null,
-          "type": "638"
+          "type": "640"
         },
         {
           "name": "force-copy",
@@ -12650,7 +12673,7 @@
       "meta-type": "object"
     },
     {
-      "name": "384",
+      "name": "385",
       "members": [
         {
           "name": "chardev",
@@ -12670,7 +12693,7 @@
       "meta-type": "object"
     },
     {
-      "name": "385",
+      "name": "386",
       "members": [
         {
           "name": "vhostdev",
@@ -12699,7 +12722,7 @@
       "meta-type": "object"
     },
     {
-      "name": "389",
+      "name": "390",
       "members": [
         {
           "name": "normal"
@@ -12724,36 +12747,36 @@
       "meta-type": "array"
     },
     {
-      "name": "390",
+      "name": "391",
       "tag": "type",
       "variants": [
         {
           "case": "inet",
-          "type": "598"
+          "type": "600"
         },
         {
           "case": "unix",
-          "type": "639"
+          "type": "641"
         },
         {
           "case": "vsock",
-          "type": "640"
+          "type": "642"
         },
         {
           "case": "fd",
-          "type": "641"
+          "type": "643"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "616"
+          "type": "618"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "391",
+      "name": "392",
       "members": [
         {
           "name": "rss"
@@ -12765,7 +12788,7 @@
       ]
     },
     {
-      "name": "392",
+      "name": "393",
       "members": [
         {
           "name": "half"
@@ -12781,7 +12804,7 @@
       ]
     },
     {
-      "name": "393",
+      "name": "394",
       "members": [
         {
           "name": "off"
@@ -12797,7 +12820,7 @@
       ]
     },
     {
-      "name": "394",
+      "name": "395",
       "members": [
         {
           "name": "priority",
@@ -12856,7 +12879,7 @@
       "meta-type": "object"
     },
     {
-      "name": "395",
+      "name": "396",
       "members": [
         {
           "name": "in-pport",
@@ -12897,7 +12920,7 @@
       "meta-type": "object"
     },
     {
-      "name": "396",
+      "name": "397",
       "members": [
         {
           "name": "goto-tbl",
@@ -12933,16 +12956,16 @@
       "meta-type": "object"
     },
     {
-      "name": "397",
+      "name": "398",
       "tag": "type",
       "variants": [
         {
           "case": "passthrough",
-          "type": "642"
+          "type": "644"
         },
         {
           "case": "emulator",
-          "type": "643"
+          "type": "645"
         }
       ],
       "members": [
@@ -12954,7 +12977,7 @@
       "meta-type": "object"
     },
     {
-      "name": "398",
+      "name": "399",
       "members": [
         {
           "name": "vnc"
@@ -12970,7 +12993,7 @@
       ]
     },
     {
-      "name": "399",
+      "name": "400",
       "members": [
         {
           "name": "keep"
@@ -12990,7 +13013,7 @@
       ]
     },
     {
-      "name": "400",
+      "name": "401",
       "members": [
         {
           "name": "display",
@@ -13001,7 +13024,7 @@
       "meta-type": "object"
     },
     {
-      "name": "401",
+      "name": "402",
       "members": [
         {
           "name": "display",
@@ -13012,7 +13035,7 @@
       "meta-type": "object"
     },
     {
-      "name": "402",
+      "name": "403",
       "members": [
         {
           "name": "ppm"
@@ -13028,7 +13051,7 @@
       ]
     },
     {
-      "name": "407",
+      "name": "408",
       "members": [
         {
           "name": "ipv4"
@@ -13056,12 +13079,12 @@
       ]
     },
     {
-      "name": "[408]",
-      "element-type": "408",
+      "name": "[409]",
+      "element-type": "409",
       "meta-type": "array"
     },
     {
-      "name": "408",
+      "name": "409",
       "members": [
         {
           "name": "host",
@@ -13073,7 +13096,7 @@
         },
         {
           "name": "family",
-          "type": "407"
+          "type": "408"
         },
         {
           "name": "websocket",
@@ -13093,12 +13116,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[409]",
-      "element-type": "409",
+      "name": "[410]",
+      "element-type": "410",
       "meta-type": "array"
     },
     {
-      "name": "409",
+      "name": "410",
       "members": [
         {
           "name": "host",
@@ -13110,7 +13133,7 @@
         },
         {
           "name": "family",
-          "type": "407"
+          "type": "408"
         },
         {
           "name": "websocket",
@@ -13118,18 +13141,18 @@
         },
         {
           "name": "auth",
-          "type": "410"
+          "type": "411"
         },
         {
           "name": "vencrypt",
           "default": null,
-          "type": "411"
+          "type": "412"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "410",
+      "name": "411",
       "members": [
         {
           "name": "none"
@@ -13173,7 +13196,7 @@
       ]
     },
     {
-      "name": "411",
+      "name": "412",
       "members": [
         {
           "name": "plain"
@@ -13217,7 +13240,7 @@
       ]
     },
     {
-      "name": "412",
+      "name": "413",
       "members": [
         {
           "name": "host",
@@ -13229,7 +13252,7 @@
         },
         {
           "name": "family",
-          "type": "407"
+          "type": "408"
         },
         {
           "name": "websocket",
@@ -13244,7 +13267,7 @@
       "meta-type": "object"
     },
     {
-      "name": "413",
+      "name": "414",
       "members": [
         {
           "name": "host",
@@ -13256,7 +13279,7 @@
         },
         {
           "name": "family",
-          "type": "407"
+          "type": "408"
         },
         {
           "name": "websocket",
@@ -13266,71 +13289,71 @@
       "meta-type": "object"
     },
     {
-      "name": "[414]",
-      "element-type": "414",
+      "name": "[415]",
+      "element-type": "415",
       "meta-type": "array"
     },
     {
-      "name": "414",
+      "name": "415",
       "tag": "type",
       "variants": [
         {
           "case": "number",
-          "type": "645"
+          "type": "647"
         },
         {
           "case": "qcode",
-          "type": "646"
+          "type": "648"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "644"
+          "type": "646"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[415]",
-      "element-type": "415",
+      "name": "[416]",
+      "element-type": "416",
       "meta-type": "array"
     },
     {
-      "name": "415",
+      "name": "416",
       "tag": "type",
       "variants": [
         {
           "case": "key",
-          "type": "648"
+          "type": "650"
         },
         {
           "case": "btn",
-          "type": "649"
+          "type": "651"
         },
         {
           "case": "rel",
-          "type": "650"
+          "type": "652"
         },
         {
           "case": "abs",
-          "type": "650"
+          "type": "652"
         },
         {
           "case": "mtt",
-          "type": "651"
+          "type": "653"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "647"
+          "type": "649"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "416",
+      "name": "417",
       "members": [
         {
           "name": "default"
@@ -13366,7 +13389,7 @@
       ]
     },
     {
-      "name": "417",
+      "name": "418",
       "members": [
         {
           "name": "off"
@@ -13390,7 +13413,7 @@
       ]
     },
     {
-      "name": "418",
+      "name": "419",
       "members": [
         {
           "name": "grab-on-hover",
@@ -13416,7 +13439,7 @@
       "meta-type": "object"
     },
     {
-      "name": "419",
+      "name": "420",
       "members": [
         {
           "name": "left-command-key",
@@ -13447,7 +13470,7 @@
       "meta-type": "object"
     },
     {
-      "name": "420",
+      "name": "421",
       "members": [
         {
           "name": "charset",
@@ -13458,7 +13481,7 @@
       "meta-type": "object"
     },
     {
-      "name": "421",
+      "name": "422",
       "members": [
         {
           "name": "rendernode",
@@ -13469,7 +13492,7 @@
       "meta-type": "object"
     },
     {
-      "name": "422",
+      "name": "423",
       "members": [
         {
           "name": "rendernode",
@@ -13495,18 +13518,18 @@
       "meta-type": "object"
     },
     {
-      "name": "423",
+      "name": "424",
       "members": [
         {
           "name": "grab-mod",
           "default": null,
-          "type": "652"
+          "type": "654"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "424",
+      "name": "425",
       "members": [
         {
           "name": "vnc"
@@ -13518,7 +13541,7 @@
       ]
     },
     {
-      "name": "425",
+      "name": "426",
       "members": [
         {
           "name": "tls-certs",
@@ -13529,7 +13552,7 @@
       "meta-type": "object"
     },
     {
-      "name": "426",
+      "name": "427",
       "members": [
         {
           "name": "vnc"
@@ -13541,18 +13564,18 @@
       ]
     },
     {
-      "name": "427",
+      "name": "428",
       "members": [
         {
           "name": "addresses",
           "default": null,
-          "type": "[390]"
+          "type": "[391]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "428",
+      "name": "429",
       "members": [
         {
           "name": "none"
@@ -13620,7 +13643,7 @@
       ]
     },
     {
-      "name": "429",
+      "name": "430",
       "members": [
         {
           "name": "transferred",
@@ -13694,7 +13717,7 @@
       "meta-type": "object"
     },
     {
-      "name": "430",
+      "name": "431",
       "members": [
         {
           "name": "transferred",
@@ -13704,7 +13727,7 @@
       "meta-type": "object"
     },
     {
-      "name": "431",
+      "name": "432",
       "members": [
         {
           "name": "cache-size",
@@ -13738,12 +13761,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[390]",
-      "element-type": "390",
+      "name": "[391]",
+      "element-type": "391",
       "meta-type": "array"
     },
     {
-      "name": "432",
+      "name": "433",
       "members": [
         {
           "name": "xbzrle"
@@ -13848,7 +13871,7 @@
       ]
     },
     {
-      "name": "433",
+      "name": "434",
       "members": [
         {
           "name": "none"
@@ -13868,12 +13891,12 @@
       ]
     },
     {
-      "name": "[434]",
-      "element-type": "434",
+      "name": "[435]",
+      "element-type": "435",
       "meta-type": "array"
     },
     {
-      "name": "434",
+      "name": "435",
       "members": [
         {
           "name": "node-name",
@@ -13885,13 +13908,13 @@
         },
         {
           "name": "bitmaps",
-          "type": "[653]"
+          "type": "[655]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "435",
+      "name": "436",
       "members": [
         {
           "name": "normal"
@@ -13907,7 +13930,7 @@
       ]
     },
     {
-      "name": "436",
+      "name": "437",
       "members": [
         {
           "name": "none"
@@ -13927,7 +13950,7 @@
       ]
     },
     {
-      "name": "437",
+      "name": "438",
       "members": [
         {
           "name": "none"
@@ -13947,7 +13970,7 @@
       ]
     },
     {
-      "name": "438",
+      "name": "439",
       "members": [
         {
           "name": "none"
@@ -13971,26 +13994,26 @@
       ]
     },
     {
-      "name": "[439]",
-      "element-type": "439",
+      "name": "[440]",
+      "element-type": "440",
       "meta-type": "array"
     },
     {
-      "name": "439",
+      "name": "440",
       "members": [
         {
           "name": "channel-type",
-          "type": "654"
+          "type": "656"
         },
         {
           "name": "addr",
-          "type": "655"
+          "type": "657"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "440",
+      "name": "441",
       "members": [
         {
           "name": "second"
@@ -14006,7 +14029,7 @@
       ]
     },
     {
-      "name": "441",
+      "name": "442",
       "members": [
         {
           "name": "page-sampling"
@@ -14026,7 +14049,7 @@
       ]
     },
     {
-      "name": "442",
+      "name": "443",
       "members": [
         {
           "name": "unstarted"
@@ -14046,12 +14069,12 @@
       ]
     },
     {
-      "name": "[443]",
-      "element-type": "443",
+      "name": "[444]",
+      "element-type": "444",
       "meta-type": "array"
     },
     {
-      "name": "443",
+      "name": "444",
       "members": [
         {
           "name": "id",
@@ -14065,84 +14088,84 @@
       "meta-type": "object"
     },
     {
-      "name": "[444]",
-      "element-type": "444",
+      "name": "[445]",
+      "element-type": "445",
       "meta-type": "array"
     },
     {
-      "name": "444",
+      "name": "445",
       "tag": "type",
       "variants": [
         {
           "case": "abort",
-          "type": "657"
+          "type": "659"
         },
         {
           "case": "block-dirty-bitmap-add",
-          "type": "658"
+          "type": "660"
         },
         {
           "case": "block-dirty-bitmap-remove",
-          "type": "659"
+          "type": "661"
         },
         {
           "case": "block-dirty-bitmap-clear",
-          "type": "659"
+          "type": "661"
         },
         {
           "case": "block-dirty-bitmap-enable",
-          "type": "659"
+          "type": "661"
         },
         {
           "case": "block-dirty-bitmap-disable",
-          "type": "659"
+          "type": "661"
         },
         {
           "case": "block-dirty-bitmap-merge",
-          "type": "660"
+          "type": "662"
         },
         {
           "case": "blockdev-backup",
-          "type": "661"
+          "type": "663"
         },
         {
           "case": "blockdev-snapshot",
-          "type": "662"
+          "type": "664"
         },
         {
           "case": "blockdev-snapshot-internal-sync",
-          "type": "663"
+          "type": "665"
         },
         {
           "case": "blockdev-snapshot-sync",
-          "type": "664"
+          "type": "666"
         },
         {
           "case": "drive-backup",
-          "type": "665"
+          "type": "667"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "656"
+          "type": "658"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "445",
+      "name": "446",
       "members": [
         {
           "name": "completion-mode",
           "default": null,
-          "type": "666"
+          "type": "668"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "446",
+      "name": "447",
       "members": [
         {
           "name": "unavailable"
@@ -14162,12 +14185,12 @@
       ]
     },
     {
-      "name": "[447]",
-      "element-type": "447",
+      "name": "[448]",
+      "element-type": "448",
       "meta-type": "array"
     },
     {
-      "name": "447",
+      "name": "448",
       "members": [
         {
           "name": "oob"
@@ -14179,7 +14202,7 @@
       ]
     },
     {
-      "name": "448",
+      "name": "449",
       "members": [
         {
           "name": "major",
@@ -14197,7 +14220,7 @@
       "meta-type": "object"
     },
     {
-      "name": "449",
+      "name": "450",
       "members": [
         {
           "name": "builtin"
@@ -14233,21 +14256,21 @@
       ]
     },
     {
-      "name": "450",
+      "name": "451",
       "members": [
         {
           "name": "json-type",
-          "type": "667"
+          "type": "669"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "451",
+      "name": "452",
       "members": [
         {
           "name": "members",
-          "type": "[668]"
+          "type": "[670]"
         },
         {
           "name": "values",
@@ -14260,7 +14283,7 @@
       "meta-type": "object"
     },
     {
-      "name": "452",
+      "name": "453",
       "members": [
         {
           "name": "element-type",
@@ -14270,11 +14293,11 @@
       "meta-type": "object"
     },
     {
-      "name": "453",
+      "name": "454",
       "members": [
         {
           "name": "members",
-          "type": "[669]"
+          "type": "[671]"
         },
         {
           "name": "tag",
@@ -14284,23 +14307,23 @@
         {
           "name": "variants",
           "default": null,
-          "type": "[670]"
+          "type": "[672]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "454",
+      "name": "455",
       "members": [
         {
           "name": "members",
-          "type": "[671]"
+          "type": "[673]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "455",
+      "name": "456",
       "members": [
         {
           "name": "arg-type",
@@ -14319,7 +14342,7 @@
       "meta-type": "object"
     },
     {
-      "name": "456",
+      "name": "457",
       "members": [
         {
           "name": "arg-type",
@@ -14329,11 +14352,14 @@
       "meta-type": "object"
     },
     {
-      "name": "457",
+      "name": "458",
       "members": [
         {
           "name": "acpi-generic-initiator"
         },
+        {
+          "name": "acpi-generic-port"
+        },
         {
           "name": "authz-list"
         },
@@ -14485,6 +14511,7 @@
       "meta-type": "enum",
       "values": [
         "acpi-generic-initiator",
+        "acpi-generic-port",
         "authz-list",
         "authz-listfile",
         "authz-pam",
@@ -14535,7 +14562,7 @@
       ]
     },
     {
-      "name": "458",
+      "name": "459",
       "members": [
         {
           "name": "pci-dev",
@@ -14549,23 +14576,37 @@
       "meta-type": "object"
     },
     {
-      "name": "459",
+      "name": "460",
+      "members": [
+        {
+          "name": "pci-bus",
+          "type": "str"
+        },
+        {
+          "name": "node",
+          "type": "int"
+        }
+      ],
+      "meta-type": "object"
+    },
+    {
+      "name": "461",
       "members": [
         {
           "name": "policy",
           "default": null,
-          "type": "672"
+          "type": "674"
         },
         {
           "name": "rules",
           "default": null,
-          "type": "[673]"
+          "type": "[675]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "460",
+      "name": "462",
       "members": [
         {
           "name": "filename",
@@ -14580,7 +14621,7 @@
       "meta-type": "object"
     },
     {
-      "name": "461",
+      "name": "463",
       "members": [
         {
           "name": "service",
@@ -14590,7 +14631,7 @@
       "meta-type": "object"
     },
     {
-      "name": "462",
+      "name": "464",
       "members": [
         {
           "name": "identity",
@@ -14600,7 +14641,7 @@
       "meta-type": "object"
     },
     {
-      "name": "463",
+      "name": "465",
       "members": [
         {
           "name": "if",
@@ -14614,7 +14655,7 @@
       "meta-type": "object"
     },
     {
-      "name": "464",
+      "name": "466",
       "members": [
         {
           "name": "primary_in",
@@ -14661,7 +14702,7 @@
       "meta-type": "object"
     },
     {
-      "name": "465",
+      "name": "467",
       "members": [
         {
           "name": "queues",
@@ -14682,7 +14723,7 @@
       "meta-type": "object"
     },
     {
-      "name": "466",
+      "name": "468",
       "members": [
         {
           "name": "queues",
@@ -14707,7 +14748,7 @@
       "meta-type": "object"
     },
     {
-      "name": "467",
+      "name": "469",
       "members": [
         {
           "name": "addr",
@@ -14722,7 +14763,7 @@
       "meta-type": "object"
     },
     {
-      "name": "468",
+      "name": "470",
       "members": [
         {
           "name": "netdev",
@@ -14731,7 +14772,7 @@
         {
           "name": "queue",
           "default": null,
-          "type": "674"
+          "type": "676"
         },
         {
           "name": "status",
@@ -14746,7 +14787,7 @@
         {
           "name": "insert",
           "default": null,
-          "type": "675"
+          "type": "677"
         },
         {
           "name": "interval",
@@ -14756,7 +14797,7 @@
       "meta-type": "object"
     },
     {
-      "name": "469",
+      "name": "471",
       "members": [
         {
           "name": "netdev",
@@ -14765,7 +14806,7 @@
         {
           "name": "queue",
           "default": null,
-          "type": "674"
+          "type": "676"
         },
         {
           "name": "status",
@@ -14780,7 +14821,7 @@
         {
           "name": "insert",
           "default": null,
-          "type": "675"
+          "type": "677"
         },
         {
           "name": "file",
@@ -14795,7 +14836,7 @@
       "meta-type": "object"
     },
     {
-      "name": "470",
+      "name": "472",
       "members": [
         {
           "name": "netdev",
@@ -14804,7 +14845,7 @@
         {
           "name": "queue",
           "default": null,
-          "type": "674"
+          "type": "676"
         },
         {
           "name": "status",
@@ -14819,7 +14860,7 @@
         {
           "name": "insert",
           "default": null,
-          "type": "675"
+          "type": "677"
         },
         {
           "name": "outdev",
@@ -14834,7 +14875,7 @@
       "meta-type": "object"
     },
     {
-      "name": "471",
+      "name": "473",
       "members": [
         {
           "name": "netdev",
@@ -14843,7 +14884,7 @@
         {
           "name": "queue",
           "default": null,
-          "type": "674"
+          "type": "676"
         },
         {
           "name": "status",
@@ -14858,7 +14899,7 @@
         {
           "name": "insert",
           "default": null,
-          "type": "675"
+          "type": "677"
         },
         {
           "name": "indev",
@@ -14879,7 +14920,7 @@
       "meta-type": "object"
     },
     {
-      "name": "472",
+      "name": "474",
       "members": [
         {
           "name": "netdev",
@@ -14888,7 +14929,7 @@
         {
           "name": "queue",
           "default": null,
-          "type": "674"
+          "type": "676"
         },
         {
           "name": "status",
@@ -14903,13 +14944,13 @@
         {
           "name": "insert",
           "default": null,
-          "type": "675"
+          "type": "677"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "473",
+      "name": "475",
       "members": [
         {
           "name": "netdev",
@@ -14918,7 +14959,7 @@
         {
           "name": "queue",
           "default": null,
-          "type": "674"
+          "type": "676"
         },
         {
           "name": "status",
@@ -14933,7 +14974,7 @@
         {
           "name": "insert",
           "default": null,
-          "type": "675"
+          "type": "677"
         },
         {
           "name": "vnet_hdr_support",
@@ -14944,7 +14985,7 @@
       "meta-type": "object"
     },
     {
-      "name": "474",
+      "name": "476",
       "members": [
         {
           "name": "name",
@@ -14984,7 +15025,7 @@
       "meta-type": "object"
     },
     {
-      "name": "475",
+      "name": "477",
       "members": [
         {
           "name": "evdev",
@@ -15003,13 +15044,13 @@
         {
           "name": "grab-toggle",
           "default": null,
-          "type": "676"
+          "type": "678"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "476",
+      "name": "478",
       "members": [
         {
           "name": "fd",
@@ -15020,7 +15061,7 @@
       "meta-type": "object"
     },
     {
-      "name": "477",
+      "name": "479",
       "members": [
         {
           "name": "aio-max-batch",
@@ -15056,7 +15097,7 @@
       "meta-type": "object"
     },
     {
-      "name": "478",
+      "name": "480",
       "members": [
         {
           "name": "aio-max-batch",
@@ -15077,7 +15118,7 @@
       "meta-type": "object"
     },
     {
-      "name": "479",
+      "name": "481",
       "members": [
         {
           "name": "dump",
@@ -15097,7 +15138,7 @@
         {
           "name": "policy",
           "default": null,
-          "type": "505"
+          "type": "507"
         },
         {
           "name": "prealloc",
@@ -15137,7 +15178,7 @@
       "meta-type": "object"
     },
     {
-      "name": "480",
+      "name": "482",
       "members": [
         {
           "name": "dump",
@@ -15157,7 +15198,7 @@
         {
           "name": "policy",
           "default": null,
-          "type": "505"
+          "type": "507"
         },
         {
           "name": "prealloc",
@@ -15220,13 +15261,13 @@
         {
           "name": "rom",
           "default": null,
-          "type": "584"
+          "type": "586"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "481",
+      "name": "483",
       "members": [
         {
           "name": "dump",
@@ -15246,7 +15287,7 @@
         {
           "name": "policy",
           "default": null,
-          "type": "505"
+          "type": "507"
         },
         {
           "name": "prealloc",
@@ -15301,7 +15342,7 @@
       "meta-type": "object"
     },
     {
-      "name": "482",
+      "name": "484",
       "members": [
         {
           "name": "dump",
@@ -15321,7 +15362,7 @@
         {
           "name": "policy",
           "default": null,
-          "type": "505"
+          "type": "507"
         },
         {
           "name": "prealloc",
@@ -15361,7 +15402,7 @@
       "meta-type": "object"
     },
     {
-      "name": "483",
+      "name": "485",
       "members": [
         {
           "name": "dump",
@@ -15381,7 +15422,7 @@
         {
           "name": "policy",
           "default": null,
-          "type": "505"
+          "type": "507"
         },
         {
           "name": "prealloc",
@@ -15421,7 +15462,7 @@
       "meta-type": "object"
     },
     {
-      "name": "484",
+      "name": "486",
       "members": [
         {
           "name": "path",
@@ -15431,7 +15472,7 @@
       "meta-type": "object"
     },
     {
-      "name": "485",
+      "name": "487",
       "members": [
         {
           "name": "chardev",
@@ -15446,7 +15487,7 @@
       "meta-type": "object"
     },
     {
-      "name": "486",
+      "name": "488",
       "members": [
         {
           "name": "opened",
@@ -15460,7 +15501,7 @@
       "meta-type": "object"
     },
     {
-      "name": "487",
+      "name": "489",
       "members": [
         {
           "name": "opened",
@@ -15478,7 +15519,7 @@
       "meta-type": "object"
     },
     {
-      "name": "488",
+      "name": "490",
       "members": [
         {
           "name": "opened",
@@ -15497,20 +15538,12 @@
       "meta-type": "object"
     },
     {
-      "name": "489",
+      "name": "491",
       "members": [
-        {
-          "name": "loaded",
-          "default": null,
-          "type": "bool",
-          "features": [
-            "deprecated"
-          ]
-        },
         {
           "name": "format",
           "default": null,
-          "type": "677"
+          "type": "679"
         },
         {
           "name": "keyid",
@@ -15536,20 +15569,12 @@
       "meta-type": "object"
     },
     {
-      "name": "490",
+      "name": "492",
       "members": [
-        {
-          "name": "loaded",
-          "default": null,
-          "type": "bool",
-          "features": [
-            "deprecated"
-          ]
-        },
         {
           "name": "format",
           "default": null,
-          "type": "677"
+          "type": "679"
         },
         {
           "name": "keyid",
@@ -15569,7 +15594,7 @@
       "meta-type": "object"
     },
     {
-      "name": "491",
+      "name": "493",
       "members": [
         {
           "name": "sev-device",
@@ -15613,13 +15638,13 @@
         {
           "name": "legacy-vm-type",
           "default": null,
-          "type": "584"
+          "type": "586"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "492",
+      "name": "494",
       "members": [
         {
           "name": "sev-device",
@@ -15679,7 +15704,7 @@
       "meta-type": "object"
     },
     {
-      "name": "493",
+      "name": "495",
       "members": [
         {
           "name": "cpu-affinity",
@@ -15695,12 +15720,12 @@
       "meta-type": "object"
     },
     {
-      "name": "494",
+      "name": "496",
       "members": [
         {
           "name": "limits",
           "default": null,
-          "type": "678"
+          "type": "680"
         },
         {
           "name": "x-iops-total",
@@ -15858,7 +15883,7 @@
       "meta-type": "object"
     },
     {
-      "name": "495",
+      "name": "497",
       "members": [
         {
           "name": "verify-peer",
@@ -15873,26 +15898,18 @@
         {
           "name": "endpoint",
           "default": null,
-          "type": "679"
+          "type": "681"
         },
         {
           "name": "priority",
           "default": null,
           "type": "str"
-        },
-        {
-          "name": "loaded",
-          "default": null,
-          "type": "bool",
-          "features": [
-            "deprecated"
-          ]
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "496",
+      "name": "498",
       "members": [
         {
           "name": "verify-peer",
@@ -15907,21 +15924,13 @@
         {
           "name": "endpoint",
           "default": null,
-          "type": "679"
+          "type": "681"
         },
         {
           "name": "priority",
           "default": null,
           "type": "str"
         },
-        {
-          "name": "loaded",
-          "default": null,
-          "type": "bool",
-          "features": [
-            "deprecated"
-          ]
-        },
         {
           "name": "username",
           "default": null,
@@ -15931,7 +15940,7 @@
       "meta-type": "object"
     },
     {
-      "name": "497",
+      "name": "499",
       "members": [
         {
           "name": "verify-peer",
@@ -15946,21 +15955,13 @@
         {
           "name": "endpoint",
           "default": null,
-          "type": "679"
+          "type": "681"
         },
         {
           "name": "priority",
           "default": null,
           "type": "str"
         },
-        {
-          "name": "loaded",
-          "default": null,
-          "type": "bool",
-          "features": [
-            "deprecated"
-          ]
-        },
         {
           "name": "sanity-check",
           "default": null,
@@ -15975,7 +15976,7 @@
       "meta-type": "object"
     },
     {
-      "name": "498",
+      "name": "500",
       "members": [
         {
           "name": "verify-peer",
@@ -15990,7 +15991,7 @@
         {
           "name": "endpoint",
           "default": null,
-          "type": "679"
+          "type": "681"
         },
         {
           "name": "priority",
@@ -16001,7 +16002,7 @@
       "meta-type": "object"
     },
     {
-      "name": "499",
+      "name": "501",
       "members": [
         {
           "name": "fd",
@@ -16015,11 +16016,11 @@
       "meta-type": "object"
     },
     {
-      "name": "500",
+      "name": "502",
       "members": [
         {
           "name": "socket",
-          "type": "390"
+          "type": "391"
         },
         {
           "name": "device",
@@ -16029,7 +16030,7 @@
       "meta-type": "object"
     },
     {
-      "name": "501",
+      "name": "503",
       "members": [
         {
           "name": "node-id",
@@ -16080,7 +16081,7 @@
       "meta-type": "object"
     },
     {
-      "name": "502",
+      "name": "504",
       "members": [
         {
           "name": "aarch64"
@@ -16204,11 +16205,11 @@
       ]
     },
     {
-      "name": "503",
+      "name": "505",
       "members": [
         {
           "name": "cpu-state",
-          "type": "680"
+          "type": "682"
         },
         {
           "name": "dedicated",
@@ -16218,18 +16219,18 @@
         {
           "name": "entitlement",
           "default": null,
-          "type": "521"
+          "type": "523"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[504]",
-      "element-type": "504",
+      "name": "[506]",
+      "element-type": "506",
       "meta-type": "array"
     },
     {
-      "name": "504",
+      "name": "506",
       "members": [
         {
           "name": "qom-type",
@@ -16247,7 +16248,7 @@
       "meta-type": "object"
     },
     {
-      "name": "505",
+      "name": "507",
       "members": [
         {
           "name": "default"
@@ -16271,7 +16272,7 @@
       ]
     },
     {
-      "name": "506",
+      "name": "508",
       "members": [
         {
           "name": "node"
@@ -16299,7 +16300,7 @@
       ]
     },
     {
-      "name": "507",
+      "name": "509",
       "members": [
         {
           "name": "nodeid",
@@ -16330,7 +16331,7 @@
       "meta-type": "object"
     },
     {
-      "name": "508",
+      "name": "510",
       "members": [
         {
           "name": "src",
@@ -16348,7 +16349,7 @@
       "meta-type": "object"
     },
     {
-      "name": "509",
+      "name": "511",
       "members": [
         {
           "name": "node-id",
@@ -16399,7 +16400,7 @@
       "meta-type": "object"
     },
     {
-      "name": "510",
+      "name": "512",
       "members": [
         {
           "name": "initiator",
@@ -16411,11 +16412,11 @@
         },
         {
           "name": "hierarchy",
-          "type": "681"
+          "type": "683"
         },
         {
           "name": "data-type",
-          "type": "682"
+          "type": "684"
         },
         {
           "name": "latency",
@@ -16431,7 +16432,7 @@
       "meta-type": "object"
     },
     {
-      "name": "511",
+      "name": "513",
       "members": [
         {
           "name": "node-id",
@@ -16447,11 +16448,11 @@
         },
         {
           "name": "associativity",
-          "type": "683"
+          "type": "685"
         },
         {
           "name": "policy",
-          "type": "684"
+          "type": "686"
         },
         {
           "name": "line",
@@ -16461,7 +16462,7 @@
       "meta-type": "object"
     },
     {
-      "name": "512",
+      "name": "514",
       "members": [
         {
           "name": "dimm"
@@ -16493,57 +16494,57 @@
       ]
     },
     {
-      "name": "513",
+      "name": "515",
       "members": [
         {
           "name": "data",
-          "type": "685"
+          "type": "687"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "514",
+      "name": "516",
       "members": [
         {
           "name": "data",
-          "type": "686"
+          "type": "688"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "515",
+      "name": "517",
       "members": [
         {
           "name": "data",
-          "type": "687"
+          "type": "689"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "516",
+      "name": "518",
       "members": [
         {
           "name": "data",
-          "type": "688"
+          "type": "690"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "517",
+      "name": "519",
       "members": [
         {
           "name": "data",
-          "type": "689"
+          "type": "691"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "518",
+      "name": "520",
       "members": [
         {
           "name": "name",
@@ -16558,7 +16559,7 @@
       "meta-type": "object"
     },
     {
-      "name": "519",
+      "name": "521",
       "members": [
         {
           "name": "incompatible"
@@ -16582,7 +16583,7 @@
       ]
     },
     {
-      "name": "520",
+      "name": "522",
       "members": [
         {
           "name": "static"
@@ -16598,7 +16599,7 @@
       ]
     },
     {
-      "name": "521",
+      "name": "523",
       "members": [
         {
           "name": "auto"
@@ -16622,7 +16623,7 @@
       ]
     },
     {
-      "name": "522",
+      "name": "524",
       "members": [
         {
           "name": "horizontal"
@@ -16638,7 +16639,7 @@
       ]
     },
     {
-      "name": "523",
+      "name": "525",
       "members": [
         {
           "name": "none"
@@ -16658,7 +16659,7 @@
       ]
     },
     {
-      "name": "524",
+      "name": "526",
       "members": [
         {
           "name": "block-node"
@@ -16678,7 +16679,7 @@
       ]
     },
     {
-      "name": "525",
+      "name": "527",
       "members": [
         {
           "name": "node-name",
@@ -16688,7 +16689,7 @@
       "meta-type": "object"
     },
     {
-      "name": "526",
+      "name": "528",
       "members": [
         {
           "name": "id",
@@ -16698,12 +16699,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[527]",
-      "element-type": "527",
+      "name": "[529]",
+      "element-type": "529",
       "meta-type": "array"
     },
     {
-      "name": "527",
+      "name": "529",
       "members": [
         {
           "name": "fd",
@@ -16718,12 +16719,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[528]",
-      "element-type": "528",
+      "name": "[530]",
+      "element-type": "530",
       "meta-type": "array"
     },
     {
-      "name": "528",
+      "name": "530",
       "members": [
         {
           "name": "name",
@@ -16731,7 +16732,7 @@
         },
         {
           "name": "type",
-          "type": "690"
+          "type": "692"
         },
         {
           "name": "help",
@@ -16747,12 +16748,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[533]",
-      "element-type": "533",
+      "name": "[535]",
+      "element-type": "535",
       "meta-type": "array"
     },
     {
-      "name": "533",
+      "name": "535",
       "members": [
         {
           "name": "node",
@@ -16766,7 +16767,7 @@
       "meta-type": "object"
     },
     {
-      "name": "535",
+      "name": "537",
       "members": [
         {
           "name": "none"
@@ -16809,43 +16810,6 @@
         "wav"
       ]
     },
-    {
-      "name": "536",
-      "members": [
-        {
-          "name": "in",
-          "default": null,
-          "type": "691"
-        },
-        {
-          "name": "out",
-          "default": null,
-          "type": "691"
-        }
-      ],
-      "meta-type": "object"
-    },
-    {
-      "name": "537",
-      "members": [
-        {
-          "name": "in",
-          "default": null,
-          "type": "692"
-        },
-        {
-          "name": "out",
-          "default": null,
-          "type": "692"
-        },
-        {
-          "name": "threshold",
-          "default": null,
-          "type": "int"
-        }
-      ],
-      "meta-type": "object"
-    },
     {
       "name": "538",
       "members": [
@@ -16868,15 +16832,15 @@
         {
           "name": "in",
           "default": null,
-          "type": "691"
+          "type": "694"
         },
         {
           "name": "out",
           "default": null,
-          "type": "691"
+          "type": "694"
         },
         {
-          "name": "latency",
+          "name": "threshold",
           "default": null,
           "type": "int"
         }
@@ -16889,12 +16853,12 @@
         {
           "name": "in",
           "default": null,
-          "type": "694"
+          "type": "695"
         },
         {
           "name": "out",
           "default": null,
-          "type": "694"
+          "type": "695"
         }
       ],
       "meta-type": "object"
@@ -16905,12 +16869,49 @@
         {
           "name": "in",
           "default": null,
-          "type": "695"
+          "type": "693"
         },
         {
           "name": "out",
           "default": null,
-          "type": "695"
+          "type": "693"
+        },
+        {
+          "name": "latency",
+          "default": null,
+          "type": "int"
+        }
+      ],
+      "meta-type": "object"
+    },
+    {
+      "name": "542",
+      "members": [
+        {
+          "name": "in",
+          "default": null,
+          "type": "696"
+        },
+        {
+          "name": "out",
+          "default": null,
+          "type": "696"
+        }
+      ],
+      "meta-type": "object"
+    },
+    {
+      "name": "543",
+      "members": [
+        {
+          "name": "in",
+          "default": null,
+          "type": "697"
+        },
+        {
+          "name": "out",
+          "default": null,
+          "type": "697"
         },
         {
           "name": "try-mmap",
@@ -16931,17 +16932,17 @@
       "meta-type": "object"
     },
     {
-      "name": "542",
+      "name": "544",
       "members": [
         {
           "name": "in",
           "default": null,
-          "type": "696"
+          "type": "698"
         },
         {
           "name": "out",
           "default": null,
-          "type": "696"
+          "type": "698"
         },
         {
           "name": "server",
@@ -16952,49 +16953,49 @@
       "meta-type": "object"
     },
     {
-      "name": "543",
+      "name": "545",
       "members": [
         {
           "name": "in",
           "default": null,
-          "type": "697"
+          "type": "699"
         },
         {
           "name": "out",
           "default": null,
-          "type": "697"
+          "type": "699"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "544",
+      "name": "546",
       "members": [
         {
           "name": "in",
           "default": null,
-          "type": "698"
+          "type": "700"
         },
         {
           "name": "out",
           "default": null,
-          "type": "698"
+          "type": "700"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "545",
+      "name": "547",
       "members": [
         {
           "name": "in",
           "default": null,
-          "type": "691"
+          "type": "693"
         },
         {
           "name": "out",
           "default": null,
-          "type": "691"
+          "type": "693"
         },
         {
           "name": "dev",
@@ -17010,17 +17011,17 @@
       "meta-type": "object"
     },
     {
-      "name": "546",
+      "name": "548",
       "members": [
         {
           "name": "in",
           "default": null,
-          "type": "691"
+          "type": "693"
         },
         {
           "name": "out",
           "default": null,
-          "type": "691"
+          "type": "693"
         },
         {
           "name": "path",
@@ -17031,7 +17032,7 @@
       "meta-type": "object"
     },
     {
-      "name": "547",
+      "name": "549",
       "members": [
         {
           "name": "DIMM"
@@ -17047,12 +17048,12 @@
       ]
     },
     {
-      "name": "[548]",
-      "element-type": "548",
+      "name": "[550]",
+      "element-type": "550",
       "meta-type": "array"
     },
     {
-      "name": "548",
+      "name": "550",
       "members": [
         {
           "name": "bus",
@@ -17068,11 +17069,11 @@
         },
         {
           "name": "class_info",
-          "type": "699"
+          "type": "701"
         },
         {
           "name": "id",
-          "type": "700"
+          "type": "702"
         },
         {
           "name": "irq",
@@ -17090,17 +17091,17 @@
         {
           "name": "pci_bridge",
           "default": null,
-          "type": "701"
+          "type": "703"
         },
         {
           "name": "regions",
-          "type": "[702]"
+          "type": "[704]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "549",
+      "name": "551",
       "members": [
         {
           "name": "vm"
@@ -17120,16 +17121,16 @@
       ]
     },
     {
-      "name": "[550]",
-      "element-type": "550",
+      "name": "[552]",
+      "element-type": "552",
       "meta-type": "array"
     },
     {
-      "name": "550",
+      "name": "552",
       "members": [
         {
           "name": "provider",
-          "type": "552"
+          "type": "554"
         },
         {
           "name": "names",
@@ -17140,7 +17141,7 @@
       "meta-type": "object"
     },
     {
-      "name": "551",
+      "name": "553",
       "members": [
         {
           "name": "vcpus",
@@ -17151,7 +17152,7 @@
       "meta-type": "object"
     },
     {
-      "name": "552",
+      "name": "554",
       "members": [
         {
           "name": "kvm"
@@ -17167,12 +17168,12 @@
       ]
     },
     {
-      "name": "[553]",
-      "element-type": "553",
+      "name": "[555]",
+      "element-type": "555",
       "meta-type": "array"
     },
     {
-      "name": "553",
+      "name": "555",
       "members": [
         {
           "name": "name",
@@ -17180,18 +17181,18 @@
         },
         {
           "name": "value",
-          "type": "703"
+          "type": "705"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[554]",
-      "element-type": "554",
+      "name": "[556]",
+      "element-type": "556",
       "meta-type": "array"
     },
     {
-      "name": "554",
+      "name": "556",
       "members": [
         {
           "name": "name",
@@ -17199,12 +17200,12 @@
         },
         {
           "name": "type",
-          "type": "704"
+          "type": "706"
         },
         {
           "name": "unit",
           "default": null,
-          "type": "705"
+          "type": "707"
         },
         {
           "name": "base",
@@ -17224,7 +17225,7 @@
       "meta-type": "object"
     },
     {
-      "name": "555",
+      "name": "557",
       "members": [
         {
           "name": "transports",
@@ -17244,7 +17245,7 @@
       "meta-type": "object"
     },
     {
-      "name": "556",
+      "name": "558",
       "members": [
         {
           "name": "statuses",
@@ -17259,7 +17260,7 @@
       "meta-type": "object"
     },
     {
-      "name": "557",
+      "name": "559",
       "members": [
         {
           "name": "n-mem-sections",
@@ -17279,19 +17280,19 @@
         },
         {
           "name": "features",
-          "type": "555"
+          "type": "557"
         },
         {
           "name": "acked-features",
-          "type": "555"
+          "type": "557"
         },
         {
           "name": "backend-features",
-          "type": "555"
+          "type": "557"
         },
         {
           "name": "protocol-features",
-          "type": "706"
+          "type": "708"
         },
         {
           "name": "max-queues",
@@ -17313,12 +17314,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[558]",
-      "element-type": "558",
+      "name": "[560]",
+      "element-type": "560",
       "meta-type": "array"
     },
     {
-      "name": "558",
+      "name": "560",
       "members": [
         {
           "name": "addr",
@@ -17336,7 +17337,7 @@
       "meta-type": "object"
     },
     {
-      "name": "559",
+      "name": "561",
       "members": [
         {
           "name": "flags",
@@ -17354,7 +17355,7 @@
       "meta-type": "object"
     },
     {
-      "name": "560",
+      "name": "562",
       "members": [
         {
           "name": "flags",
@@ -17368,7 +17369,7 @@
       "meta-type": "object"
     },
     {
-      "name": "561",
+      "name": "563",
       "members": [
         {
           "name": "stop"
@@ -17404,12 +17405,12 @@
       ]
     },
     {
-      "name": "[562]",
-      "element-type": "562",
+      "name": "[564]",
+      "element-type": "564",
       "meta-type": "array"
     },
     {
-      "name": "562",
+      "name": "564",
       "members": [
         {
           "name": "cipher"
@@ -17437,12 +17438,12 @@
       ]
     },
     {
-      "name": "[563]",
-      "element-type": "563",
+      "name": "[565]",
+      "element-type": "565",
       "meta-type": "array"
     },
     {
-      "name": "563",
+      "name": "565",
       "members": [
         {
           "name": "queue",
@@ -17450,13 +17451,13 @@
         },
         {
           "name": "type",
-          "type": "707"
+          "type": "709"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "564",
+      "name": "566",
       "members": [
         {
           "name": "informational"
@@ -17480,16 +17481,16 @@
       ]
     },
     {
-      "name": "[565]",
-      "element-type": "565",
+      "name": "[567]",
+      "element-type": "567",
       "meta-type": "array"
     },
     {
-      "name": "565",
+      "name": "567",
       "members": [
         {
           "name": "type",
-          "type": "708"
+          "type": "710"
         },
         {
           "name": "header",
@@ -17499,7 +17500,7 @@
       "meta-type": "object"
     },
     {
-      "name": "566",
+      "name": "568",
       "members": [
         {
           "name": "cache-data-ecc"
@@ -17535,7 +17536,7 @@
       ]
     },
     {
-      "name": "567",
+      "name": "569",
       "members": [
         {
           "name": "free"
@@ -17559,12 +17560,12 @@
       ]
     },
     {
-      "name": "[568]",
-      "element-type": "568",
+      "name": "[570]",
+      "element-type": "570",
       "meta-type": "array"
     },
     {
-      "name": "568",
+      "name": "570",
       "members": [
         {
           "name": "offset",
@@ -17578,7 +17579,7 @@
       "meta-type": "object"
     },
     {
-      "name": "569",
+      "name": "571",
       "members": [
         {
           "name": "tag-based"
@@ -17594,7 +17595,7 @@
       ]
     },
     {
-      "name": "570",
+      "name": "572",
       "members": [
         {
           "name": "hyper-v"
@@ -17610,7 +17611,7 @@
       ]
     },
     {
-      "name": "571",
+      "name": "573",
       "members": [
         {
           "name": "arg1",
@@ -17636,7 +17637,7 @@
       "meta-type": "object"
     },
     {
-      "name": "572",
+      "name": "574",
       "members": [
         {
           "name": "core",
@@ -17652,18 +17653,18 @@
         },
         {
           "name": "reason",
-          "type": "709"
+          "type": "711"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[573]",
-      "element-type": "573",
+      "name": "[575]",
+      "element-type": "575",
       "meta-type": "array"
     },
     {
-      "name": "573",
+      "name": "575",
       "members": [
         {
           "name": "interval_length",
@@ -17733,7 +17734,7 @@
       "meta-type": "object"
     },
     {
-      "name": "574",
+      "name": "576",
       "members": [
         {
           "name": "boundaries",
@@ -17747,7 +17748,7 @@
       "meta-type": "object"
     },
     {
-      "name": "575",
+      "name": "577",
       "members": [
         {
           "name": "discard-nb-ok",
@@ -17765,7 +17766,7 @@
       "meta-type": "object"
     },
     {
-      "name": "576",
+      "name": "578",
       "members": [
         {
           "name": "completion-errors",
@@ -17788,40 +17789,40 @@
       "meta-type": "array"
     },
     {
-      "name": "577",
+      "name": "579",
       "tag": "type",
       "variants": [
         {
           "case": "qcow2",
-          "type": "711"
+          "type": "713"
         },
         {
           "case": "vmdk",
-          "type": "712"
+          "type": "714"
         },
         {
           "case": "luks",
-          "type": "713"
+          "type": "715"
         },
         {
           "case": "rbd",
-          "type": "714"
+          "type": "716"
         },
         {
           "case": "file",
-          "type": "715"
+          "type": "717"
         }
       ],
       "members": [
         {
           "name": "type",
-          "type": "710"
+          "type": "712"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "578",
+      "name": "580",
       "members": [
         {
           "name": "block-backend"
@@ -17841,12 +17842,12 @@
       ]
     },
     {
-      "name": "[579]",
-      "element-type": "579",
+      "name": "[581]",
+      "element-type": "581",
       "meta-type": "array"
     },
     {
-      "name": "579",
+      "name": "581",
       "members": [
         {
           "name": "consistent-read"
@@ -17870,7 +17871,7 @@
       ]
     },
     {
-      "name": "580",
+      "name": "582",
       "members": [
         {
           "type": "58"
@@ -17882,16 +17883,16 @@
       "meta-type": "alternate"
     },
     {
-      "name": "[581]",
-      "element-type": "581",
+      "name": "[583]",
+      "element-type": "583",
       "meta-type": "array"
     },
     {
-      "name": "581",
+      "name": "583",
       "members": [
         {
           "name": "event",
-          "type": "716"
+          "type": "718"
         },
         {
           "name": "state",
@@ -17901,7 +17902,7 @@
         {
           "name": "iotype",
           "default": null,
-          "type": "717"
+          "type": "719"
         },
         {
           "name": "errno",
@@ -17927,16 +17928,16 @@
       "meta-type": "object"
     },
     {
-      "name": "[582]",
-      "element-type": "582",
+      "name": "[584]",
+      "element-type": "584",
       "meta-type": "array"
     },
     {
-      "name": "582",
+      "name": "584",
       "members": [
         {
           "name": "event",
-          "type": "716"
+          "type": "718"
         },
         {
           "name": "state",
@@ -17951,7 +17952,7 @@
       "meta-type": "object"
     },
     {
-      "name": "583",
+      "name": "585",
       "members": [
         {
           "name": "break-guest-write"
@@ -17967,7 +17968,7 @@
       ]
     },
     {
-      "name": "584",
+      "name": "586",
       "members": [
         {
           "name": "auto"
@@ -17987,7 +17988,7 @@
       ]
     },
     {
-      "name": "585",
+      "name": "587",
       "members": [
         {
           "name": "threads"
@@ -18007,7 +18008,7 @@
       ]
     },
     {
-      "name": "586",
+      "name": "588",
       "members": [
         {
           "name": "tcp"
@@ -18023,7 +18024,7 @@
       ]
     },
     {
-      "name": "587",
+      "name": "589",
       "members": [
         {
           "name": "crc32c"
@@ -18047,11 +18048,11 @@
       ]
     },
     {
-      "name": "588",
+      "name": "590",
       "members": [
         {
           "name": "type",
-          "type": "718"
+          "type": "720"
         },
         {
           "name": "host",
@@ -18061,7 +18062,7 @@
       "meta-type": "object"
     },
     {
-      "name": "589",
+      "name": "591",
       "members": [
         {
           "type": "58"
@@ -18076,62 +18077,62 @@
       "meta-type": "alternate"
     },
     {
-      "name": "590",
+      "name": "592",
       "members": [
         {
-          "type": "719"
+          "type": "721"
         },
         {
-          "type": "720"
+          "type": "722"
         }
       ],
       "meta-type": "alternate"
     },
     {
-      "name": "591",
+      "name": "593",
       "tag": "format",
       "variants": [
         {
           "case": "aes",
-          "type": "722"
+          "type": "724"
         },
         {
           "case": "luks",
-          "type": "723"
+          "type": "725"
         }
       ],
       "members": [
         {
           "name": "format",
-          "type": "721"
+          "type": "723"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "592",
+      "name": "594",
       "tag": "format",
       "variants": [
         {
           "case": "aes",
-          "type": "722"
+          "type": "724"
         }
       ],
       "members": [
         {
           "name": "format",
-          "type": "724"
+          "type": "726"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[580]",
-      "element-type": "580",
+      "name": "[582]",
+      "element-type": "582",
       "meta-type": "array"
     },
     {
-      "name": "593",
+      "name": "595",
       "members": [
         {
           "name": "quorum"
@@ -18147,42 +18148,42 @@
       ]
     },
     {
-      "name": "594",
+      "name": "596",
       "tag": "format",
       "variants": [
         {
           "case": "luks",
-          "type": "726"
+          "type": "728"
         },
         {
           "case": "luks2",
-          "type": "727"
+          "type": "729"
         },
         {
           "case": "luks-any",
-          "type": "728"
+          "type": "730"
         }
       ],
       "members": [
         {
           "name": "format",
-          "type": "725"
+          "type": "727"
         },
         {
           "name": "parent",
           "default": null,
-          "type": "594"
+          "type": "596"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[595]",
-      "element-type": "595",
+      "name": "[597]",
+      "element-type": "597",
       "meta-type": "array"
     },
     {
-      "name": "595",
+      "name": "597",
       "members": [
         {
           "name": "cephx"
@@ -18198,12 +18199,12 @@
       ]
     },
     {
-      "name": "[596]",
-      "element-type": "596",
+      "name": "[598]",
+      "element-type": "598",
       "meta-type": "array"
     },
     {
-      "name": "596",
+      "name": "598",
       "members": [
         {
           "name": "host",
@@ -18217,7 +18218,7 @@
       "meta-type": "object"
     },
     {
-      "name": "597",
+      "name": "599",
       "members": [
         {
           "name": "primary"
@@ -18233,7 +18234,7 @@
       ]
     },
     {
-      "name": "598",
+      "name": "600",
       "members": [
         {
           "name": "host",
@@ -18277,12 +18278,12 @@
       "meta-type": "object"
     },
     {
-      "name": "599",
+      "name": "601",
       "tag": "mode",
       "variants": [
         {
           "case": "hash",
-          "type": "730"
+          "type": "732"
         },
         {
           "case": "none",
@@ -18296,13 +18297,13 @@
       "members": [
         {
           "name": "mode",
-          "type": "729"
+          "type": "731"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "600",
+      "name": "602",
       "members": [
         {
           "name": "filename",
@@ -18315,7 +18316,7 @@
         {
           "name": "preallocation",
           "default": null,
-          "type": "731"
+          "type": "733"
         },
         {
           "name": "nocow",
@@ -18331,11 +18332,11 @@
       "meta-type": "object"
     },
     {
-      "name": "601",
+      "name": "603",
       "members": [
         {
           "name": "location",
-          "type": "329"
+          "type": "330"
         },
         {
           "name": "size",
@@ -18344,13 +18345,13 @@
         {
           "name": "preallocation",
           "default": null,
-          "type": "731"
+          "type": "733"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "602",
+      "name": "604",
       "members": [
         {
           "name": "key-secret",
@@ -18360,27 +18361,27 @@
         {
           "name": "cipher-alg",
           "default": null,
-          "type": "732"
+          "type": "734"
         },
         {
           "name": "cipher-mode",
           "default": null,
-          "type": "733"
+          "type": "735"
         },
         {
           "name": "ivgen-alg",
           "default": null,
-          "type": "734"
+          "type": "736"
         },
         {
           "name": "ivgen-hash-alg",
           "default": null,
-          "type": "735"
+          "type": "737"
         },
         {
           "name": "hash-alg",
           "default": null,
-          "type": "735"
+          "type": "737"
         },
         {
           "name": "iter-time",
@@ -18390,12 +18391,12 @@
         {
           "name": "file",
           "default": null,
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "header",
           "default": null,
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18404,17 +18405,17 @@
         {
           "name": "preallocation",
           "default": null,
-          "type": "731"
+          "type": "733"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "603",
+      "name": "605",
       "members": [
         {
           "name": "location",
-          "type": "336"
+          "type": "337"
         },
         {
           "name": "size",
@@ -18424,11 +18425,11 @@
       "meta-type": "object"
     },
     {
-      "name": "604",
+      "name": "606",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18443,11 +18444,11 @@
       "meta-type": "object"
     },
     {
-      "name": "605",
+      "name": "607",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18461,22 +18462,22 @@
         {
           "name": "encrypt",
           "default": null,
-          "type": "736"
+          "type": "738"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "606",
+      "name": "608",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "data-file",
           "default": null,
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "data-file-raw",
@@ -18495,7 +18496,7 @@
         {
           "name": "version",
           "default": null,
-          "type": "737"
+          "type": "739"
         },
         {
           "name": "backing-file",
@@ -18505,12 +18506,12 @@
         {
           "name": "backing-fmt",
           "default": null,
-          "type": "316"
+          "type": "317"
         },
         {
           "name": "encrypt",
           "default": null,
-          "type": "736"
+          "type": "738"
         },
         {
           "name": "cluster-size",
@@ -18520,7 +18521,7 @@
         {
           "name": "preallocation",
           "default": null,
-          "type": "731"
+          "type": "733"
         },
         {
           "name": "lazy-refcounts",
@@ -18535,17 +18536,17 @@
         {
           "name": "compression-type",
           "default": null,
-          "type": "738"
+          "type": "740"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "607",
+      "name": "609",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18559,7 +18560,7 @@
         {
           "name": "backing-fmt",
           "default": null,
-          "type": "316"
+          "type": "317"
         },
         {
           "name": "cluster-size",
@@ -18575,11 +18576,11 @@
       "meta-type": "object"
     },
     {
-      "name": "608",
+      "name": "610",
       "members": [
         {
           "name": "location",
-          "type": "346"
+          "type": "347"
         },
         {
           "name": "size",
@@ -18593,17 +18594,17 @@
         {
           "name": "encrypt",
           "default": null,
-          "type": "739"
+          "type": "741"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "609",
+      "name": "611",
       "members": [
         {
           "name": "location",
-          "type": "348"
+          "type": "349"
         },
         {
           "name": "size",
@@ -18613,11 +18614,11 @@
       "meta-type": "object"
     },
     {
-      "name": "610",
+      "name": "612",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18626,17 +18627,17 @@
         {
           "name": "preallocation",
           "default": null,
-          "type": "731"
+          "type": "733"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "611",
+      "name": "613",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18655,7 +18656,7 @@
         {
           "name": "subformat",
           "default": null,
-          "type": "740"
+          "type": "742"
         },
         {
           "name": "block-state-zero",
@@ -18666,11 +18667,11 @@
       "meta-type": "object"
     },
     {
-      "name": "612",
+      "name": "614",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18679,12 +18680,12 @@
         {
           "name": "extents",
           "default": null,
-          "type": "[580]"
+          "type": "[582]"
         },
         {
           "name": "subformat",
           "default": null,
-          "type": "741"
+          "type": "743"
         },
         {
           "name": "backing-file",
@@ -18694,7 +18695,7 @@
         {
           "name": "adapter-type",
           "default": null,
-          "type": "742"
+          "type": "744"
         },
         {
           "name": "hwversion",
@@ -18715,11 +18716,11 @@
       "meta-type": "object"
     },
     {
-      "name": "613",
+      "name": "615",
       "members": [
         {
           "name": "file",
-          "type": "580"
+          "type": "582"
         },
         {
           "name": "size",
@@ -18728,7 +18729,7 @@
         {
           "name": "subformat",
           "default": null,
-          "type": "743"
+          "type": "745"
         },
         {
           "name": "force-size",
@@ -18739,11 +18740,11 @@
       "meta-type": "object"
     },
     {
-      "name": "614",
+      "name": "616",
       "members": [
         {
           "name": "state",
-          "type": "744"
+          "type": "746"
         },
         {
           "name": "new-secret",
@@ -18774,12 +18775,12 @@
       "meta-type": "object"
     },
     {
-      "name": "615",
+      "name": "617",
       "members": [
         {
           "name": "encrypt",
           "default": null,
-          "type": "745"
+          "type": "747"
         }
       ],
       "meta-type": "object"
@@ -18790,7 +18791,7 @@
       "meta-type": "builtin"
     },
     {
-      "name": "616",
+      "name": "618",
       "members": [
         {
           "name": "inet"
@@ -18814,47 +18815,47 @@
       ]
     },
     {
-      "name": "617",
+      "name": "619",
       "members": [
         {
           "name": "data",
-          "type": "598"
+          "type": "600"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "618",
+      "name": "620",
       "members": [
         {
           "name": "data",
-          "type": "639"
+          "type": "641"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "619",
+      "name": "621",
       "members": [
         {
           "name": "data",
-          "type": "640"
+          "type": "642"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "620",
+      "name": "622",
       "members": [
         {
           "name": "data",
-          "type": "641"
+          "type": "643"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "621",
+      "name": "623",
       "members": [
         {
           "name": "off"
@@ -18874,7 +18875,7 @@
       ]
     },
     {
-      "name": "622",
+      "name": "624",
       "members": [
         {
           "name": "file"
@@ -18957,122 +18958,122 @@
       ]
     },
     {
-      "name": "623",
+      "name": "625",
       "members": [
         {
           "name": "data",
-          "type": "746"
+          "type": "748"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "624",
+      "name": "626",
       "members": [
         {
           "name": "data",
-          "type": "747"
+          "type": "749"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "625",
+      "name": "627",
       "members": [
         {
           "name": "data",
-          "type": "748"
+          "type": "750"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "626",
+      "name": "628",
       "members": [
         {
           "name": "data",
-          "type": "749"
+          "type": "751"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "627",
+      "name": "629",
       "members": [
         {
           "name": "data",
-          "type": "750"
+          "type": "752"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "628",
+      "name": "630",
       "members": [
         {
           "name": "data",
-          "type": "751"
+          "type": "753"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "629",
+      "name": "631",
       "members": [
         {
           "name": "data",
-          "type": "752"
+          "type": "754"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "630",
+      "name": "632",
       "members": [
         {
           "name": "data",
-          "type": "753"
+          "type": "755"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "634",
+      "name": "636",
       "members": [
         {
           "name": "data",
-          "type": "757"
+          "type": "759"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "635",
+      "name": "637",
       "members": [
         {
           "name": "data",
-          "type": "758"
+          "type": "760"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "636",
+      "name": "638",
       "members": [
         {
           "name": "data",
-          "type": "759"
+          "type": "761"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[637]",
-      "element-type": "637",
+      "name": "[639]",
+      "element-type": "639",
       "meta-type": "array"
     },
     {
-      "name": "637",
+      "name": "639",
       "members": [
         {
           "name": "str",
@@ -19082,7 +19083,7 @@
       "meta-type": "object"
     },
     {
-      "name": "638",
+      "name": "640",
       "members": [
         {
           "name": "native"
@@ -19098,7 +19099,7 @@
       ]
     },
     {
-      "name": "639",
+      "name": "641",
       "members": [
         {
           "name": "path",
@@ -19118,7 +19119,7 @@
       "meta-type": "object"
     },
     {
-      "name": "640",
+      "name": "642",
       "members": [
         {
           "name": "cid",
@@ -19132,7 +19133,7 @@
       "meta-type": "object"
     },
     {
-      "name": "641",
+      "name": "643",
       "members": [
         {
           "name": "str",
@@ -19142,27 +19143,27 @@
       "meta-type": "object"
     },
     {
-      "name": "642",
+      "name": "644",
       "members": [
         {
           "name": "data",
-          "type": "760"
+          "type": "762"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "643",
+      "name": "645",
       "members": [
         {
           "name": "data",
-          "type": "761"
+          "type": "763"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "644",
+      "name": "646",
       "members": [
         {
           "name": "number"
@@ -19178,7 +19179,7 @@
       ]
     },
     {
-      "name": "645",
+      "name": "647",
       "members": [
         {
           "name": "data",
@@ -19188,17 +19189,17 @@
       "meta-type": "object"
     },
     {
-      "name": "646",
+      "name": "648",
       "members": [
         {
           "name": "data",
-          "type": "762"
+          "type": "764"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "647",
+      "name": "649",
       "members": [
         {
           "name": "key"
@@ -19226,47 +19227,47 @@
       ]
     },
     {
-      "name": "648",
+      "name": "650",
       "members": [
         {
           "name": "data",
-          "type": "763"
+          "type": "765"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "649",
+      "name": "651",
       "members": [
         {
           "name": "data",
-          "type": "764"
+          "type": "766"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "650",
+      "name": "652",
       "members": [
         {
           "name": "data",
-          "type": "765"
+          "type": "767"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "651",
+      "name": "653",
       "members": [
         {
           "name": "data",
-          "type": "766"
+          "type": "768"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "652",
+      "name": "654",
       "members": [
         {
           "name": "lctrl-lalt"
@@ -19291,12 +19292,12 @@
       "meta-type": "builtin"
     },
     {
-      "name": "[653]",
-      "element-type": "653",
+      "name": "[655]",
+      "element-type": "655",
       "meta-type": "array"
     },
     {
-      "name": "653",
+      "name": "655",
       "members": [
         {
           "name": "name",
@@ -19309,13 +19310,13 @@
         {
           "name": "transform",
           "default": null,
-          "type": "767"
+          "type": "769"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "654",
+      "name": "656",
       "members": [
         {
           "name": "main"
@@ -19327,36 +19328,36 @@
       ]
     },
     {
-      "name": "655",
+      "name": "657",
       "tag": "transport",
       "variants": [
         {
           "case": "socket",
-          "type": "390"
+          "type": "391"
         },
         {
           "case": "exec",
-          "type": "769"
+          "type": "771"
         },
         {
           "case": "rdma",
-          "type": "598"
+          "type": "600"
         },
         {
           "case": "file",
-          "type": "770"
+          "type": "772"
         }
       ],
       "members": [
         {
           "name": "transport",
-          "type": "768"
+          "type": "770"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "656",
+      "name": "658",
       "members": [
         {
           "name": "abort"
@@ -19415,17 +19416,17 @@
       ]
     },
     {
-      "name": "657",
+      "name": "659",
       "members": [
         {
           "name": "data",
-          "type": "771"
+          "type": "773"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "658",
+      "name": "660",
       "members": [
         {
           "name": "data",
@@ -19435,7 +19436,7 @@
       "meta-type": "object"
     },
     {
-      "name": "659",
+      "name": "661",
       "members": [
         {
           "name": "data",
@@ -19445,7 +19446,7 @@
       "meta-type": "object"
     },
     {
-      "name": "660",
+      "name": "662",
       "members": [
         {
           "name": "data",
@@ -19455,7 +19456,7 @@
       "meta-type": "object"
     },
     {
-      "name": "661",
+      "name": "663",
       "members": [
         {
           "name": "data",
@@ -19465,7 +19466,7 @@
       "meta-type": "object"
     },
     {
-      "name": "662",
+      "name": "664",
       "members": [
         {
           "name": "data",
@@ -19475,7 +19476,7 @@
       "meta-type": "object"
     },
     {
-      "name": "663",
+      "name": "665",
       "members": [
         {
           "name": "data",
@@ -19485,7 +19486,7 @@
       "meta-type": "object"
     },
     {
-      "name": "664",
+      "name": "666",
       "members": [
         {
           "name": "data",
@@ -19495,7 +19496,7 @@
       "meta-type": "object"
     },
     {
-      "name": "665",
+      "name": "667",
       "members": [
         {
           "name": "data",
@@ -19505,7 +19506,7 @@
       "meta-type": "object"
     },
     {
-      "name": "666",
+      "name": "668",
       "members": [
         {
           "name": "individual"
@@ -19521,7 +19522,7 @@
       ]
     },
     {
-      "name": "667",
+      "name": "669",
       "members": [
         {
           "name": "string"
@@ -19561,12 +19562,12 @@
       ]
     },
     {
-      "name": "[668]",
-      "element-type": "668",
+      "name": "[670]",
+      "element-type": "670",
       "meta-type": "array"
     },
     {
-      "name": "668",
+      "name": "670",
       "members": [
         {
           "name": "name",
@@ -19581,12 +19582,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[669]",
-      "element-type": "669",
+      "name": "[671]",
+      "element-type": "671",
       "meta-type": "array"
     },
     {
-      "name": "669",
+      "name": "671",
       "members": [
         {
           "name": "name",
@@ -19610,12 +19611,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[670]",
-      "element-type": "670",
+      "name": "[672]",
+      "element-type": "672",
       "meta-type": "array"
     },
     {
-      "name": "670",
+      "name": "672",
       "members": [
         {
           "name": "case",
@@ -19629,12 +19630,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[671]",
-      "element-type": "671",
+      "name": "[673]",
+      "element-type": "673",
       "meta-type": "array"
     },
     {
-      "name": "671",
+      "name": "673",
       "members": [
         {
           "name": "type",
@@ -19644,7 +19645,7 @@
       "meta-type": "object"
     },
     {
-      "name": "672",
+      "name": "674",
       "members": [
         {
           "name": "deny"
@@ -19660,12 +19661,12 @@
       ]
     },
     {
-      "name": "[673]",
-      "element-type": "673",
+      "name": "[675]",
+      "element-type": "675",
       "meta-type": "array"
     },
     {
-      "name": "673",
+      "name": "675",
       "members": [
         {
           "name": "match",
@@ -19673,18 +19674,18 @@
         },
         {
           "name": "policy",
-          "type": "672"
+          "type": "674"
         },
         {
           "name": "format",
           "default": null,
-          "type": "772"
+          "type": "774"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "674",
+      "name": "676",
       "members": [
         {
           "name": "all"
@@ -19704,7 +19705,7 @@
       ]
     },
     {
-      "name": "675",
+      "name": "677",
       "members": [
         {
           "name": "before"
@@ -19720,7 +19721,7 @@
       ]
     },
     {
-      "name": "676",
+      "name": "678",
       "members": [
         {
           "name": "ctrl-ctrl"
@@ -19752,7 +19753,7 @@
       ]
     },
     {
-      "name": "677",
+      "name": "679",
       "members": [
         {
           "name": "raw"
@@ -19768,7 +19769,7 @@
       ]
     },
     {
-      "name": "678",
+      "name": "680",
       "members": [
         {
           "name": "iops-total",
@@ -19869,7 +19870,7 @@
       "meta-type": "object"
     },
     {
-      "name": "679",
+      "name": "681",
       "members": [
         {
           "name": "client"
@@ -19885,7 +19886,7 @@
       ]
     },
     {
-      "name": "680",
+      "name": "682",
       "members": [
         {
           "name": "uninitialized"
@@ -19913,7 +19914,7 @@
       ]
     },
     {
-      "name": "681",
+      "name": "683",
       "members": [
         {
           "name": "memory"
@@ -19937,7 +19938,7 @@
       ]
     },
     {
-      "name": "682",
+      "name": "684",
       "members": [
         {
           "name": "access-latency"
@@ -19969,7 +19970,7 @@
       ]
     },
     {
-      "name": "683",
+      "name": "685",
       "members": [
         {
           "name": "none"
@@ -19989,7 +19990,7 @@
       ]
     },
     {
-      "name": "684",
+      "name": "686",
       "members": [
         {
           "name": "none"
@@ -20009,7 +20010,7 @@
       ]
     },
     {
-      "name": "685",
+      "name": "687",
       "members": [
         {
           "name": "id",
@@ -20048,7 +20049,7 @@
       "meta-type": "object"
     },
     {
-      "name": "686",
+      "name": "688",
       "members": [
         {
           "name": "id",
@@ -20071,7 +20072,7 @@
       "meta-type": "object"
     },
     {
-      "name": "687",
+      "name": "689",
       "members": [
         {
           "name": "id",
@@ -20110,7 +20111,7 @@
       "meta-type": "object"
     },
     {
-      "name": "688",
+      "name": "690",
       "members": [
         {
           "name": "id",
@@ -20137,7 +20138,7 @@
       "meta-type": "object"
     },
     {
-      "name": "689",
+      "name": "691",
       "members": [
         {
           "name": "id",
@@ -20162,7 +20163,7 @@
       "meta-type": "object"
     },
     {
-      "name": "690",
+      "name": "692",
       "members": [
         {
           "name": "string"
@@ -20186,7 +20187,7 @@
       ]
     },
     {
-      "name": "691",
+      "name": "693",
       "members": [
         {
           "name": "mixing-engine",
@@ -20216,7 +20217,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20227,7 +20228,7 @@
       "meta-type": "object"
     },
     {
-      "name": "692",
+      "name": "694",
       "members": [
         {
           "name": "mixing-engine",
@@ -20257,7 +20258,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20283,7 +20284,7 @@
       "meta-type": "object"
     },
     {
-      "name": "693",
+      "name": "695",
       "members": [
         {
           "name": "mixing-engine",
@@ -20313,7 +20314,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20329,7 +20330,7 @@
       "meta-type": "object"
     },
     {
-      "name": "694",
+      "name": "696",
       "members": [
         {
           "name": "mixing-engine",
@@ -20359,7 +20360,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20395,7 +20396,7 @@
       "meta-type": "object"
     },
     {
-      "name": "695",
+      "name": "697",
       "members": [
         {
           "name": "mixing-engine",
@@ -20425,7 +20426,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20451,7 +20452,7 @@
       "meta-type": "object"
     },
     {
-      "name": "696",
+      "name": "698",
       "members": [
         {
           "name": "mixing-engine",
@@ -20481,7 +20482,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20507,7 +20508,7 @@
       "meta-type": "object"
     },
     {
-      "name": "697",
+      "name": "699",
       "members": [
         {
           "name": "mixing-engine",
@@ -20537,7 +20538,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20563,7 +20564,7 @@
       "meta-type": "object"
     },
     {
-      "name": "698",
+      "name": "700",
       "members": [
         {
           "name": "mixing-engine",
@@ -20593,7 +20594,7 @@
         {
           "name": "format",
           "default": null,
-          "type": "773"
+          "type": "775"
         },
         {
           "name": "buffer-length",
@@ -20609,7 +20610,7 @@
       "meta-type": "object"
     },
     {
-      "name": "699",
+      "name": "701",
       "members": [
         {
           "name": "desc",
@@ -20624,7 +20625,7 @@
       "meta-type": "object"
     },
     {
-      "name": "700",
+      "name": "702",
       "members": [
         {
           "name": "device",
@@ -20648,27 +20649,27 @@
       "meta-type": "object"
     },
     {
-      "name": "701",
+      "name": "703",
       "members": [
         {
           "name": "bus",
-          "type": "774"
+          "type": "776"
         },
         {
           "name": "devices",
           "default": null,
-          "type": "[548]"
+          "type": "[550]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[702]",
-      "element-type": "702",
+      "name": "[704]",
+      "element-type": "704",
       "meta-type": "array"
     },
     {
-      "name": "702",
+      "name": "704",
       "members": [
         {
           "name": "bar",
@@ -20700,7 +20701,7 @@
       "meta-type": "object"
     },
     {
-      "name": "703",
+      "name": "705",
       "members": [
         {
           "type": "int"
@@ -20715,7 +20716,7 @@
       "meta-type": "alternate"
     },
     {
-      "name": "704",
+      "name": "706",
       "members": [
         {
           "name": "cumulative"
@@ -20743,7 +20744,7 @@
       ]
     },
     {
-      "name": "705",
+      "name": "707",
       "members": [
         {
           "name": "bytes"
@@ -20767,7 +20768,7 @@
       ]
     },
     {
-      "name": "706",
+      "name": "708",
       "members": [
         {
           "name": "protocols",
@@ -20782,7 +20783,7 @@
       "meta-type": "object"
     },
     {
-      "name": "707",
+      "name": "709",
       "members": [
         {
           "name": "builtin"
@@ -20802,7 +20803,7 @@
       ]
     },
     {
-      "name": "708",
+      "name": "710",
       "members": [
         {
           "name": "cache-data-parity"
@@ -20870,7 +20871,7 @@
       ]
     },
     {
-      "name": "709",
+      "name": "711",
       "members": [
         {
           "name": "unknown"
@@ -20898,7 +20899,7 @@
       ]
     },
     {
-      "name": "710",
+      "name": "712",
       "members": [
         {
           "name": "qcow2"
@@ -20926,57 +20927,57 @@
       ]
     },
     {
-      "name": "711",
+      "name": "713",
       "members": [
         {
           "name": "data",
-          "type": "775"
+          "type": "777"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "712",
+      "name": "714",
       "members": [
         {
           "name": "data",
-          "type": "776"
+          "type": "778"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "713",
+      "name": "715",
       "members": [
         {
           "name": "data",
-          "type": "777"
+          "type": "779"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "714",
+      "name": "716",
       "members": [
         {
           "name": "data",
-          "type": "778"
+          "type": "780"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "715",
+      "name": "717",
       "members": [
         {
           "name": "data",
-          "type": "779"
+          "type": "781"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "716",
+      "name": "718",
       "members": [
         {
           "name": "l1_update"
@@ -21176,7 +21177,7 @@
       ]
     },
     {
-      "name": "717",
+      "name": "719",
       "members": [
         {
           "name": "read"
@@ -21208,7 +21209,7 @@
       ]
     },
     {
-      "name": "718",
+      "name": "720",
       "members": [
         {
           "name": "inet"
@@ -21220,12 +21221,12 @@
       ]
     },
     {
-      "name": "719",
+      "name": "721",
       "members": [
         {
           "name": "template",
           "default": null,
-          "type": "720"
+          "type": "722"
         },
         {
           "name": "main-header",
@@ -21276,7 +21277,7 @@
       "meta-type": "object"
     },
     {
-      "name": "720",
+      "name": "722",
       "members": [
         {
           "name": "none"
@@ -21300,7 +21301,7 @@
       ]
     },
     {
-      "name": "721",
+      "name": "723",
       "members": [
         {
           "name": "aes"
@@ -21316,7 +21317,7 @@
       ]
     },
     {
-      "name": "722",
+      "name": "724",
       "members": [
         {
           "name": "key-secret",
@@ -21327,7 +21328,7 @@
       "meta-type": "object"
     },
     {
-      "name": "723",
+      "name": "725",
       "members": [
         {
           "name": "key-secret",
@@ -21338,7 +21339,7 @@
       "meta-type": "object"
     },
     {
-      "name": "724",
+      "name": "726",
       "members": [
         {
           "name": "aes"
@@ -21350,7 +21351,7 @@
       ]
     },
     {
-      "name": "725",
+      "name": "727",
       "members": [
         {
           "name": "luks"
@@ -21370,7 +21371,7 @@
       ]
     },
     {
-      "name": "726",
+      "name": "728",
       "members": [
         {
           "name": "key-secret",
@@ -21380,7 +21381,7 @@
       "meta-type": "object"
     },
     {
-      "name": "727",
+      "name": "729",
       "members": [
         {
           "name": "key-secret",
@@ -21390,7 +21391,7 @@
       "meta-type": "object"
     },
     {
-      "name": "728",
+      "name": "730",
       "members": [
         {
           "name": "key-secret",
@@ -21400,7 +21401,7 @@
       "meta-type": "object"
     },
     {
-      "name": "729",
+      "name": "731",
       "members": [
         {
           "name": "none"
@@ -21420,11 +21421,11 @@
       ]
     },
     {
-      "name": "730",
+      "name": "732",
       "members": [
         {
           "name": "type",
-          "type": "780"
+          "type": "782"
         },
         {
           "name": "hash",
@@ -21434,7 +21435,7 @@
       "meta-type": "object"
     },
     {
-      "name": "731",
+      "name": "733",
       "members": [
         {
           "name": "off"
@@ -21458,7 +21459,7 @@
       ]
     },
     {
-      "name": "732",
+      "name": "734",
       "members": [
         {
           "name": "aes-128"
@@ -21518,7 +21519,7 @@
       ]
     },
     {
-      "name": "733",
+      "name": "735",
       "members": [
         {
           "name": "ecb"
@@ -21542,7 +21543,7 @@
       ]
     },
     {
-      "name": "734",
+      "name": "736",
       "members": [
         {
           "name": "plain"
@@ -21562,7 +21563,7 @@
       ]
     },
     {
-      "name": "735",
+      "name": "737",
       "members": [
         {
           "name": "md5"
@@ -21584,6 +21585,9 @@
         },
         {
           "name": "ripemd160"
+        },
+        {
+          "name": "sm3"
         }
       ],
       "meta-type": "enum",
@@ -21594,32 +21598,33 @@
         "sha256",
         "sha384",
         "sha512",
-        "ripemd160"
+        "ripemd160",
+        "sm3"
       ]
     },
     {
-      "name": "736",
+      "name": "738",
       "tag": "format",
       "variants": [
         {
           "case": "qcow",
-          "type": "722"
+          "type": "724"
         },
         {
           "case": "luks",
-          "type": "782"
+          "type": "784"
         }
       ],
       "members": [
         {
           "name": "format",
-          "type": "781"
+          "type": "783"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "737",
+      "name": "739",
       "members": [
         {
           "name": "v2"
@@ -21635,7 +21640,7 @@
       ]
     },
     {
-      "name": "738",
+      "name": "740",
       "members": [
         {
           "name": "zlib"
@@ -21651,16 +21656,16 @@
       ]
     },
     {
-      "name": "739",
+      "name": "741",
       "tag": "format",
       "variants": [
         {
           "case": "luks",
-          "type": "783"
+          "type": "785"
         },
         {
           "case": "luks2",
-          "type": "784"
+          "type": "786"
         },
         {
           "case": "luks-any",
@@ -21670,13 +21675,13 @@
       "members": [
         {
           "name": "format",
-          "type": "725"
+          "type": "727"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "740",
+      "name": "742",
       "members": [
         {
           "name": "dynamic"
@@ -21692,7 +21697,7 @@
       ]
     },
     {
-      "name": "741",
+      "name": "743",
       "members": [
         {
           "name": "monolithicSparse"
@@ -21720,7 +21725,7 @@
       ]
     },
     {
-      "name": "742",
+      "name": "744",
       "members": [
         {
           "name": "ide"
@@ -21744,7 +21749,7 @@
       ]
     },
     {
-      "name": "743",
+      "name": "745",
       "members": [
         {
           "name": "dynamic"
@@ -21760,7 +21765,7 @@
       ]
     },
     {
-      "name": "744",
+      "name": "746",
       "members": [
         {
           "name": "active"
@@ -21776,12 +21781,12 @@
       ]
     },
     {
-      "name": "745",
+      "name": "747",
       "tag": "format",
       "variants": [
         {
           "case": "luks",
-          "type": "785"
+          "type": "787"
         },
         {
           "case": "qcow",
@@ -21791,13 +21796,13 @@
       "members": [
         {
           "name": "format",
-          "type": "781"
+          "type": "783"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "746",
+      "name": "748",
       "members": [
         {
           "name": "logfile",
@@ -21827,7 +21832,7 @@
       "meta-type": "object"
     },
     {
-      "name": "747",
+      "name": "749",
       "members": [
         {
           "name": "logfile",
@@ -21847,7 +21852,7 @@
       "meta-type": "object"
     },
     {
-      "name": "748",
+      "name": "750",
       "members": [
         {
           "name": "logfile",
@@ -21861,7 +21866,7 @@
         },
         {
           "name": "addr",
-          "type": "360"
+          "type": "361"
         },
         {
           "name": "tls-creds",
@@ -21920,7 +21925,7 @@
       "meta-type": "object"
     },
     {
-      "name": "749",
+      "name": "751",
       "members": [
         {
           "name": "logfile",
@@ -21934,18 +21939,18 @@
         },
         {
           "name": "remote",
-          "type": "360"
+          "type": "361"
         },
         {
           "name": "local",
           "default": null,
-          "type": "360"
+          "type": "361"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "750",
+      "name": "752",
       "members": [
         {
           "name": "logfile",
@@ -21966,7 +21971,7 @@
       "meta-type": "object"
     },
     {
-      "name": "751",
+      "name": "753",
       "members": [
         {
           "name": "logfile",
@@ -21982,7 +21987,7 @@
       "meta-type": "object"
     },
     {
-      "name": "752",
+      "name": "754",
       "members": [
         {
           "name": "logfile",
@@ -22002,7 +22007,7 @@
       "meta-type": "object"
     },
     {
-      "name": "753",
+      "name": "755",
       "members": [
         {
           "name": "logfile",
@@ -22023,7 +22028,7 @@
       "meta-type": "object"
     },
     {
-      "name": "757",
+      "name": "759",
       "members": [
         {
           "name": "logfile",
@@ -22043,7 +22048,7 @@
       "meta-type": "object"
     },
     {
-      "name": "758",
+      "name": "760",
       "members": [
         {
           "name": "logfile",
@@ -22079,7 +22084,7 @@
       "meta-type": "object"
     },
     {
-      "name": "759",
+      "name": "761",
       "members": [
         {
           "name": "logfile",
@@ -22100,7 +22105,7 @@
       "meta-type": "object"
     },
     {
-      "name": "760",
+      "name": "762",
       "members": [
         {
           "name": "path",
@@ -22116,7 +22121,7 @@
       "meta-type": "object"
     },
     {
-      "name": "761",
+      "name": "763",
       "members": [
         {
           "name": "chardev",
@@ -22126,7 +22131,7 @@
       "meta-type": "object"
     },
     {
-      "name": "762",
+      "name": "764",
       "members": [
         {
           "name": "unmapped"
@@ -22782,11 +22787,11 @@
       ]
     },
     {
-      "name": "763",
+      "name": "765",
       "members": [
         {
           "name": "key",
-          "type": "414"
+          "type": "415"
         },
         {
           "name": "down",
@@ -22796,11 +22801,11 @@
       "meta-type": "object"
     },
     {
-      "name": "764",
+      "name": "766",
       "members": [
         {
           "name": "button",
-          "type": "786"
+          "type": "788"
         },
         {
           "name": "down",
@@ -22810,11 +22815,11 @@
       "meta-type": "object"
     },
     {
-      "name": "765",
+      "name": "767",
       "members": [
         {
           "name": "axis",
-          "type": "787"
+          "type": "789"
         },
         {
           "name": "value",
@@ -22824,11 +22829,11 @@
       "meta-type": "object"
     },
     {
-      "name": "766",
+      "name": "768",
       "members": [
         {
           "name": "type",
-          "type": "788"
+          "type": "790"
         },
         {
           "name": "slot",
@@ -22840,7 +22845,7 @@
         },
         {
           "name": "axis",
-          "type": "787"
+          "type": "789"
         },
         {
           "name": "value",
@@ -22850,7 +22855,7 @@
       "meta-type": "object"
     },
     {
-      "name": "767",
+      "name": "769",
       "members": [
         {
           "name": "persistent",
@@ -22861,7 +22866,7 @@
       "meta-type": "object"
     },
     {
-      "name": "768",
+      "name": "770",
       "members": [
         {
           "name": "socket"
@@ -22885,7 +22890,7 @@
       ]
     },
     {
-      "name": "769",
+      "name": "771",
       "members": [
         {
           "name": "args",
@@ -22895,7 +22900,7 @@
       "meta-type": "object"
     },
     {
-      "name": "770",
+      "name": "772",
       "members": [
         {
           "name": "filename",
@@ -22909,12 +22914,12 @@
       "meta-type": "object"
     },
     {
-      "name": "771",
+      "name": "773",
       "members": [],
       "meta-type": "object"
     },
     {
-      "name": "772",
+      "name": "774",
       "members": [
         {
           "name": "exact"
@@ -22930,7 +22935,7 @@
       ]
     },
     {
-      "name": "773",
+      "name": "775",
       "members": [
         {
           "name": "u8"
@@ -22966,7 +22971,7 @@
       ]
     },
     {
-      "name": "774",
+      "name": "776",
       "members": [
         {
           "name": "number",
@@ -22982,21 +22987,21 @@
         },
         {
           "name": "io_range",
-          "type": "789"
+          "type": "791"
         },
         {
           "name": "memory_range",
-          "type": "789"
+          "type": "791"
         },
         {
           "name": "prefetchable_range",
-          "type": "789"
+          "type": "791"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "775",
+      "name": "777",
       "members": [
         {
           "name": "compat",
@@ -23034,22 +23039,22 @@
         {
           "name": "encrypt",
           "default": null,
-          "type": "790"
+          "type": "792"
         },
         {
           "name": "bitmaps",
           "default": null,
-          "type": "[791]"
+          "type": "[793]"
         },
         {
           "name": "compression-type",
-          "type": "738"
+          "type": "740"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "776",
+      "name": "778",
       "members": [
         {
           "name": "create-type",
@@ -23065,34 +23070,34 @@
         },
         {
           "name": "extents",
-          "type": "[792]"
+          "type": "[794]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "777",
+      "name": "779",
       "members": [
         {
           "name": "cipher-alg",
-          "type": "732"
+          "type": "734"
         },
         {
           "name": "cipher-mode",
-          "type": "733"
+          "type": "735"
         },
         {
           "name": "ivgen-alg",
-          "type": "734"
+          "type": "736"
         },
         {
           "name": "ivgen-hash-alg",
           "default": null,
-          "type": "735"
+          "type": "737"
         },
         {
           "name": "hash-alg",
-          "type": "735"
+          "type": "737"
         },
         {
           "name": "detached-header",
@@ -23112,24 +23117,24 @@
         },
         {
           "name": "slots",
-          "type": "[793]"
+          "type": "[795]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "778",
+      "name": "780",
       "members": [
         {
           "name": "encryption-format",
           "default": null,
-          "type": "725"
+          "type": "727"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "779",
+      "name": "781",
       "members": [
         {
           "name": "extent-size-hint",
@@ -23140,7 +23145,7 @@
       "meta-type": "object"
     },
     {
-      "name": "780",
+      "name": "782",
       "members": [
         {
           "name": "md5"
@@ -23160,7 +23165,7 @@
       ]
     },
     {
-      "name": "781",
+      "name": "783",
       "members": [
         {
           "name": "qcow"
@@ -23176,7 +23181,7 @@
       ]
     },
     {
-      "name": "782",
+      "name": "784",
       "members": [
         {
           "name": "key-secret",
@@ -23186,27 +23191,27 @@
         {
           "name": "cipher-alg",
           "default": null,
-          "type": "732"
+          "type": "734"
         },
         {
           "name": "cipher-mode",
           "default": null,
-          "type": "733"
+          "type": "735"
         },
         {
           "name": "ivgen-alg",
           "default": null,
-          "type": "734"
+          "type": "736"
         },
         {
           "name": "ivgen-hash-alg",
           "default": null,
-          "type": "735"
+          "type": "737"
         },
         {
           "name": "hash-alg",
           "default": null,
-          "type": "735"
+          "type": "737"
         },
         {
           "name": "iter-time",
@@ -23217,7 +23222,7 @@
       "meta-type": "object"
     },
     {
-      "name": "783",
+      "name": "785",
       "members": [
         {
           "name": "key-secret",
@@ -23226,13 +23231,13 @@
         {
           "name": "cipher-alg",
           "default": null,
-          "type": "732"
+          "type": "734"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "784",
+      "name": "786",
       "members": [
         {
           "name": "key-secret",
@@ -23241,17 +23246,17 @@
         {
           "name": "cipher-alg",
           "default": null,
-          "type": "732"
+          "type": "734"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "785",
+      "name": "787",
       "members": [
         {
           "name": "state",
-          "type": "744"
+          "type": "746"
         },
         {
           "name": "new-secret",
@@ -23282,7 +23287,7 @@
       "meta-type": "object"
     },
     {
-      "name": "786",
+      "name": "788",
       "members": [
         {
           "name": "left"
@@ -23330,7 +23335,7 @@
       ]
     },
     {
-      "name": "787",
+      "name": "789",
       "members": [
         {
           "name": "x"
@@ -23346,7 +23351,7 @@
       ]
     },
     {
-      "name": "788",
+      "name": "790",
       "members": [
         {
           "name": "begin"
@@ -23374,7 +23379,7 @@
       ]
     },
     {
-      "name": "789",
+      "name": "791",
       "members": [
         {
           "name": "base",
@@ -23388,12 +23393,12 @@
       "meta-type": "object"
     },
     {
-      "name": "790",
+      "name": "792",
       "tag": "format",
       "variants": [
         {
           "case": "luks",
-          "type": "777"
+          "type": "779"
         },
         {
           "case": "aes",
@@ -23403,18 +23408,18 @@
       "members": [
         {
           "name": "format",
-          "type": "721"
+          "type": "723"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[791]",
-      "element-type": "791",
+      "name": "[793]",
+      "element-type": "793",
       "meta-type": "array"
     },
     {
-      "name": "791",
+      "name": "793",
       "members": [
         {
           "name": "name",
@@ -23426,18 +23431,18 @@
         },
         {
           "name": "flags",
-          "type": "[794]"
+          "type": "[796]"
         }
       ],
       "meta-type": "object"
     },
     {
-      "name": "[792]",
-      "element-type": "792",
+      "name": "[794]",
+      "element-type": "794",
       "meta-type": "array"
     },
     {
-      "name": "792",
+      "name": "794",
       "members": [
         {
           "name": "filename",
@@ -23465,12 +23470,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[793]",
-      "element-type": "793",
+      "name": "[795]",
+      "element-type": "795",
       "meta-type": "array"
     },
     {
-      "name": "793",
+      "name": "795",
       "members": [
         {
           "name": "active",
@@ -23494,12 +23499,12 @@
       "meta-type": "object"
     },
     {
-      "name": "[794]",
-      "element-type": "794",
+      "name": "[796]",
+      "element-type": "796",
       "meta-type": "array"
     },
     {
-      "name": "794",
+      "name": "796",
       "members": [
         {
           "name": "in-use"
@@ -25112,6 +25117,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -25158,6 +25169,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -25547,6 +25562,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -25593,6 +25614,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -26032,6 +26057,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -26078,6 +26109,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -26316,11 +26351,6 @@
 
 {
   "return": [
-    {
-      "name": "loadparm",
-      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
-      "type": "ccw_loadparm"
-    },
     {
       "name": "dev_id",
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
@@ -26336,6 +26366,11 @@
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
       "type": "str"
     },
+    {
+      "name": "loadparm",
+      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
+      "type": "ccw_loadparm"
+    },
     {
       "default-value": 2,
       "name": "max_revision",
@@ -26607,11 +26642,6 @@
 
 {
   "return": [
-    {
-      "name": "loadparm",
-      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
-      "type": "ccw_loadparm"
-    },
     {
       "name": "dev_id",
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
@@ -26627,6 +26657,11 @@
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
       "type": "str"
     },
+    {
+      "name": "loadparm",
+      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
+      "type": "ccw_loadparm"
+    },
     {
       "default-value": 2,
       "name": "max_revision",
@@ -26953,11 +26988,6 @@
 
 {
   "return": [
-    {
-      "name": "loadparm",
-      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
-      "type": "ccw_loadparm"
-    },
     {
       "name": "dev_id",
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
@@ -27114,6 +27144,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -27160,6 +27196,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -27509,6 +27549,11 @@
       "description": "A power of two between 512 B and 2 MiB",
       "type": "size"
     },
+    {
+      "name": "loadparm",
+      "description": "load parameter (s390x only)",
+      "type": "string"
+    },
     {
       "default-value": true,
       "name": "migrate-emulated-scsi-request",
@@ -27811,6 +27856,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -27857,6 +27908,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -28239,6 +28294,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -28285,6 +28346,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -28512,11 +28577,6 @@
 
 {
   "return": [
-    {
-      "name": "loadparm",
-      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
-      "type": "ccw_loadparm"
-    },
     {
       "name": "dev_id",
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
@@ -28783,11 +28843,6 @@
 
 {
   "return": [
-    {
-      "name": "loadparm",
-      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
-      "type": "ccw_loadparm"
-    },
     {
       "name": "dev_id",
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
@@ -29149,6 +29204,12 @@
       "name": "romfile",
       "type": "str"
     },
+    {
+      "default-value": true,
+      "name": "x-pcie-ext-tag",
+      "description": "on/off",
+      "type": "bool"
+    },
     {
       "default-value": -1,
       "name": "addr",
@@ -29195,6 +29256,10 @@
       "description": "on/off",
       "type": "bool"
     },
+    {
+      "name": "busnr",
+      "type": "busnr"
+    },
     {
       "default-value": 0,
       "name": "acpi-index",
@@ -29411,11 +29476,6 @@
 
 {
   "return": [
-    {
-      "name": "loadparm",
-      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
-      "type": "ccw_loadparm"
-    },
     {
       "name": "dev_id",
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
@@ -29431,6 +29491,11 @@
       "description": "Read-only identifier of an I/O device in the channel subsystem, example: fe.1.23ab",
       "type": "str"
     },
+    {
+      "name": "loadparm",
+      "description": "Up to 8 chars in set of [A-Za-z0-9. ] to pass to the guest loader/kernel",
+      "type": "ccw_loadparm"
+    },
     {
       "default-value": 2,
       "name": "max_revision",
@@ -29992,7 +30057,7 @@
       "default-cpu-type": "host-s390x-cpu",
       "acpi": false,
       "cpu-max": 248,
-      "deprecated": false,
+      "deprecated": true,
       "default-ram-id": "s390.ram"
     },
     {
@@ -30221,6 +30286,11 @@
       "description": "Overrides the \"compatible\" property of the dt root node",
       "type": "string"
     },
+    {
+      "name": "suppress-vmdesc",
+      "description": "Set on to disable self-describing migration",
+      "type": "bool"
+    },
     {
       "name": "boot",
       "description": "Boot configuration",
@@ -30272,39 +30342,39 @@
       "type": "bool"
     },
     {
-      "name": "phandle-start",
-      "description": "The first phandle ID we may generate dynamically",
-      "type": "int"
+      "name": "smp-cache",
+      "description": "Cache properties list for SMP machine",
+      "type": "SmpCachePropertiesWrapper"
     },
     {
       "name": "dumpdtb",
       "description": "Dump current dtb to a file and quit",
       "type": "string"
     },
+    {
+      "name": "phandle-start",
+      "description": "The first phandle ID we may generate dynamically",
+      "type": "int"
+    },
     {
       "name": "memory-backend",
       "description": "Set RAM backendValid value is ID of hostmem based backend",
       "type": "link<memory-backend>"
     },
-    {
-      "name": "dtb",
-      "description": "Linux kernel device tree file",
-      "type": "string"
-    },
     {
       "name": "mem-merge",
       "description": "Enable/disable memory merge support",
       "type": "bool"
     },
     {
-      "name": "append",
-      "description": "Linux kernel command line",
+      "name": "dtb",
+      "description": "Linux kernel device tree file",
       "type": "string"
     },
     {
-      "name": "suppress-vmdesc",
-      "description": "Set on to disable self-describing migration",
-      "type": "bool"
+      "name": "append",
+      "description": "Linux kernel command line",
+      "type": "string"
     },
     {
       "name": "peripheral-anon",
@@ -31013,6 +31083,11 @@
           "help": "Overrides the \"compatible\" property of the dt root node",
           "type": "string"
         },
+        {
+          "name": "suppress-vmdesc",
+          "help": "Set on to disable self-describing migration",
+          "type": "boolean"
+        },
         {
           "name": "boot",
           "help": "Boot configuration",
@@ -31064,9 +31139,9 @@
           "type": "boolean"
         },
         {
-          "name": "phandle-start",
-          "help": "The first phandle ID we may generate dynamically",
-          "type": "number"
+          "name": "smp-cache",
+          "help": "Cache properties list for SMP machine",
+          "type": "string"
         },
         {
           "name": "dumpdtb",
@@ -31074,13 +31149,13 @@
           "type": "string"
         },
         {
-          "name": "memory-backend",
-          "help": "Set RAM backendValid value is ID of hostmem based backend",
-          "type": "string"
+          "name": "phandle-start",
+          "help": "The first phandle ID we may generate dynamically",
+          "type": "number"
         },
         {
-          "name": "dtb",
-          "help": "Linux kernel device tree file",
+          "name": "memory-backend",
+          "help": "Set RAM backendValid value is ID of hostmem based backend",
           "type": "string"
         },
         {
@@ -31089,14 +31164,14 @@
           "type": "boolean"
         },
         {
-          "name": "append",
-          "help": "Linux kernel command line",
+          "name": "dtb",
+          "help": "Linux kernel device tree file",
           "type": "string"
         },
         {
-          "name": "suppress-vmdesc",
-          "help": "Set on to disable self-describing migration",
-          "type": "boolean"
+          "name": "append",
+          "help": "Linux kernel command line",
+          "type": "string"
         },
         {
           "name": "loadparm",
@@ -32433,12 +32508,27 @@
     "model": {
       "name": "gen16a-base",
       "props": {
+        "pfmfi": false,
+        "exrl": true,
+        "stfle45": true,
         "nnpa": true,
+        "cmma": false,
+        "dateh2": true,
         "aen": true,
+        "gen13ptff": true,
+        "dateh": true,
         "cmmnt": true,
+        "iacc2": true,
+        "parseh": true,
+        "csst": true,
+        "idter": false,
+        "idtes": true,
+        "msa": true,
         "vxpdeh": true,
         "aefsi": true,
         "diag318": true,
+        "hpma2": false,
+        "csst2": true,
         "csske": true,
         "mepoch": true,
         "msa9": true,
@@ -32451,42 +32541,96 @@
         "msa2": true,
         "msa1": true,
         "sthyi": true,
+        "stckf": true,
+        "stfle": true,
+        "etf3": true,
+        "etf2": true,
         "edat": true,
+        "hfpm": true,
         "ri": true,
         "deflate": true,
         "edat2": true,
+        "hfpue": true,
+        "unpack": false,
+        "dfp": true,
+        "mvcos": true,
         "etoken": true,
+        "sprogp": true,
+        "sigpif": false,
+        "ldisphp": true,
         "vx": true,
         "ipter": true,
         "pai": true,
+        "emon": true,
+        "cei": false,
+        "cmpsceh": true,
+        "ginste": true,
         "paie": true,
+        "dfppc": true,
+        "dfpzc": true,
+        "dfphp": true,
+        "stfle49": true,
         "mepochptff": true,
+        "opc": true,
         "ap": true,
+        "asnlxr": true,
+        "gpereh": false,
+        "minste2": true,
         "vxeh": true,
         "vxpd": true,
         "esop": true,
+        "ectg": true,
+        "ib": false,
         "msa9_pckmo": true,
+        "siif": false,
         "vxeh2": true,
+        "tsi": true,
+        "tpei": false,
+        "esan3": true,
         "esort": true,
+        "fpe": true,
+        "ibs": false,
+        "zarch": true,
         "appv": true,
         "apqi": true,
         "apft": true,
+        "stfle53": true,
         "els": true,
+        "sief2": false,
+        "eimm": true,
         "iep": true,
+        "irbm": false,
+        "srs": true,
         "appvi": true,
         "apqci": true,
+        "kss": false,
         "cte": true,
         "ais": true,
+        "fpseh": true,
+        "ltlbc": true,
+        "ldisp": true,
         "bpb": true,
+        "64bscao": false,
         "ctop": true,
         "gs": true,
+        "sema": true,
+        "etf3eh": true,
+        "etf2eh": true,
+        "eec": true,
         "ppa15": true,
         "zpci": true,
         "rdp": true,
+        "nonqks": true,
         "sea_esop2": true,
+        "minste3": true,
         "beareh": true,
+        "pfpo": true,
         "te": true,
         "cmm": true,
+        "tods": true,
+        "plo": true,
+        "gsls": false,
+        "skey": false,
         "vxpdeh2": true
       }
     }
@@ -36879,7 +37023,7 @@
       "default-cpu-type": "qemu-s390x-cpu",
       "acpi": false,
       "cpu-max": 248,
-      "deprecated": false,
+      "deprecated": true,
       "default-ram-id": "s390.ram"
     },
     {
diff --git a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
index 767a95bd3e..49a4a14dc1 100644
--- a/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_9.2.0_s390x.xml
@@ -138,9 +138,9 @@
   <flag name='netdev-stream-reconnect-miliseconds'/>
   <flag name='query-cpu-model-expansion.deprecated-props'/>
   <flag name='migrate-incoming.exit-on-error'/>
-  <version>9001050</version>
+  <version>9002000</version>
   <microcodeVersion>39100247</microcodeVersion>
-  <package>v9.1.0-1348-g11b8920ed2</package>
+  <package>v9.2.0</package>
   <arch>s390x</arch>
   <hostCPU type='kvm' model='gen16a-base' migratability='no'>
     <property name='nnpa' type='boolean' value='true'/>
@@ -293,7 +293,7 @@
   <machine type='kvm' name='s390-ccw-virtio-2.8' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='kvm' name='s390-ccw-virtio-4.0' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='kvm' name='s390-ccw-virtio-8.2' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' acpi='no'/>
-  <machine type='kvm' name='s390-ccw-virtio-6.2' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' acpi='no'/>
+  <machine type='kvm' name='s390-ccw-virtio-6.2' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='kvm' name='s390-ccw-virtio-3.0' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='kvm' name='s390-ccw-virtio-2.5' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='kvm' name='s390-ccw-virtio-7.2' hotplugCpus='yes' maxCpus='248' defaultCPU='host-s390x-cpu' defaultRAMid='s390.ram' acpi='no'/>
@@ -3743,7 +3743,7 @@
   <machine type='tcg' name='s390-ccw-virtio-2.8' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='tcg' name='s390-ccw-virtio-4.0' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='tcg' name='s390-ccw-virtio-8.2' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' acpi='no'/>
-  <machine type='tcg' name='s390-ccw-virtio-6.2' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' acpi='no'/>
+  <machine type='tcg' name='s390-ccw-virtio-6.2' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='tcg' name='s390-ccw-virtio-3.0' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='tcg' name='s390-ccw-virtio-2.5' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' deprecated='yes' acpi='no'/>
   <machine type='tcg' name='s390-ccw-virtio-7.2' hotplugCpus='yes' maxCpus='248' defaultCPU='qemu-s390x-cpu' defaultRAMid='s390.ram' acpi='no'/>
-- 
2.47.0
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            2
                            
                          
                          
                            
    
                          
                        
                     
                        
                    11 Mar '25
                    
                        This series starts the work needed to obsolete the libvirt-guests.sh
script which has grown a surprisingly large amount of functionality.
Currently the virt daemons will acquire inhibitors to delay OS shutdown
when VMs are running. The libvirt-guests.service unit can be used to
call libvirt-guests.sh to shutdown running VMs on system shutdown.
This split is a bad architecture because libvirt-guests.service will
only run once the system has decided to initiate the shutdown sequence.
When the user requests as shutdown while inhibitors are present, logind
will emit a "PrepareForShutdown" signal over dbus. Applications are
supposed to respond to this by preserving state & releasing their
inhibitors, which in turns allows shutdown to be initiated.
The remote daemon already has support for listening for the
"PrepareForShutdown" signal, but only does this for session instances,
not system instances.
This series essentially takes that logic and expands it to run in the
system instances too, thus conceptually making libvirt-guests.service
obsolete.
It is slightly more complicated than that though for many reasons...
Saving running VMs can take a very long time. The inhibitor delay
can be as low as 5 seconds, and when killing a service, systemd may
not wait very long for it to terminate. libvirt-guests.service deals
with this by setting TimeoutStopSecs=0 to make systemd wait forever.
This is undesirable to set in libvirtd.service though, as we would
like systemd to kill the daemon aggressively if it hangs. The series
thus uses the notification protocol to request systemd give it more
time to shutdown, as long as we're in the phase of saving running
VMs. A bug in this code will still result in systemd waiting forever,
which is no different from libvirt-guests.service, but a bug in any
other part of the libvirt daemon shutdown code will result in systemd
killing us.
The existing logic for saving VMs in the session daemons had many
feature gaps compared to libvirt-guests.sh. Thus there is code to
add support
 * Requesting graceful OS shutdown if managed save failed
 * Force poweroff of VMs if no other action worked
 * Optionally enabling/disabling use of managed save,
   graceful shutdown and force poweroff, which is more flexible
   than ON_SHUTDOWN=nnn, as we can try the whole sequence of
   options
 * Ability to bypass cache in managed save
 * Support for one-time autostart of VMs as an official API
To aid in testing this logic, virt-admin gains a new command
 'virt-admin daemon-shutdown --preserve'
All this new functionality is wired up into the QEMU driver, and is
made easily accessible to other hypervisor drivers, so would easily
be extendable to Xen, CH, LXC drivers, but this is not done in this
series. IOW, libvirt-guests.service is not yet fully obsolete.
The new functionality is also not enabled by default for the system
daemon, it requires explicit admin changes to /etc/libvirt/qemu.conf
to enable it. This is because it would clash with execution of the
libvirt-guests.service if both were enabled.
It is highly desirable that we enable this by default though, so we
need to figure out a upgrade story wrt libvirt-guests.service.
The only libvirt-guests.sh features not implemented are:
 * PARALLEL_SHUTDOWN=nn.
   When doing a graceful shutdown we initiate it on every single VM
   at once, and then monitor progress of all of them in parallel.
 * SYNC_TIME=nn
   When make not attempt to sync guest time when restoring from
   managed save. This ought to be fixed
Daniel P. Berrangé (26):
  util: add APIs for more systemd notifications
  remote: notify systemd when reloading config
  hypervisor: introduce helper for autostart
  src: convert drivers over to use new autostart helper
  hypervisor: add support for delay interval during autostart
  qemu: add 'auto_start_delay' configuration parameter
  hypervisor: move support for auto-shutdown out of QEMU driver
  remote: always invoke virStateStop for all daemons
  hypervisor: expand available shutdown actions
  hypervisor: custom shutdown actions for transient vs persistent VMs
  qemu: support automatic VM managed save in system daemon
  qemu: improve shutdown defaults for session daemon
  qemu: configurable delay for shutdown before poweroff
  hypervisor: support bypassing cache for managed save
  qemu: add config parameter to control auto-save bypass cache
  src: add new APIs for marking a domain to autostart once
  conf: implement support for autostart once feature
  hypervisor: wire up support for auto restore of running domains
  qemu: wire up support for once only autostart
  qemu: add config to control if auto-shutdown VMs are restored
  rpc: move state stop into virNetDaemon class
  rpc: don't unconditionally quit after preserving state
  rpc: fix shutdown sequence when preserving state
  admin: add 'daemon-shutdown' command
  rpc: don't let systemd shutdown daemon while saving VMs
  hypervisor: send systemd status messages while saving
 include/libvirt/libvirt-admin.h     |  13 ++
 include/libvirt/libvirt-domain.h    |   4 +
 src/admin/admin_protocol.x          |  11 +-
 src/admin/admin_server_dispatch.c   |  13 ++
 src/admin/libvirt-admin.c           |  33 ++++
 src/admin/libvirt_admin_public.syms |   5 +
 src/bhyve/bhyve_driver.c            |  53 ++----
 src/conf/domain_conf.c              |   6 +-
 src/conf/domain_conf.h              |   1 +
 src/conf/virdomainobjlist.c         |   7 +-
 src/driver-hypervisor.h             |  10 ++
 src/hypervisor/domain_driver.c      | 250 ++++++++++++++++++++++++++++
 src/hypervisor/domain_driver.h      |  42 +++++
 src/libvirt-domain.c                |  87 ++++++++++
 src/libvirt_private.syms            |  10 +-
 src/libvirt_public.syms             |   6 +
 src/libvirt_remote.syms             |   2 +-
 src/libxl/libxl_driver.c            |  36 ++--
 src/lxc/lxc_driver.c                |  13 +-
 src/lxc/lxc_process.c               |  18 +-
 src/lxc/lxc_process.h               |   2 +
 src/qemu/libvirtd_qemu.aug          |   7 +
 src/qemu/qemu.conf.in               |  59 +++++++
 src/qemu/qemu_conf.c                |  63 +++++++
 src/qemu/qemu_conf.h                |   7 +
 src/qemu/qemu_driver.c              | 203 +++++++++++++---------
 src/qemu/test_libvirtd_qemu.aug.in  |   7 +
 src/remote/libvirtd.service.in      |   2 +-
 src/remote/remote_daemon.c          |  78 +++------
 src/remote/remote_driver.c          |   2 +
 src/remote/remote_protocol.x        |  30 +++-
 src/remote_protocol-structs         |  12 ++
 src/rpc/gendispatch.pl              |   4 +-
 src/rpc/virnetdaemon.c              | 212 +++++++++++++++++++----
 src/rpc/virnetdaemon.h              |  20 ++-
 src/util/virsystemd.c               |  41 ++++-
 src/util/virsystemd.h               |   6 +-
 src/virtd.service.in                |   2 +-
 tools/virsh-domain-monitor.c        |   5 +
 tools/virsh-domain.c                |  39 ++++-
 tools/virt-admin.c                  |  41 +++++
 41 files changed, 1181 insertions(+), 281 deletions(-)
-- 
2.47.1
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            73
                            
                          
                          
                            
    
                          
                        
                    
                    
                        Builds for Linux without libnl is broken since commit
582f0966f9b9e2148d8887d072364e2a91aed000 so make libnl mandatory for
Linux.
Another option is to fix such builds, but it can bring more problems
than benefits. libnl is available on all supported distributions so the
only practical situation to lack libnl is that a developer does not have
a development package of libnl installed. Enabling builds in such a
situation make developers use builds divergent from CI and end-user
scenarios, which has some implications.
Builds without libnl lack several features such as SR-IOV,
bridge/tap, switchdev, macvlan, veth, and vlan. Some part of libvirt
may expect these features are readily available on Linux, and the lack
of libnl may cause a build failure like one mentioned earlier or runtime
errors even harder to debug.
Developers will then be forced to debug such bugs and to choose either
fixing the build configuration that has no real user or work around the
issue by installing the development package.
In any case, the bridge/tap configuration is one of the fundamental
features and developers are likely to want libnl for it.
Save the potential trouble for developers by requiring libnl for Linux
and let Meson direct them to install libnl.
Signed-off-by: Akihiko Odaki <akihiko.odaki(a)daynix.com>
---
Supersedes: <20250307-nl-v1-1-c66fc2bf8703(a)daynix.com>
("[PATCH] util: Check libnl function availability")
---
 libvirt.spec.in                  |   2 -
 meson.build                      |  16 +--
 meson_options.txt                |   1 -
 src/util/virnetdev.c             | 223 +++++++++++++++----------------------
 src/util/virnetdevbridge.c       |  27 +----
 src/util/virnetdevip.c           | 230 +++++++++++++++++++--------------------
 src/util/virnetdevmacvlan.c      |   6 +-
 src/util/virnetdevveth.c         |  35 ------
 src/util/virnetdevvportprofile.c |   8 +-
 src/util/virnetlink.c            |   8 +-
 src/util/virnetlink.h            |   4 +-
 tests/virnetdevtest.c            |   8 --
 12 files changed, 222 insertions(+), 346 deletions(-)
diff --git a/libvirt.spec.in b/libvirt.spec.in
index cb41ea1de1c6cd3d3d5f8c810d0df7be4f7d490f..9396029dd394d218f2c1c01740ad41754786dd04 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -1421,7 +1421,6 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/libvirt.spec)
            -Dlibpcap=enabled \
            %{?arg_nbdkit} \
            %{?arg_nbdkit_config_default} \
-           -Dlibnl=enabled \
            -Daudit=enabled \
            -Ddtrace=enabled \
            -Dfirewalld=enabled \
@@ -1493,7 +1492,6 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/libvirt.spec)
   -Dlibiscsi=disabled \
   -Dnbdkit=disabled \
   -Dnbdkit_config_default=disabled \
-  -Dlibnl=disabled \
   -Dlibpcap=disabled \
   -Dlibssh2=disabled \
   -Dlibssh=disabled \
diff --git a/meson.build b/meson.build
index 2d76a0846c6b94f8d168d25f09dd60954db770cb..fd90bb5b3005ac7ece24da4432fad78bdffdefe7 100644
--- a/meson.build
+++ b/meson.build
@@ -1086,18 +1086,10 @@ endif
 conf.set10('USE_NBDKIT_DEFAULT', use_nbdkit_default)
 
 libnl_version = '3.0'
-if not get_option('libnl').disabled() and host_machine.system() == 'linux'
-  libnl_dep = dependency('libnl-3.0', version: '>=' + libnl_version, required: get_option('libnl'))
-  libnl_route_dep = dependency('libnl-route-3.0', version: '>=' + libnl_version, required: get_option('libnl'))
-
-  if libnl_dep.found() and libnl_route_dep.found()
-    libnl_dep = declare_dependency(
-      dependencies: [ libnl_dep, libnl_route_dep ],
-    )
-    conf.set('WITH_LIBNL', 1)
-  endif
-elif get_option('libnl').enabled()
-  error('libnl can be enabled only on linux')
+if host_machine.system() == 'linux'
+  libnl_dep = dependency('libnl-3.0', version: '>=' + libnl_version)
+  libnl_route_dep = dependency('libnl-route-3.0', version: '>=' + libnl_version)
+  libnl_dep = declare_dependency(dependencies: [ libnl_dep, libnl_route_dep ])
 else
   libnl_dep = dependency('', required: false)
 endif
diff --git a/meson_options.txt b/meson_options.txt
index 3dc3e8667bb2cf73d96cd1ebe046590be55a5df8..bbcc13e8d8efa4c56cc3e0dc17386ccfd45b2b50 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -30,7 +30,6 @@ option('fuse', type: 'feature', value: 'auto', description: 'fuse support')
 option('glusterfs', type: 'feature', value: 'auto', description: 'glusterfs support')
 option('json_c', type: 'feature', value: 'auto', description: 'JSON-C support')
 option('libiscsi', type: 'feature', value: 'auto', description: 'libiscsi support')
-option('libnl', type: 'feature', value: 'auto', description: 'libnl support')
 option('libpcap', type: 'feature', value: 'auto', description: 'libpcap support')
 option('libssh', type: 'feature', value: 'auto', description: 'libssh support')
 option('libssh2', type: 'feature', value: 'auto', description: 'libssh2 support')
diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c
index 8ae854245ed99dc1a3aa4c225b614ddbb449caf8..4129768bd42e7b1b2a9e7b24148627d1abe5458a 100644
--- a/src/util/virnetdev.c
+++ b/src/util/virnetdev.c
@@ -884,7 +884,7 @@ int virNetDevGetIndex(const char *ifname G_GNUC_UNUSED,
 #endif /* ! SIOCGIFINDEX */
 
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 /**
  * virNetDevGetMaster:
  * @ifname: name of interface we're interested in
@@ -914,29 +914,6 @@ virNetDevGetMaster(const char *ifname, char **master)
     return 0;
 }
 
-#elif defined(__linux__)
-
-/* libnl isn't available, so we can't use netlink.
- * Fall back to using sysfs
- */
-int
-virNetDevGetMaster(const char *ifname, char **master)
-{
-    g_autofree char *path = NULL;
-    g_autofree char *canonical = NULL;
-
-    if (virNetDevSysfsFile(&path, ifname, "master") < 0)
-        return -1;
-
-    if (!(canonical = virFileCanonicalizePath(path)))
-        return -1;
-
-    *master = g_path_get_basename(canonical);
-
-    VIR_DEBUG("IFLA_MASTER for %s is %s", ifname, *master ? *master : "(none)");
-    return 0;
-}
-
 #else
 
 int
@@ -949,7 +926,7 @@ virNetDevGetMaster(const char *ifname G_GNUC_UNUSED,
 }
 
 
-#endif /* defined(WITH_LIBNL) */
+#endif /* defined(__linux__) */
 
 
 #if __linux__
@@ -1079,8 +1056,6 @@ virNetDevSysfsDeviceFile(char **pf_sysfs_device_link, const char *ifname,
 }
 
 
-# if defined(WITH_LIBNL)
-
 /**
  * Determine if the device path specified in devpath is a PCI Device
  * by resolving the 'subsystem'-link in devpath and looking for
@@ -1133,7 +1108,6 @@ virNetDevGetPCIDevice(const char *devName)
 
     return virPCIDeviceNew(vfPCIAddr);
 }
-# endif
 
 
 /* A wrapper to get content of file from ifname SYSFS_NET_DIR
@@ -1381,99 +1355,6 @@ virNetDevGetVirtualFunctionInfo(const char *vfname, char **pfname,
     return ret;
 }
 
-#else /* !__linux__ */
-int
-virNetDevGetPhysPortID(const char *ifname G_GNUC_UNUSED,
-                       char **physPortID)
-{
-    /* this actually should never be called, and is just here to
-     * satisfy the linker.
-     */
-    *physPortID = NULL;
-    return 0;
-}
-
-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,
-                             virPCIVirtualFunctionList **vfs G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to get virtual functions on this platform"));
-    return -1;
-}
-
-int
-virNetDevIsVirtualFunction(const char *ifname G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to check virtual function status on this platform"));
-    return -1;
-}
-
-int
-virNetDevGetVirtualFunctionIndex(const char *pfname G_GNUC_UNUSED,
-                                 const char *vfname G_GNUC_UNUSED,
-                                 int *vf_index G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to get virtual function index on this platform"));
-    return -1;
-}
-
-int
-virNetDevGetPhysicalFunction(const char *ifname G_GNUC_UNUSED,
-                             char **pfname G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to get physical function status on this platform"));
-    return -1;
-}
-
-int
-virNetDevPFGetVF(const char *pfname G_GNUC_UNUSED,
-                 int vf G_GNUC_UNUSED,
-                 char **vfname G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to get virtual function name on this platform"));
-    return -1;
-}
-
-int
-virNetDevGetVirtualFunctionInfo(const char *vfname G_GNUC_UNUSED,
-                                char **pfname G_GNUC_UNUSED,
-                                int *vf G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to get virtual function info on this platform"));
-    return -1;
-}
-
-int
-virNetDevSysfsFile(char **pf_sysfs_device_link G_GNUC_UNUSED,
-                   const char *ifname G_GNUC_UNUSED,
-                   const char *file G_GNUC_UNUSED)
-{
-    virReportSystemError(ENOSYS, "%s",
-                         _("Unable to get sysfs info on this platform"));
-    return -1;
-}
-
-
-#endif /* !__linux__ */
-#if defined(WITH_LIBNL)
-
 
 static virMacAddr zeroMAC = { .addr = { 0, 0, 0, 0, 0, 0 } };
 
@@ -2379,8 +2260,94 @@ virNetDevSetNetConfig(const char *linkdev, int vf,
     return 0;
 }
 
+#else /* !__linux__ */
+int
+virNetDevGetPhysPortID(const char *ifname G_GNUC_UNUSED,
+                       char **physPortID)
+{
+    /* this actually should never be called, and is just here to
+     * satisfy the linker.
+     */
+    *physPortID = NULL;
+    return 0;
+}
+
+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,
+                             virPCIVirtualFunctionList **vfs G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to get virtual functions on this platform"));
+    return -1;
+}
+
+int
+virNetDevIsVirtualFunction(const char *ifname G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to check virtual function status on this platform"));
+    return -1;
+}
+
+int
+virNetDevGetVirtualFunctionIndex(const char *pfname G_GNUC_UNUSED,
+                                 const char *vfname G_GNUC_UNUSED,
+                                 int *vf_index G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to get virtual function index on this platform"));
+    return -1;
+}
+
+int
+virNetDevGetPhysicalFunction(const char *ifname G_GNUC_UNUSED,
+                             char **pfname G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to get physical function status on this platform"));
+    return -1;
+}
 
-#else /* defined(WITH_LIBNL) */
+int
+virNetDevPFGetVF(const char *pfname G_GNUC_UNUSED,
+                 int vf G_GNUC_UNUSED,
+                 char **vfname G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to get virtual function name on this platform"));
+    return -1;
+}
+
+int
+virNetDevGetVirtualFunctionInfo(const char *vfname G_GNUC_UNUSED,
+                                char **pfname G_GNUC_UNUSED,
+                                int *vf G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to get virtual function info on this platform"));
+    return -1;
+}
+
+int
+virNetDevSysfsFile(char **pf_sysfs_device_link G_GNUC_UNUSED,
+                   const char *ifname G_GNUC_UNUSED,
+                   const char *file G_GNUC_UNUSED)
+{
+    virReportSystemError(ENOSYS, "%s",
+                         _("Unable to get sysfs info on this platform"));
+    return -1;
+}
 
 
 int
@@ -2477,7 +2444,7 @@ virNetDevSetVfConfig(const char *ifname G_GNUC_UNUSED,
 }
 
 
-#endif /* defined(WITH_LIBNL) */
+#endif /* defined(__linux__) */
 
 VIR_ENUM_IMPL(virNetDevIfState,
               VIR_NETDEV_IF_STATE_LAST,
@@ -3095,8 +3062,6 @@ virNetDevGetEthtoolFeatures(const char *ifname,
 }
 
 
-# if defined(WITH_LIBNL)
-
 /**
  * virNetDevGetFamilyId:
  * This function supplies the devlink family id
@@ -3237,14 +3202,6 @@ virNetDevSwitchdevFeature(const char *ifname,
     nlmsg_free(nl_msg);
     return ret;
 }
-# else
-static int
-virNetDevSwitchdevFeature(const char *ifname G_GNUC_UNUSED,
-                          virBitmap **out G_GNUC_UNUSED)
-{
-    return 0;
-}
-# endif
 
 
 /**
diff --git a/src/util/virnetdevbridge.c b/src/util/virnetdevbridge.c
index c79d0c79b7b16a0a070b5013ed7df9d0a63b1c38..45f8dd7e15286b875f5b54ad147b32323886e1f0 100644
--- a/src/util/virnetdevbridge.c
+++ b/src/util/virnetdevbridge.c
@@ -30,9 +30,7 @@
 #endif
 
 #ifdef __linux__
-# if defined(WITH_LIBNL)
-#  include "virnetlink.h"
-# endif
+# include "virnetlink.h"
 # include <linux/sockios.h>
 # include <linux/param.h>     /* HZ                 */
 # include <linux/in6.h>
@@ -479,7 +477,7 @@ virNetDevBridgeCreateWithIoctl(const char *brname,
 }
 #endif
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 int
 virNetDevBridgeCreate(const char *brname,
                       const virMacAddr *mac)
@@ -509,15 +507,6 @@ virNetDevBridgeCreate(const char *brname,
 }
 
 
-#elif defined(WITH_STRUCT_IFREQ) && defined(SIOCBRADDBR)
-int
-virNetDevBridgeCreate(const char *brname,
-                      const virMacAddr *mac)
-{
-    return virNetDevBridgeCreateWithIoctl(brname, mac);
-}
-
-
 #elif defined(WITH_STRUCT_IFREQ) && defined(SIOCIFCREATE2)
 int
 virNetDevBridgeCreate(const char *brname,
@@ -590,7 +579,7 @@ virNetDevBridgeDeleteWithIoctl(const char *brname)
 #endif
 
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 int
 virNetDevBridgeDelete(const char *brname)
 {
@@ -606,14 +595,6 @@ virNetDevBridgeDelete(const char *brname)
 }
 
 
-#elif defined(WITH_STRUCT_IFREQ) && defined(SIOCBRDELBR)
-int
-virNetDevBridgeDelete(const char *brname)
-{
-    return virNetDevBridgeDeleteWithIoctl(brname);
-}
-
-
 #elif defined(WITH_STRUCT_IFREQ) && defined(SIOCIFDESTROY)
 int
 virNetDevBridgeDelete(const char *brname)
@@ -1020,7 +1001,7 @@ virNetDevBridgeSetVlanFiltering(const char *brname G_GNUC_UNUSED,
 #endif
 
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 
 # ifndef NTF_SELF
 #  define NTF_SELF 0x02
diff --git a/src/util/virnetdevip.c b/src/util/virnetdevip.c
index f365c1999c3d358a6a7b56ebda9f318c25fe96fd..acb0f41321b3d1d0f83fcf808ea9f95ffd9ddd46 100644
--- a/src/util/virnetdevip.c
+++ b/src/util/virnetdevip.c
@@ -52,7 +52,7 @@
 
 VIR_LOG_INIT("util.netdevip");
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 
 static int
 virNetDevGetIPAddressBinary(virSocketAddr *addr, void **data, size_t *len)
@@ -361,7 +361,118 @@ virNetDevIPRouteAdd(const char *ifname,
 }
 
 
-#else /* defined(WITH_LIBNL) */
+static int
+virNetDevIPGetAcceptRA(const char *ifname)
+{
+    g_autofree char *path = NULL;
+    g_autofree char *buf = NULL;
+    char *suffix;
+    int accept_ra = -1;
+
+    path = g_strdup_printf("/proc/sys/net/ipv6/conf/%s/accept_ra",
+                           ifname ? ifname : "all");
+
+    if ((virFileReadAll(path, 512, &buf) < 0) ||
+        (virStrToLong_i(buf, &suffix, 10, &accept_ra) < 0))
+        return -1;
+
+    return accept_ra;
+}
+
+/**
+ * virNetDevIPCheckIPv6Forwarding
+ *
+ * This function checks if IPv6 routes have the RTF_ADDRCONF flag set,
+ * indicating they have been created by the kernel's RA configuration
+ * handling.  These routes are subject to being flushed when ipv6
+ * forwarding is enabled unless accept_ra is explicitly set to "2".
+ * This will most likely result in ipv6 networking being broken.
+ *
+ * Returns: true if it is safe to enable forwarding, or false if
+ *          breakable routes are found.
+ *
+ **/
+bool
+virNetDevIPCheckIPv6Forwarding(void)
+{
+    int len;
+    char *cur;
+    g_autofree char *buf = NULL;
+    /* lines are 150 chars */
+    enum {MAX_ROUTE_SIZE = 150*1000000};
+
+    /* This is /proc/sys/net/ipv6/conf/all/accept_ra */
+    int all_accept_ra = virNetDevIPGetAcceptRA(NULL);
+
+    /* Read ipv6 routes */
+    if ((len = virFileReadAll(PROC_NET_IPV6_ROUTE,
+                              MAX_ROUTE_SIZE, &buf)) < 0) {
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("Unable to read %1$s for ipv6 forwarding checks"),
+                       PROC_NET_IPV6_ROUTE);
+        return false;
+    }
+
+    /* Dropping the last character to stop the loop */
+    if (len > 0)
+        buf[len-1] = '\0';
+
+    cur = buf;
+    while (cur) {
+        char route[33], flags[9], iface[9];
+        unsigned int flags_val;
+        char *iface_val;
+        int num;
+        char *nl = strchr(cur, '\n');
+
+        if (nl)
+            *nl++ = '\0';
+
+        num = sscanf(cur, "%32s %*s %*s %*s %*s %*s %*s %*s %8s %8s",
+                     route, flags, iface);
+
+        cur = nl;
+        if (num != 3) {
+            VIR_DEBUG("Failed to parse route line: %s", cur);
+            continue;
+        }
+
+        if (virStrToLong_ui(flags, NULL, 16, &flags_val)) {
+            VIR_DEBUG("Failed to parse flags: %s", flags);
+            continue;
+        }
+
+        /* This is right justified, strip leading spaces */
+        iface_val = &iface[0];
+        while (*iface_val && g_ascii_isspace(*iface_val))
+            iface_val++;
+
+        VIR_DEBUG("%s iface %s flags %s : RTF_ADDRCONF %sset",
+                  route, iface_val, flags,
+                  (flags_val & RTF_ADDRCONF ? "" : "not "));
+
+        if (flags_val & RTF_ADDRCONF) {
+            int ret = virNetDevIPGetAcceptRA(iface_val);
+            VIR_DEBUG("%s reports accept_ra of %d",
+                      iface_val, ret);
+            /* If the interface for this autoconfigured route
+             * has accept_ra == 1, or it is default and the "all"
+             * value of accept_ra == 1, it will be subject to
+             * flushing if forwarding is enabled.
+             */
+            if (ret == 1 || (ret == 0 && all_accept_ra == 1)) {
+                virReportError(VIR_ERR_INTERNAL_ERROR,
+                               _("Check the host setup: interface %1$s has kernel autoconfigured IPv6 routes and enabling forwarding without accept_ra set to 2 will cause the kernel to flush them, breaking networking."),
+                               iface_val);
+                return false;
+            }
+        }
+    }
+    return true;
+}
+
+
+#else /* defined(__linux__) */
 
 
 int
@@ -482,121 +593,6 @@ virNetDevIPRouteAdd(const char *ifname,
     return 0;
 }
 
-#endif /* defined(HAVE_LIBNL) */
-
-
-#if defined(__linux__)
-
-static int
-virNetDevIPGetAcceptRA(const char *ifname)
-{
-    g_autofree char *path = NULL;
-    g_autofree char *buf = NULL;
-    char *suffix;
-    int accept_ra = -1;
-
-    path = g_strdup_printf("/proc/sys/net/ipv6/conf/%s/accept_ra",
-                           ifname ? ifname : "all");
-
-    if ((virFileReadAll(path, 512, &buf) < 0) ||
-        (virStrToLong_i(buf, &suffix, 10, &accept_ra) < 0))
-        return -1;
-
-    return accept_ra;
-}
-
-/**
- * virNetDevIPCheckIPv6Forwarding
- *
- * This function checks if IPv6 routes have the RTF_ADDRCONF flag set,
- * indicating they have been created by the kernel's RA configuration
- * handling.  These routes are subject to being flushed when ipv6
- * forwarding is enabled unless accept_ra is explicitly set to "2".
- * This will most likely result in ipv6 networking being broken.
- *
- * Returns: true if it is safe to enable forwarding, or false if
- *          breakable routes are found.
- *
- **/
-bool
-virNetDevIPCheckIPv6Forwarding(void)
-{
-    int len;
-    char *cur;
-    g_autofree char *buf = NULL;
-    /* lines are 150 chars */
-    enum {MAX_ROUTE_SIZE = 150*1000000};
-
-    /* This is /proc/sys/net/ipv6/conf/all/accept_ra */
-    int all_accept_ra = virNetDevIPGetAcceptRA(NULL);
-
-    /* Read ipv6 routes */
-    if ((len = virFileReadAll(PROC_NET_IPV6_ROUTE,
-                              MAX_ROUTE_SIZE, &buf)) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Unable to read %1$s for ipv6 forwarding checks"),
-                       PROC_NET_IPV6_ROUTE);
-        return false;
-    }
-
-    /* Dropping the last character to stop the loop */
-    if (len > 0)
-        buf[len-1] = '\0';
-
-    cur = buf;
-    while (cur) {
-        char route[33], flags[9], iface[9];
-        unsigned int flags_val;
-        char *iface_val;
-        int num;
-        char *nl = strchr(cur, '\n');
-
-        if (nl)
-            *nl++ = '\0';
-
-        num = sscanf(cur, "%32s %*s %*s %*s %*s %*s %*s %*s %8s %8s",
-                     route, flags, iface);
-
-        cur = nl;
-        if (num != 3) {
-            VIR_DEBUG("Failed to parse route line: %s", cur);
-            continue;
-        }
-
-        if (virStrToLong_ui(flags, NULL, 16, &flags_val)) {
-            VIR_DEBUG("Failed to parse flags: %s", flags);
-            continue;
-        }
-
-        /* This is right justified, strip leading spaces */
-        iface_val = &iface[0];
-        while (*iface_val && g_ascii_isspace(*iface_val))
-            iface_val++;
-
-        VIR_DEBUG("%s iface %s flags %s : RTF_ADDRCONF %sset",
-                  route, iface_val, flags,
-                  (flags_val & RTF_ADDRCONF ? "" : "not "));
-
-        if (flags_val & RTF_ADDRCONF) {
-            int ret = virNetDevIPGetAcceptRA(iface_val);
-            VIR_DEBUG("%s reports accept_ra of %d",
-                      iface_val, ret);
-            /* If the interface for this autoconfigured route
-             * has accept_ra == 1, or it is default and the "all"
-             * value of accept_ra == 1, it will be subject to
-             * flushing if forwarding is enabled.
-             */
-            if (ret == 1 || (ret == 0 && all_accept_ra == 1)) {
-                virReportError(VIR_ERR_INTERNAL_ERROR,
-                               _("Check the host setup: interface %1$s has kernel autoconfigured IPv6 routes and enabling forwarding without accept_ra set to 2 will cause the kernel to flush them, breaking networking."),
-                               iface_val);
-                return false;
-            }
-        }
-    }
-    return true;
-}
-#else
 
 bool
 virNetDevIPCheckIPv6Forwarding(void)
diff --git a/src/util/virnetdevmacvlan.c b/src/util/virnetdevmacvlan.c
index cde9d70eefd047dc5c16056f6697cf4d05bc0795..c8a7a92eb6d8bedc3b1a838ac867e9b104cc5cb0 100644
--- a/src/util/virnetdevmacvlan.c
+++ b/src/util/virnetdevmacvlan.c
@@ -35,7 +35,7 @@ VIR_ENUM_IMPL(virNetDevMacVLanMode,
               "passthrough",
 );
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 # include <fcntl.h>
 
 # include <net/if.h>
@@ -859,7 +859,7 @@ int virNetDevMacVLanRestartWithVPortProfile(const char *cr_ifname,
 
 }
 
-#else /* ! WITH_LIBNL */
+#else /* ! __linux__ */
 bool virNetDevMacVLanIsMacvtap(const char *ifname G_GNUC_UNUSED)
 {
     virReportSystemError(ENOSYS, "%s",
@@ -959,4 +959,4 @@ int virNetDevMacVLanVPortProfileRegisterCallback(const char *ifname G_GNUC_UNUSE
                          _("Cannot create macvlan devices on this platform"));
     return -1;
 }
-#endif /* ! WITH_LIBNL */
+#endif /* ! __linux__ */
diff --git a/src/util/virnetdevveth.c b/src/util/virnetdevveth.c
index 4365345664c50f47680d5fdb74d616ac989a57c9..7c4a36d3d54c4da34cb2049966d142f1b6974278 100644
--- a/src/util/virnetdevveth.c
+++ b/src/util/virnetdevveth.c
@@ -32,7 +32,6 @@
 VIR_LOG_INIT("util.netdevveth");
 
 
-#if defined(WITH_LIBNL)
 static int
 virNetDevVethCreateInternal(const char *veth1, const char *veth2)
 {
@@ -56,40 +55,6 @@ virNetDevVethDeleteInternal(const char *veth)
 {
     return virNetlinkDelLink(veth, NULL);
 }
-#else
-static int
-virNetDevVethCreateInternal(const char *veth1, const char *veth2)
-{
-    g_autoptr(virCommand) cmd = virCommandNew("ip");
-    virCommandAddArgList(cmd, "link", "add", veth1, "type", "veth",
-                         "peer", "name", veth2, NULL);
-
-    return virCommandRun(cmd, NULL);
-}
-
-static int
-virNetDevVethDeleteInternal(const char *veth)
-{
-    int status;
-    g_autoptr(virCommand) cmd = virCommandNewArgList("ip", "link",
-                                                     "del", veth, NULL);
-
-    if (virCommandRun(cmd, &status) < 0)
-        return -1;
-
-    if (status != 0) {
-        if (!virNetDevExists(veth)) {
-            VIR_DEBUG("Device %s already deleted (by kernel namespace cleanup)", veth);
-            return 0;
-        }
-        virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to delete veth device %1$s"), veth);
-        return -1;
-    }
-
-    return 0;
-}
-#endif /* WITH_LIBNL */
 
 /**
  * virNetDevVethCreate:
diff --git a/src/util/virnetdevvportprofile.c b/src/util/virnetdevvportprofile.c
index c755fa79ec02e0e77b06bf6a3b6f42e24421e7dc..26be6e91319b98539927e6079596b976af207642 100644
--- a/src/util/virnetdevvportprofile.c
+++ b/src/util/virnetdevvportprofile.c
@@ -46,7 +46,7 @@ VIR_ENUM_IMPL(virNetDevVPortProfileOp,
               "no-op",
 );
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 
 # include <fcntl.h>
 
@@ -446,7 +446,7 @@ int virNetDevVPortProfileMerge3(virNetDevVPortProfile **result,
 }
 
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 
 static struct nla_policy ifla_port_policy[IFLA_PORT_MAX + 1] =
 {
@@ -1327,7 +1327,7 @@ virNetDevVPortProfileDisassociate(const char *macvtap_ifname,
     return rc;
 }
 
-#else /* !WITH_LIBNL */
+#else /* !__linux__ */
 int virNetDevVPortProfileAssociate(const char *macvtap_ifname G_GNUC_UNUSED,
                                    const virNetDevVPortProfile *virtPort G_GNUC_UNUSED,
                                    const virMacAddr *macvtap_macaddr G_GNUC_UNUSED,
@@ -1353,4 +1353,4 @@ int virNetDevVPortProfileDisassociate(const char *macvtap_ifname G_GNUC_UNUSED,
                          _("Virtual port profile association not supported on this platform"));
     return -1;
 }
-#endif /* !WITH_LIBNL */
+#endif /* !__linux__ */
diff --git a/src/util/virnetlink.c b/src/util/virnetlink.c
index 206646d9d794d833de90266d4ab7cec015552137..0bb0ef23da28f2810d4e31c1bf9017545f11d0b9 100644
--- a/src/util/virnetlink.c
+++ b/src/util/virnetlink.c
@@ -37,7 +37,7 @@ VIR_LOG_INIT("util.netlink");
 
 #define NETLINK_ACK_TIMEOUT_S  (2*1000)
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 
 # include <linux/veth.h>
 
@@ -1267,11 +1267,7 @@ virNetlinkEventRemoveClient(int watch, const virMacAddr *macaddr,
 
 #else
 
-# if defined(__linux__)
-static const char *unsupported = N_("libnl was not available at build time");
-# else
 static const char *unsupported = N_("not supported on non-linux platforms");
-# endif
 
 int
 virNetlinkStartup(void)
@@ -1435,4 +1431,4 @@ virNetlinkGetErrorCode(struct nlmsghdr *resp G_GNUC_UNUSED,
     return -EINVAL;
 }
 
-#endif /* WITH_LIBNL */
+#endif /* __linux__ */
diff --git a/src/util/virnetlink.h b/src/util/virnetlink.h
index 327fb426a1d898398a60e46d3ee8fc554a2db548..56ee48161ada307e8af0bd2d4b8d7497a43e075c 100644
--- a/src/util/virnetlink.h
+++ b/src/util/virnetlink.h
@@ -22,7 +22,7 @@
 #include "internal.h"
 #include "virmacaddr.h"
 
-#if defined(WITH_LIBNL)
+#if defined(__linux__)
 
 # include <netlink/msg.h>
 # include <linux/if_bridge.h>
@@ -41,7 +41,7 @@ struct sockaddr_nl;
 struct nlattr;
 struct nlmsghdr;
 
-#endif /* WITH_LIBNL */
+#endif /* __linux__ */
 
 int virNetlinkStartup(void);
 void virNetlinkShutdown(void);
diff --git a/tests/virnetdevtest.c b/tests/virnetdevtest.c
index 42f1a74ee9ad66f40150920670a4f71518c9d610..99cf347934911aa4ae40bf61145e7817efbee97b 100644
--- a/tests/virnetdevtest.c
+++ b/tests/virnetdevtest.c
@@ -63,8 +63,6 @@ testVirNetDevGetLinkInfo(const void *opaque)
     return 0;
 }
 
-# if defined(WITH_LIBNL)
-
 int
 (*real_virNetDevSendVfSetLinkRequest)(const char *ifname,
                                       int vfInfoType,
@@ -301,8 +299,6 @@ testVirNetDevSetVfConfig(const void *opaque G_GNUC_UNUSED)
     return 0;
 }
 
-# endif /* defined(WITH_LIBNL) */
-
 static int
 mymain(void)
 {
@@ -320,8 +316,6 @@ mymain(void)
     DO_TEST_LINK("lo", VIR_NETDEV_IF_STATE_UNKNOWN, 0);
     DO_TEST_LINK("eth0-broken", VIR_NETDEV_IF_STATE_DOWN, 0);
 
-# if defined(WITH_LIBNL)
-
     if (virTestRun("Set VF MAC", testVirNetDevSetVfMac, NULL) < 0)
         ret = -1;
     if (virTestRun("Set VF MAC: missing MAC pointer", testVirNetDevSetVfMissingMac, NULL) < 0)
@@ -331,8 +325,6 @@ mymain(void)
     if (virTestRun("Set VF Config", testVirNetDevSetVfConfig, NULL) < 0)
         ret = -1;
 
-# endif /* defined(WITH_LIBNL) */
-
     return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
 }
 
---
base-commit: e5299ddf86121d3c792ca271ffcb54900eb19dc3
change-id: 20250308-require-289966671f9d
Best regards,
-- 
Akihiko Odaki <akihiko.odaki(a)daynix.com>
                    
                  
                  
                          
                            
                            3
                            
                          
                          
                            
                            2
                            
                          
                          
                            
    
                          
                        
                     
                        
                     
                        
                    