Devel
Threads by month
- ----- 2026 -----
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- 29 participants
- 40189 discussions
Ján Tomko (6):
Revert "docs: Drop glib-adoption.rst"
docs: build glib-adoption.html
docs: glib-adoption: remove stuff we alredy removed
docs: glib-adoption: split into sections
docs: glib-adoption: add links to GLib documentation
docs: glib-adoption: add string arrays and objects
docs/glib-adoption.rst | 54 ++++++++++++++++++++++++++++++++++++++++++
docs/hacking.rst | 1 +
docs/meson.build | 1 +
3 files changed, 56 insertions(+)
create mode 100644 docs/glib-adoption.rst
--
2.26.2
2
8
01 Oct '20
Ján Tomko (2):
libxl: prefer g_new0 to VIR_ALLOC
locking: prefer g_new0 to VIR_ALLOC
src/libxl/libxl_capabilities.c | 13 ++--
src/libxl/libxl_conf.c | 48 ++++--------
src/libxl/libxl_domain.c | 19 ++---
src/libxl/libxl_driver.c | 20 ++---
src/libxl/libxl_migration.c | 21 ++---
src/libxl/xen_common.c | 122 +++++++++---------------------
src/libxl/xen_xl.c | 85 +++++++--------------
src/libxl/xen_xm.c | 9 +--
src/locking/lock_daemon.c | 9 +--
src/locking/lock_daemon_config.c | 3 +-
src/locking/lock_driver_lockd.c | 7 +-
src/locking/lock_driver_sanlock.c | 10 +--
src/locking/lock_manager.c | 6 +-
13 files changed, 117 insertions(+), 255 deletions(-)
--
2.26.2
2
3
In this episode, src/logging and src/rpc get converted.
Ján Tomko (3):
logging: use g_new0 instead of VIR_ALLOC
gendispatch: use g_new0 instead of VIR_ALLOC
rpc: use g_new0 instead of VIR_ALLOC
src/logging/log_daemon.c | 9 +++------
src/logging/log_daemon_config.c | 3 +--
src/logging/log_handler.c | 9 +++------
src/logging/log_manager.c | 3 +--
src/rpc/gendispatch.pl | 16 +++++++---------
src/rpc/virnetclient.c | 6 ++----
src/rpc/virnetclientprogram.c | 10 ++++------
src/rpc/virnetdaemon.c | 3 +--
src/rpc/virnetlibsshsession.c | 3 +--
src/rpc/virnetmessage.c | 23 +++++++++++++++--------
src/rpc/virnetserver.c | 3 +--
src/rpc/virnetserverclient.c | 24 ++++++------------------
src/rpc/virnetserverprogram.c | 6 ++----
src/rpc/virnetserverservice.c | 9 +++------
src/rpc/virnetsocket.c | 3 +--
src/rpc/virnetsshsession.c | 8 ++------
src/rpc/virnettlscontext.c | 4 +---
17 files changed, 54 insertions(+), 88 deletions(-)
--
2.26.2
2
5
[PATCH] util: remove compile time tests for IFF_VNET_HDR/IFF_MULTI_QUEUE
by Daniel P. Berrangé 01 Oct '20
by Daniel P. Berrangé 01 Oct '20
01 Oct '20
The former has been present since
commit f43798c27684ab925adde7d8acc34c78c6e50df8
Author: Rusty Russell <rusty(a)rustcorp.com.au>
Date: Thu Jul 3 03:48:02 2008 -0700
tun: Allow GSO using virtio_net_hdr
and the latter since
commit bbb009941efaece3898910a862f6d23aa55d6ba8
Author: Jason Wang <jasowang(a)redhat.com>
Date: Wed Oct 31 19:45:59 2012 +0000
tuntap: introduce multiqueue flags
these are old enough that they can be assumed present in all Linux
platforms we support. The tap device creation code changed is specific
to Linux, with a separate impl for non-Linux platforms.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
src/util/virnetdevtap.c | 11 +----------
1 file changed, 1 insertion(+), 10 deletions(-)
diff --git a/src/util/virnetdevtap.c b/src/util/virnetdevtap.c
index 77c4d1c52c..1738f48a5f 100644
--- a/src/util/virnetdevtap.c
+++ b/src/util/virnetdevtap.c
@@ -292,20 +292,11 @@ int virNetDevTapCreate(char **ifname,
ifr.ifr_flags = IFF_TAP | IFF_NO_PI;
/* If tapfdSize is greater than one, request multiqueue */
- if (tapfdSize > 1) {
-# ifdef IFF_MULTI_QUEUE
+ if (tapfdSize > 1)
ifr.ifr_flags |= IFF_MULTI_QUEUE;
-# else
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
- _("Multiqueue devices are not supported on this system"));
- goto cleanup;
-# endif
- }
-# ifdef IFF_VNET_HDR
if (flags & VIR_NETDEV_TAP_CREATE_VNET_HDR)
ifr.ifr_flags |= IFF_VNET_HDR;
-# endif
if (virStrcpyStatic(ifr.ifr_name, *ifname) < 0) {
virReportSystemError(ERANGE,
--
2.26.2
2
1
I've found two files under qemuxml2xmloutdata/ that are the same
as in qemuxml2argvdata/. Replace them with symlinks.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
tests/qemuxml2xmloutdata/downscript.xml | 61 +------------------
.../video-qxl-resolution.xml | 43 +------------
2 files changed, 2 insertions(+), 102 deletions(-)
mode change 100644 => 120000 tests/qemuxml2xmloutdata/downscript.xml
mode change 100644 => 120000 tests/qemuxml2xmloutdata/video-qxl-resolution.xml
diff --git a/tests/qemuxml2xmloutdata/downscript.xml b/tests/qemuxml2xmloutdata/downscript.xml
deleted file mode 100644
index 4d0fb1beab..0000000000
--- a/tests/qemuxml2xmloutdata/downscript.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<domain type='qemu'>
- <name>QEMUGuest1</name>
- <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid>
- <memory unit='KiB'>219136</memory>
- <currentMemory unit='KiB'>219136</currentMemory>
- <vcpu placement='static'>1</vcpu>
- <os>
- <type arch='x86_64' machine='pc'>hvm</type>
- <boot dev='hd'/>
- </os>
- <cpu mode='custom' match='exact' check='none'>
- <model fallback='forbid'>qemu64</model>
- </cpu>
- <clock offset='utc'/>
- <on_poweroff>destroy</on_poweroff>
- <on_reboot>restart</on_reboot>
- <on_crash>destroy</on_crash>
- <devices>
- <emulator>/usr/bin/qemu-system-x86_64</emulator>
- <disk type='file' device='disk'>
- <driver name='qemu' type='raw'/>
- <source file='/var/lib/libvirt/images/img1'/>
- <target dev='vda' bus='virtio'/>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
- </disk>
- <controller type='usb' index='0' model='piix3-uhci'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
- </controller>
- <controller type='ide' index='0'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
- </controller>
- <controller type='pci' index='0' model='pci-root'/>
- <controller type='virtio-serial' index='0'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
- </controller>
- <filesystem type='mount' accessmode='passthrough'>
- <source dir='/export/fs1'/>
- <target dir='fs1'/>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
- </filesystem>
- <filesystem type='mount' accessmode='mapped'>
- <driver type='path'/>
- <source dir='/export/fs2'/>
- <target dir='fs2'/>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
- </filesystem>
- <interface type='ethernet'>
- <mac address='52:54:00:f6:66:88'/>
- <script path='/home/ifup.sh'/>
- <downscript path='/home/ifdown.sh'/>
- <model type='virtio'/>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/>
- </interface>
- <input type='mouse' bus='ps2'/>
- <input type='keyboard' bus='ps2'/>
- <memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'/>
- </memballoon>
- </devices>
-</domain>
diff --git a/tests/qemuxml2xmloutdata/downscript.xml b/tests/qemuxml2xmloutdata/downscript.xml
new file mode 120000
index 0000000000..5edee5a7c4
--- /dev/null
+++ b/tests/qemuxml2xmloutdata/downscript.xml
@@ -0,0 +1 @@
+../qemuxml2argvdata/downscript.xml
\ No newline at end of file
diff --git a/tests/qemuxml2xmloutdata/video-qxl-resolution.xml b/tests/qemuxml2xmloutdata/video-qxl-resolution.xml
deleted file mode 100644
index e693cbce47..0000000000
--- a/tests/qemuxml2xmloutdata/video-qxl-resolution.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<domain type='qemu'>
- <name>QEMUGuest1</name>
- <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid>
- <memory unit='KiB'>219136</memory>
- <currentMemory unit='KiB'>219136</currentMemory>
- <vcpu placement='static'>1</vcpu>
- <os>
- <type arch='i686' machine='pc'>hvm</type>
- <boot dev='hd'/>
- </os>
- <clock offset='utc'/>
- <on_poweroff>destroy</on_poweroff>
- <on_reboot>restart</on_reboot>
- <on_crash>destroy</on_crash>
- <devices>
- <emulator>/usr/bin/qemu-system-i386</emulator>
- <disk type='block' device='disk'>
- <driver name='qemu' type='raw'/>
- <source dev='/dev/HostVG/QEMUGuest1'/>
- <target dev='hda' bus='ide'/>
- <address type='drive' controller='0' bus='0' target='0' unit='0'/>
- </disk>
- <controller type='usb' index='0'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
- </controller>
- <controller type='ide' index='0'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
- </controller>
- <controller type='pci' index='0' model='pci-root'/>
- <input type='mouse' bus='ps2'/>
- <input type='keyboard' bus='ps2'/>
- <video>
- <model type='qxl' ram='65536' vram='65536' vgamem='8192' heads='1' primary='yes'>
- <resolution x='1280' y='720'/>
- </model>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
- </video>
- <memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
- </memballoon>
- </devices>
-</domain>
diff --git a/tests/qemuxml2xmloutdata/video-qxl-resolution.xml b/tests/qemuxml2xmloutdata/video-qxl-resolution.xml
new file mode 120000
index 0000000000..f2d0595dda
--- /dev/null
+++ b/tests/qemuxml2xmloutdata/video-qxl-resolution.xml
@@ -0,0 +1 @@
+../qemuxml2argvdata/video-qxl-resolution.xml
\ No newline at end of file
--
2.26.2
2
1
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
NEWS.rst | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/NEWS.rst b/NEWS.rst
index 7663cf4208..56ccfefe4a 100644
--- a/NEWS.rst
+++ b/NEWS.rst
@@ -13,6 +13,12 @@ v6.9.0 (unreleased)
* **New features**
+ * qemu: Implement support for ``<transient/>`` disks
+
+ VM's based on the QEMU hypervisor now can use ``<transient/>`` option for
+ local file-backed disks to configure a disk which discards changes to the
+ disk which happened while it was active.
+
* **Improvements**
* **Bug fixes**
--
2.26.2
2
1
---
src/storage_pool.rs | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/src/storage_pool.rs b/src/storage_pool.rs
index 96258f0..ad0a51a 100644
--- a/src/storage_pool.rs
+++ b/src/storage_pool.rs
@@ -18,7 +18,7 @@
extern crate libc;
-use std::str;
+use std::{ptr, str};
use connect::sys::virConnectPtr;
use storage_vol::sys::virStorageVolPtr;
@@ -101,6 +101,11 @@ extern "C" {
info: sys::virStoragePoolInfoPtr,
) -> libc::c_int;
fn virStoragePoolNumOfVolumes(ptr: sys::virStoragePoolPtr) -> libc::c_int;
+ fn virStoragePoolListVolumes(
+ ptr: sys::virStoragePoolPtr,
+ names: *mut *mut libc::c_char,
+ maxnames: libc::c_int,
+ ) -> libc::c_int;
}
pub type StoragePoolXMLFlags = self::libc::c_uint;
@@ -276,6 +281,22 @@ impl StoragePool {
}
}
+ pub fn list_volumes(&self) -> Result<Vec<String>, Error> {
+ unsafe {
+ let mut names: [*mut libc::c_char; 1024] = [ptr::null_mut(); 1024];
+ let size = virStoragePoolListVolumes(self.as_ptr(), names.as_mut_ptr(), 1024);
+ if size == -1 {
+ return Err(Error::new());
+ }
+
+ let mut array: Vec<String> = Vec::new();
+ for x in 0..size as usize {
+ array.push(c_chars_to_string!(names[x]));
+ }
+ return Ok(array);
+ }
+ }
+
pub fn get_uuid_string(&self) -> Result<String, Error> {
unsafe {
let mut uuid: [libc::c_char; 37] = [0; 37];
--
2.28.0
2
1
01 Oct '20
Ján Tomko (6):
conf: split out virDomainDefParseIDs
conf: split out virDomainDefParseMemory
conf: introduce virDomainDefTunablesParse
conf: introduce virDomainDefLifecycleParse
conf: introduce virDomainDefClockParse
conf: introduce virDomainDefControllersParse
src/conf/domain_conf.c | 728 ++++++++++++++++++++++++-----------------
1 file changed, 419 insertions(+), 309 deletions(-)
--
2.26.2
2
7
See 2/2 for explanation why we need this.
Also, .hostdevice uses qemu_open() under the hood which enables Libvirt
to pass FD instead of /dev/bus/usb/... path. However, qemu_open() does
not support getfd style of passing FD (which is what we use), but so
called FD sets which require some more work. I'm working on it as we
speak but I figured, let's fix this bug first and post FD passing after
that.
For curious ones, here is the raw, unclean version with FD sets:
https://gitlab.com/MichalPrivoznik/libvirt/-/commits/qemu_hostdev_alt/
Michal Prívozník (2):
qemu_capabilities: Add QEMU_CAPS_USB_HOST_HOSTDEVICE
qemu: Use .hostdevice attribute for usb-host
src/qemu/qemu_capabilities.c | 10 ++
src/qemu/qemu_capabilities.h | 3 +
src/qemu/qemu_command.c | 21 ++-
.../caps_1.5.3.x86_64.replies | 126 ++++++++++++--
.../caps_1.6.0.x86_64.replies | 126 ++++++++++++--
.../caps_1.7.0.x86_64.replies | 126 ++++++++++++--
.../caps_2.1.1.x86_64.replies | 126 ++++++++++++--
.../caps_2.10.0.aarch64.replies | 134 +++++++++++++--
.../caps_2.10.0.ppc64.replies | 130 ++++++++++++--
.../caps_2.10.0.s390x.replies | 134 +++++++++++++--
.../caps_2.10.0.x86_64.replies | 146 +++++++++++++---
.../caps_2.11.0.s390x.replies | 134 +++++++++++++--
.../caps_2.11.0.x86_64.replies | 146 +++++++++++++---
.../caps_2.12.0.aarch64.replies | 150 +++++++++++++---
.../caps_2.12.0.ppc64.replies | 142 ++++++++++++---
.../caps_2.12.0.s390x.replies | 142 ++++++++++++---
.../caps_2.12.0.x86_64.replies | 162 ++++++++++++++----
.../caps_2.4.0.x86_64.replies | 126 ++++++++++++--
.../caps_2.5.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.6.0.aarch64.replies | 134 +++++++++++++--
.../caps_2.6.0.ppc64.replies | 130 ++++++++++++--
.../caps_2.6.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.7.0.s390x.replies | 130 ++++++++++++--
.../caps_2.7.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.8.0.s390x.replies | 134 +++++++++++++--
.../caps_2.8.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.9.0.ppc64.replies | 130 ++++++++++++--
.../caps_2.9.0.s390x.replies | 134 +++++++++++++--
.../caps_2.9.0.x86_64.replies | 146 +++++++++++++---
.../caps_3.0.0.ppc64.replies | 142 ++++++++++++---
.../caps_3.0.0.riscv32.replies | 138 +++++++++++++--
.../caps_3.0.0.riscv64.replies | 138 +++++++++++++--
.../caps_3.0.0.s390x.replies | 142 ++++++++++++---
.../caps_3.0.0.x86_64.replies | 162 ++++++++++++++----
.../caps_3.1.0.ppc64.replies | 142 ++++++++++++---
.../caps_3.1.0.x86_64.replies | 162 ++++++++++++++----
.../caps_4.0.0.aarch64.replies | 150 +++++++++++++---
.../caps_4.0.0.ppc64.replies | 142 ++++++++++++---
.../caps_4.0.0.riscv32.replies | 138 +++++++++++++--
.../caps_4.0.0.riscv64.replies | 138 +++++++++++++--
.../caps_4.0.0.s390x.replies | 142 ++++++++++++---
.../caps_4.0.0.x86_64.replies | 162 ++++++++++++++----
.../caps_4.1.0.x86_64.replies | 154 ++++++++++++++---
.../caps_4.2.0.aarch64.replies | 154 ++++++++++++++---
.../caps_4.2.0.ppc64.replies | 142 ++++++++++++---
.../caps_4.2.0.s390x.replies | 142 ++++++++++++---
.../caps_4.2.0.x86_64.replies | 154 ++++++++++++++---
.../caps_5.0.0.aarch64.replies | 154 ++++++++++++++---
.../caps_5.0.0.ppc64.replies | 142 ++++++++++++---
.../caps_5.0.0.riscv64.replies | 138 +++++++++++++--
.../caps_5.0.0.x86_64.replies | 154 ++++++++++++++---
.../caps_5.1.0.x86_64.replies | 158 ++++++++++++++---
.../caps_5.1.0.x86_64.xml | 1 +
.../caps_5.2.0.x86_64.replies | 158 ++++++++++++++---
.../caps_5.2.0.x86_64.xml | 1 +
55 files changed, 6110 insertions(+), 982 deletions(-)
--
2.26.2
4
6
The 6.8.0 release of both libvirt and libvirt-python is tagged and
signed tarballs and source RPMs are available at
https://libvirt.org/sources/
https://libvirt.org/sources/python/
Thanks everybody who helped with this release by sending patches,
reviewing, testing, or providing any other feedback. Your work is
greatly appreciated.
* New features
* xen: Add ``writeFiltering`` attribute for PCI devices
By default Xen filters guest writes to the PCI configuration space of a
PCI hostdev, which may cause problems for some devices. The ``writeFiltering``
attribute of the device's ``<source>`` element can be used to disable the
filtering and allow all guest writes to the configuration space.
* bhyve: Support setting the framebuffer resolution
Libvirt can now set the framebuffer's "w" and "h" parameters
using the ``resolution`` element.
* bhyve: Support VNC password authentication
Libvirt can now probe whether the bhyve binary supports
VNC password authentication. In case it does, a VNC password
can now be passed using the ``passwd`` attribute on
the ``<graphics>`` element.
* remote: ``virt-ssh-helper`` replaces ``nc`` for SSH tunnelling
Libvirt now provides a ``virt-ssh-helper`` binary on the server
side. The libvirt remote client will use this binary for setting
up an SSH tunnelled connection to hosts. If not present, it will
transparently fallback to the traditional ``nc`` tunnel. The new
binary makes it possible for libvirt to transparently connect
across hosts even if libvirt is built with a different installation
prefix on the client vs server. It also enables remote access to
the unprivileged per-user libvirt daemons (e.g. using a URI such as
``qemu+ssh://hostname/session``). The only requirement is that
``virt-ssh-helper`` is present in ``$PATH`` of the remote host.
* esx: implement few APIs
The ``virConnectListAllNetworks()``, ``virDomainGetHostname()``, and
``virDomainInterfaceAddresses()`` (only for
``VIR_DOMAIN_INTERFACE_ADDRESSES_SRC_AGENT`` source) APIs were implemented
in the esx driver.
* Improvements
* qemu: Allow migration over UNIX sockets
QEMU migration can now be performed completely over UNIX sockets. This is
useful for containerised scenarios and can be used in both peer2peer and
direct migrations.
* dbus: Use GLib implementation instead of libdbus
Adopting GLib DBus implementation simplifies our code as libdbus provides
low-level APIs where we had to have a lot of helper functions. With this
change we also remove dependency on libdbus and possibly fix all the DBus
related libvirtd crashes seen over the time.
* Re-introduce NVDIMM auto-alignment for pSeries Guests
The auto-alignment logic was removed in v6.7.0 in favor of requiring the
size provided by the user to be already aligned; however, this had the
unintended consequence of breaking some existing guests. v6.8.0 restores
the previous behavior with an improvement: it also reflects the auto-aligned
value in the domain XML.
* qemu: Preserve qcow2 cluster size after external snapshots
The new overlay image which is installed on top of the current chain when
taking an external snapshot now preserves the cluser size of the original
top image to preserve any performance tuning done on the original image.
* Bug fixes
* qemu: Various (i)SCSI backed hostdev fixes
(i)SCSI backed hostdevs now work again with an arbitrarily long
user-specified device alias and also honor the 'readonly' property after a
recent rewrite.
* Removed features
* node_device: Remove HAL node device backend
HAL is deprecated on all supported OS so there is no need to keep it
in libvirt. udev backend is used on Linux OSes and devd can be eventually
implemented as replacement for FreeBSD.
Enjoy.
Jirka
1
0
While looking for something else, I noticed that there were only 2
callers to virDomainNetDefClear(), and one of those was virDomain
NetDefFree(). virDomainNetDefClear() necessarily has a lot of
VIR_FREE() in it that couldn't be changed to g_free() (because it's
possible the object will be used after it is cleared). This series
eliminates the actual practical usage of virDomainNetDefClear() by
just creating a new object instead of clearing and re-using the old
object, then moves the contents of virDomainNetDefClear() into
virDomainNetDefFree(), and finally changes all the uses of VIR_FREE()
to g_free() (now that it's safe to do so).
Laine Stump (3):
qemu: eliminate use of virDomainNetDefClear() in
qemuConnectDomainXMLToNative()
conf: eliminate virDomainNetDefClear()
conf: use g_free() instead of VIR_FREE in virDomainNetDefFree()
src/conf/domain_conf.c | 51 +++++++++++++++++-----------------------
src/conf/domain_conf.h | 1 -
src/libvirt_private.syms | 1 -
src/qemu/qemu_driver.c | 26 +++++++++-----------
4 files changed, 33 insertions(+), 46 deletions(-)
--
2.26.2
2
4
Signed-off-by: Markus Schade <markus.schade(a)hetzner.com>
---
src/cpu_map/index.xml | 1 +
src/cpu_map/meson.build | 1 +
src/cpu_map/x86_EPYC-Rome.xml | 81 +
tests/cputest.c | 1 +
...86_64-cpuid-EPYC-7502-32-Core-disabled.xml | 9 +
...x86_64-cpuid-EPYC-7502-32-Core-enabled.xml | 11 +
.../x86_64-cpuid-EPYC-7502-32-Core-guest.xml | 35 +
.../x86_64-cpuid-EPYC-7502-32-Core-host.xml | 36 +
.../x86_64-cpuid-EPYC-7502-32-Core-json.xml | 24 +
.../x86_64-cpuid-EPYC-7502-32-Core.json | 1910 +++++++++++++++++
.../x86_64-cpuid-EPYC-7502-32-Core.sig | 4 +
.../x86_64-cpuid-EPYC-7502-32-Core.xml | 66 +
...4-cpuid-Ryzen-9-3900X-12-Core-disabled.xml | 1 -
...64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml | 2 +-
...6_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml | 9 +-
...86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml | 9 +-
...86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml | 8 +-
.../x86_64-cpuid-Ryzen-9-3900X-12-Core.json | 23 +
.../x86_64-cpuid-Ryzen-9-3900X-12-Core.xml | 12 +-
19 files changed, 2212 insertions(+), 31 deletions(-)
create mode 100644 src/cpu_map/x86_EPYC-Rome.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-enabled.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-json.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.json
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.sig
create mode 100644 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.xml
diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
index 1486a29c65..fec01f324c 100644
--- a/src/cpu_map/index.xml
+++ b/src/cpu_map/index.xml
@@ -66,6 +66,7 @@
<include filename="x86_Opteron_G5.xml"/>
<include filename="x86_EPYC.xml"/>
<include filename="x86_EPYC-IBPB.xml"/>
+ <include filename="x86_EPYC-Rome.xml"/>
<!-- Hygon CPU models -->
<include filename="x86_Dhyana.xml"/>
diff --git a/src/cpu_map/meson.build b/src/cpu_map/meson.build
index 19daa7157b..b86612b6e0 100644
--- a/src/cpu_map/meson.build
+++ b/src/cpu_map/meson.build
@@ -32,6 +32,7 @@ cpumap_data = [
'x86_Dhyana.xml',
'x86_EPYC-IBPB.xml',
'x86_EPYC.xml',
+ 'x86_EPYC-Rome.xml',
'x86_features.xml',
'x86_Haswell-IBRS.xml',
'x86_Haswell-noTSX-IBRS.xml',
diff --git a/src/cpu_map/x86_EPYC-Rome.xml b/src/cpu_map/x86_EPYC-Rome.xml
new file mode 100644
index 0000000000..41d4123917
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-Rome.xml
@@ -0,0 +1,81 @@
+<cpus>
+ <model name='EPYC-Rome'>
+ <decode host='on' guest='on'/>
+ <signature family='23' model='49'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='amd-stibp'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clwb'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='monitor'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdpid'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='vme'/>
+ <feature name='wbnoinvd'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ </model>
+</cpus>
diff --git a/tests/cputest.c b/tests/cputest.c
index 383da94938..53674f2b9a 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -1244,6 +1244,7 @@ mymain(void)
DO_TEST_CPUID(VIR_ARCH_X86_64, "Hygon-C86-7185-32-core", JSON_HOST);
DO_TEST_CPUID(VIR_ARCH_X86_64, "EPYC-7601-32-Core", JSON_HOST);
DO_TEST_CPUID(VIR_ARCH_X86_64, "EPYC-7601-32-Core-ibpb", JSON_MODELS_REQUIRED);
+ DO_TEST_CPUID(VIR_ARCH_X86_64, "EPYC-7502-32-Core", JSON_MODELS);
DO_TEST_CPUID(VIR_ARCH_X86_64, "FX-8150", JSON_NONE);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Opteron-1352", JSON_NONE);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Opteron-2350", JSON_HOST);
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml
new file mode 100644
index 0000000000..ca71b9efb5
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml
@@ -0,0 +1,9 @@
+<!-- Features disabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000014f6'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-enabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-enabled.xml
new file mode 100644
index 0000000000..09a9952c27
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-enabled.xml
@@ -0,0 +1,11 @@
+<!-- Features enabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7f83203' edx='0x078bfbff'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x219c01ab' ecx='0x00400004' edx='0xac000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x008003f7' edx='0x2e500800'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x03009205' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000009'/>
+ <msr index='0x10a' edx='0x00000000' eax='0x00000069'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml
new file mode 100644
index 0000000000..a49ef46f52
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml
@@ -0,0 +1,35 @@
+<cpu mode='custom' match='exact'>
+ <model fallback='forbid'>EPYC-Rome</model>
+ <vendor>AMD</vendor>
+ <feature policy='require' name='ht'/>
+ <feature policy='require' name='osxsave'/>
+ <feature policy='require' name='cmt'/>
+ <feature policy='require' name='umip'/>
+ <feature policy='require' name='xsaves'/>
+ <feature policy='require' name='mbm_total'/>
+ <feature policy='require' name='mbm_local'/>
+ <feature policy='require' name='cmp_legacy'/>
+ <feature policy='require' name='extapic'/>
+ <feature policy='require' name='ibs'/>
+ <feature policy='require' name='skinit'/>
+ <feature policy='require' name='wdt'/>
+ <feature policy='require' name='tce'/>
+ <feature policy='require' name='topoext'/>
+ <feature policy='require' name='perfctr_nb'/>
+ <feature policy='require' name='invtsc'/>
+ <feature policy='require' name='amd-ssbd'/>
+ <feature policy='require' name='npt'/>
+ <feature policy='require' name='lbrv'/>
+ <feature policy='require' name='svm-lock'/>
+ <feature policy='require' name='nrip-save'/>
+ <feature policy='require' name='tsc-scale'/>
+ <feature policy='require' name='vmcb-clean'/>
+ <feature policy='require' name='flushbyasid'/>
+ <feature policy='require' name='decodeassists'/>
+ <feature policy='require' name='pause-filter'/>
+ <feature policy='require' name='pfthreshold'/>
+ <feature policy='require' name='rdctl-no'/>
+ <feature policy='require' name='skip-l1dfl-vmentry'/>
+ <feature policy='require' name='mds-no'/>
+ <feature policy='require' name='pschange-mc-no'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
new file mode 100644
index 0000000000..e9aea3339a
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
@@ -0,0 +1,36 @@
+<cpu>
+ <arch>x86_64</arch>
+ <model>EPYC-Rome</model>
+ <vendor>AMD</vendor>
+ <feature name='ht'/>
+ <feature name='osxsave'/>
+ <feature name='cmt'/>
+ <feature name='umip'/>
+ <feature name='xsaves'/>
+ <feature name='mbm_total'/>
+ <feature name='mbm_local'/>
+ <feature name='cmp_legacy'/>
+ <feature name='extapic'/>
+ <feature name='ibs'/>
+ <feature name='skinit'/>
+ <feature name='wdt'/>
+ <feature name='tce'/>
+ <feature name='topoext'/>
+ <feature name='perfctr_nb'/>
+ <feature name='invtsc'/>
+ <feature name='amd-ssbd'/>
+ <feature name='npt'/>
+ <feature name='lbrv'/>
+ <feature name='svm-lock'/>
+ <feature name='nrip-save'/>
+ <feature name='tsc-scale'/>
+ <feature name='vmcb-clean'/>
+ <feature name='flushbyasid'/>
+ <feature name='decodeassists'/>
+ <feature name='pause-filter'/>
+ <feature name='pfthreshold'/>
+ <feature name='rdctl-no'/>
+ <feature name='skip-l1dfl-vmentry'/>
+ <feature name='mds-no'/>
+ <feature name='pschange-mc-no'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-json.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-json.xml
new file mode 100644
index 0000000000..e402b77eed
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-json.xml
@@ -0,0 +1,24 @@
+<cpu mode='custom' match='exact'>
+ <model fallback='forbid'>EPYC-Rome</model>
+ <vendor>AMD</vendor>
+ <feature policy='require' name='x2apic'/>
+ <feature policy='require' name='tsc-deadline'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='umip'/>
+ <feature policy='require' name='spec-ctrl'/>
+ <feature policy='require' name='stibp'/>
+ <feature policy='require' name='arch-capabilities'/>
+ <feature policy='require' name='ssbd'/>
+ <feature policy='require' name='xsaves'/>
+ <feature policy='require' name='cmp_legacy'/>
+ <feature policy='require' name='amd-ssbd'/>
+ <feature policy='require' name='virt-ssbd'/>
+ <feature policy='require' name='npt'/>
+ <feature policy='require' name='nrip-save'/>
+ <feature policy='require' name='rdctl-no'/>
+ <feature policy='require' name='skip-l1dfl-vmentry'/>
+ <feature policy='require' name='mds-no'/>
+ <feature policy='require' name='pschange-mc-no'/>
+ <feature policy='disable' name='monitor'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.json b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.json
new file mode 100644
index 0000000000..7942096dad
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.json
@@ -0,0 +1,1910 @@
+{
+ "return": {
+ "model": {
+ "name": "base",
+ "props": {
+ "phys-bits": 0,
+ "vmx-entry-load-rtit-ctl": false,
+ "core-id": -1,
+ "xlevel": 2147483679,
+ "cmov": true,
+ "ia64": false,
+ "ssb-no": false,
+ "aes": true,
+ "vmx-apicv-xapic": false,
+ "mmx": true,
+ "arat": true,
+ "rdpid": true,
+ "vmx-page-walk-5": false,
+ "vmx-page-walk-4": false,
+ "vmx-desc-exit": false,
+ "gfni": false,
+ "ibrs-all": false,
+ "pause-filter": false,
+ "xsavec": true,
+ "intel-pt": false,
+ "vmx-cr8-store-exit": false,
+ "hv-frequencies": false,
+ "tsc-frequency": 0,
+ "vmx-rdseed-exit": false,
+ "xd": true,
+ "x-intel-pt-auto-level": true,
+ "hv-vendor-id": "",
+ "vmx-eptp-switching": false,
+ "kvm_asyncpf": true,
+ "kvm-asyncpf": true,
+ "perfctr_core": true,
+ "perfctr-core": true,
+ "mpx": false,
+ "avx512cd": false,
+ "pbe": false,
+ "decodeassists": false,
+ "vmx-exit-clear-bndcfgs": false,
+ "vmx-exit-load-efer": false,
+ "sse4_1": true,
+ "sse4-1": true,
+ "sse4.1": true,
+ "legacy-cache": true,
+ "family": 23,
+ "vmx-vmwrite-vmexit-fields": false,
+ "vmx-vnmi": false,
+ "vmx-true-ctls": false,
+ "host-phys-bits-limit": 0,
+ "vmx-ept-execonly": false,
+ "vmx-exit-save-efer": false,
+ "vmx-invept-all-context": false,
+ "vmware-cpuid-freq": true,
+ "wbnoinvd": true,
+ "avx512f": false,
+ "hv-runtime": false,
+ "hv-stimer-direct": false,
+ "xcrypt": false,
+ "mce": true,
+ "mca": true,
+ "msr": true,
+ "thread-id": -1,
+ "vmx-exit-load-pat": false,
+ "vmx-intr-exit": false,
+ "min-level": 16,
+ "vmx-flexpriority": false,
+ "xgetbv1": true,
+ "cid": false,
+ "hv-relaxed": false,
+ "hv-crash": false,
+ "avx512-bf16": false,
+ "ds": false,
+ "fxsr": true,
+ "vmx-cr8-load-exit": false,
+ "xsaveopt": true,
+ "vmx-apicv-vid": false,
+ "vmx-exit-save-pat": false,
+ "tsx-ctrl": false,
+ "xtpr": false,
+ "vmx-ple": false,
+ "hv-evmcs": false,
+ "avx512-vpopcntdq": false,
+ "phe": false,
+ "avx512vl": false,
+ "extapic": false,
+ "vmx-vmfunc": false,
+ "3dnowprefetch": true,
+ "vmx-activity-shutdown": false,
+ "avx512vbmi2": false,
+ "cr8legacy": true,
+ "vmx-encls-exit": false,
+ "stibp": true,
+ "vmx-msr-bitmap": false,
+ "cpuid-0xb": true,
+ "xcrypt-en": false,
+ "vmx-mwait-exit": false,
+ "kvm_pv_eoi": true,
+ "vmx-pml": false,
+ "apic-id": 4294967295,
+ "vmx-nmi-exit": false,
+ "vmx-invept-single-context-noglobals": false,
+ "pn": false,
+ "rsba": false,
+ "dca": false,
+ "hv-ipi": false,
+ "vmx-unrestricted-guest": false,
+ "vendor": "AuthenticAMD",
+ "vmx-cr3-store-noexit": false,
+ "pku": false,
+ "smx": false,
+ "cmp-legacy": true,
+ "cmp_legacy": true,
+ "node-id": -1,
+ "avx512-4fmaps": false,
+ "vmcb_clean": false,
+ "vmcb-clean": false,
+ "hle": false,
+ "amd-no-ssb": false,
+ "3dnowext": false,
+ "npt": true,
+ "rdctl-no": true,
+ "vmx-invvpid": false,
+ "memory": "/machine/unattached/system[0]",
+ "clwb": true,
+ "lbrv": false,
+ "adx": true,
+ "ss": false,
+ "pni": true,
+ "svm_lock": false,
+ "svm-lock": false,
+ "pfthreshold": false,
+ "smap": true,
+ "smep": true,
+ "vmx-invpcid-exit": false,
+ "x2apic": true,
+ "avx512vnni": false,
+ "avx512vbmi": false,
+ "vmx-apicv-x2apic": false,
+ "hv-stimer": false,
+ "kvm-pv-sched-yield": true,
+ "x-hv-synic-kvm-only": false,
+ "vmx-invlpg-exit": false,
+ "vmx-invvpid-all-context": false,
+ "i64": true,
+ "vmx-activity-hlt": false,
+ "flushbyasid": false,
+ "f16c": true,
+ "vmx-exit-ack-intr": false,
+ "ace2-en": false,
+ "pae": true,
+ "pat": true,
+ "sse": true,
+ "die-id": -1,
+ "vmx-tsc-offset": false,
+ "phe-en": false,
+ "kvm_nopiodelay": true,
+ "kvm-nopiodelay": true,
+ "tm": false,
+ "kvmclock-stable-bit": true,
+ "vmx-rdtsc-exit": false,
+ "hypervisor": true,
+ "vmx-rdtscp-exit": false,
+ "socket-id": -1,
+ "mds-no": true,
+ "pcommit": false,
+ "vmx-vpid": false,
+ "syscall": true,
+ "level": 16,
+ "x-migrate-smi-count": true,
+ "avx512dq": false,
+ "svm": true,
+ "full-cpuid-auto-level": true,
+ "hv-reset": false,
+ "invtsc": false,
+ "vmx-monitor-exit": false,
+ "sse3": true,
+ "sse2": true,
+ "ssbd": true,
+ "vmx-wbinvd-exit": false,
+ "est": false,
+ "kvm-poll-control": true,
+ "kvm_poll_control": true,
+ "avx512ifma": false,
+ "tm2": false,
+ "kvm-pv-eoi": true,
+ "kvm-pv-ipi": true,
+ "cx8": true,
+ "vmx-invvpid-single-addr": false,
+ "waitpkg": false,
+ "cldemote": false,
+ "vmx-ept": false,
+ "hv-reenlightenment": false,
+ "kvm_mmu": false,
+ "kvm-mmu": false,
+ "sse4-2": true,
+ "sse4.2": true,
+ "sse4_2": true,
+ "pge": true,
+ "fill-mtrr-mask": true,
+ "avx512bitalg": false,
+ "vmx-entry-load-bndcfgs": false,
+ "nodeid_msr": false,
+ "pdcm": false,
+ "vmx-exit-clear-rtit-ctl": false,
+ "model": 49,
+ "movbe": true,
+ "nrip_save": true,
+ "nrip-save": true,
+ "vmx-pause-exit": false,
+ "ssse3": true,
+ "kvm_pv_unhalt": true,
+ "sse4a": true,
+ "invpcid": false,
+ "pdpe1gb": true,
+ "tsc-deadline": true,
+ "skip-l1dfl-vmentry": true,
+ "vmx-exit-load-perf-global-ctrl": false,
+ "fma": true,
+ "cx16": true,
+ "de": true,
+ "enforce": false,
+ "stepping": 0,
+ "xsave": true,
+ "clflush": true,
+ "skinit": false,
+ "tsc": true,
+ "tce": false,
+ "fpu": true,
+ "ds-cpl": false,
+ "ds_cpl": false,
+ "ibs": false,
+ "host-phys-bits": false,
+ "fma4": false,
+ "vmx-exit-nosave-debugctl": false,
+ "vmx-invept": false,
+ "la57": false,
+ "osvw": true,
+ "check": true,
+ "hv-spinlocks": 4294967295,
+ "pmu": false,
+ "vmx-eptad": false,
+ "vmx-entry-noload-debugctl": false,
+ "pmm": false,
+ "apic": true,
+ "spec-ctrl": true,
+ "vmx-posted-intr": false,
+ "vmx-apicv-register": false,
+ "min-xlevel2": 0,
+ "tsc-adjust": true,
+ "tsc_adjust": true,
+ "kvm-steal-time": true,
+ "kvm_steal_time": true,
+ "kvmclock": true,
+ "vmx-zero-len-inject": false,
+ "l3-cache": true,
+ "pschange-mc-no": true,
+ "vmx-rdrand-exit": false,
+ "lwp": false,
+ "hv-passthrough": false,
+ "amd-ssbd": true,
+ "ibpb": true,
+ "xop": false,
+ "core-capability": false,
+ "avx": true,
+ "vmx-invept-single-context": false,
+ "movdiri": false,
+ "avx512bw": false,
+ "acpi": false,
+ "ace2": false,
+ "hv-vapic": false,
+ "fsgsbase": true,
+ "vmx-ept-1gb": false,
+ "vmx-ept-2mb": false,
+ "ht": false,
+ "vmx-io-exit": false,
+ "nx": true,
+ "pclmulqdq": true,
+ "mmxext": true,
+ "popcnt": true,
+ "vaes": false,
+ "xsaves": true,
+ "movdir64b": false,
+ "tcg-cpuid": true,
+ "vmx-shadow-vmcs": false,
+ "lm": true,
+ "vmx-exit-save-preemption-timer": false,
+ "vmx-entry-load-pat": false,
+ "vmx-entry-load-perf-global-ctrl": false,
+ "vmx-io-bitmap": false,
+ "vmx-store-lma": false,
+ "umip": true,
+ "vmx-movdr-exit": false,
+ "avx2": true,
+ "pse": true,
+ "pclmuldq": true,
+ "sep": true,
+ "vmx-cr3-load-noexit": false,
+ "virt-ssbd": true,
+ "x-hv-max-vps": -1,
+ "nodeid-msr": false,
+ "md-clear": false,
+ "kvm": true,
+ "split-lock-detect": false,
+ "misalignsse": true,
+ "min-xlevel": 2147483679,
+ "realized": false,
+ "kvm-pv-unhalt": true,
+ "bmi2": true,
+ "bmi1": true,
+ "tsc_scale": false,
+ "tsc-scale": false,
+ "topoext": false,
+ "hv-vpindex": false,
+ "hv-no-nonarch-coresharing": "off",
+ "amd-stibp": true,
+ "ucode-rev": 0,
+ "vmx-preemption-timer": false,
+ "xlevel2": 0,
+ "clflushopt": true,
+ "vmx-vnmi-pending": false,
+ "kvm-no-smi-migration": false,
+ "monitor": false,
+ "vmx-vintr-pending": false,
+ "avx512er": false,
+ "pmm-en": false,
+ "taa-no": false,
+ "pcid": false,
+ "vmx-secondary-ctls": false,
+ "arch-capabilities": true,
+ "vmx-xsaves": false,
+ "clzero": true,
+ "3dnow": false,
+ "erms": false,
+ "x-force-features": false,
+ "vmx-entry-ia32e-mode": false,
+ "lahf-lm": true,
+ "lahf_lm": true,
+ "vmx-ins-outs": false,
+ "vpclmulqdq": false,
+ "hv-synic": false,
+ "xstore": false,
+ "fxsr-opt": true,
+ "fxsr_opt": true,
+ "rtm": false,
+ "kvm-hint-dedicated": false,
+ "lmce": false,
+ "hv-time": false,
+ "perfctr_nb": false,
+ "perfctr-nb": false,
+ "hv-tlbflush": false,
+ "ffxsr": true,
+ "rdrand": true,
+ "rdseed": true,
+ "avx512-4vnniw": false,
+ "vme": true,
+ "vmx": false,
+ "dtes64": false,
+ "mtrr": true,
+ "rdtscp": true,
+ "xsaveerptr": true,
+ "pse36": true,
+ "kvm-pv-tlb-flush": true,
+ "vmx-activity-wait-sipi": false,
+ "tbm": false,
+ "vmx-rdpmc-exit": false,
+ "wdt": false,
+ "level-func7": 0,
+ "vmx-entry-load-efer": false,
+ "vmx-mtf": false,
+ "pause_filter": false,
+ "model-id": "AMD EPYC 7502 32-Core Processor ",
+ "sha-ni": true,
+ "abm": true,
+ "vmx-ept-advanced-exitinfo": false,
+ "avx512pf": false,
+ "vmx-hlt-exit": false,
+ "xstore-en": false
+ }
+ }
+ },
+ "id": "model-expansion"
+}
+
+{
+ "return": [
+ {
+ "name": "max",
+ "typename": "max-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": false
+ },
+ {
+ "name": "host",
+ "typename": "host-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": false
+ },
+ {
+ "name": "base",
+ "typename": "base-x86_64-cpu",
+ "unavailable-features": [],
+ "static": true,
+ "migration-safe": true
+ },
+ {
+ "name": "qemu64-v1",
+ "typename": "qemu64-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "qemu64",
+ "typename": "qemu64-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "qemu64-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "qemu32-v1",
+ "typename": "qemu32-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "qemu32",
+ "typename": "qemu32-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "qemu32-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "phenom-v1",
+ "typename": "phenom-v1-x86_64-cpu",
+ "unavailable-features": [
+ "3dnowext",
+ "3dnow"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "phenom",
+ "typename": "phenom-x86_64-cpu",
+ "unavailable-features": [
+ "3dnowext",
+ "3dnow"
+ ],
+ "alias-of": "phenom-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "pentium3-v1",
+ "typename": "pentium3-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "pentium3",
+ "typename": "pentium3-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "pentium3-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "pentium2-v1",
+ "typename": "pentium2-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "pentium2",
+ "typename": "pentium2-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "pentium2-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "pentium-v1",
+ "typename": "pentium-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "pentium",
+ "typename": "pentium-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "pentium-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "n270-v1",
+ "typename": "n270-v1-x86_64-cpu",
+ "unavailable-features": [
+ "ss"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "n270",
+ "typename": "n270-x86_64-cpu",
+ "unavailable-features": [
+ "ss"
+ ],
+ "alias-of": "n270-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "kvm64-v1",
+ "typename": "kvm64-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "kvm64",
+ "typename": "kvm64-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "kvm64-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "kvm32-v1",
+ "typename": "kvm32-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "kvm32",
+ "typename": "kvm32-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "kvm32-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "coreduo-v1",
+ "typename": "coreduo-v1-x86_64-cpu",
+ "unavailable-features": [
+ "ss"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "coreduo",
+ "typename": "coreduo-x86_64-cpu",
+ "unavailable-features": [
+ "ss"
+ ],
+ "alias-of": "coreduo-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "core2duo-v1",
+ "typename": "core2duo-v1-x86_64-cpu",
+ "unavailable-features": [
+ "ss"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "core2duo",
+ "typename": "core2duo-x86_64-cpu",
+ "unavailable-features": [
+ "ss"
+ ],
+ "alias-of": "core2duo-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "athlon-v1",
+ "typename": "athlon-v1-x86_64-cpu",
+ "unavailable-features": [
+ "3dnowext",
+ "3dnow"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "athlon",
+ "typename": "athlon-x86_64-cpu",
+ "unavailable-features": [
+ "3dnowext",
+ "3dnow"
+ ],
+ "alias-of": "athlon-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Westmere-v2",
+ "typename": "Westmere-v2-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Westmere-v1",
+ "typename": "Westmere-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Westmere-IBRS",
+ "typename": "Westmere-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Westmere-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Westmere",
+ "typename": "Westmere-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Westmere-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Snowridge-v2",
+ "typename": "Snowridge-v2-x86_64-cpu",
+ "unavailable-features": [
+ "erms",
+ "gfni",
+ "cldemote",
+ "movdiri",
+ "movdir64b",
+ "core-capability",
+ "split-lock-detect"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Snowridge-v1",
+ "typename": "Snowridge-v1-x86_64-cpu",
+ "unavailable-features": [
+ "erms",
+ "mpx",
+ "gfni",
+ "cldemote",
+ "movdiri",
+ "movdir64b",
+ "core-capability",
+ "mpx",
+ "mpx",
+ "split-lock-detect"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Snowridge",
+ "typename": "Snowridge-x86_64-cpu",
+ "unavailable-features": [
+ "erms",
+ "mpx",
+ "gfni",
+ "cldemote",
+ "movdiri",
+ "movdir64b",
+ "core-capability",
+ "mpx",
+ "mpx",
+ "split-lock-detect"
+ ],
+ "alias-of": "Snowridge-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Server-v3",
+ "typename": "Skylake-Server-v3-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Server-v2",
+ "typename": "Skylake-Server-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Server-v1",
+ "typename": "Skylake-Server-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Server-noTSX-IBRS",
+ "typename": "Skylake-Server-noTSX-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "alias-of": "Skylake-Server-v3",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Server-IBRS",
+ "typename": "Skylake-Server-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "alias-of": "Skylake-Server-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Server",
+ "typename": "Skylake-Server-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "alias-of": "Skylake-Server-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Client-v3",
+ "typename": "Skylake-Client-v3-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Client-v2",
+ "typename": "Skylake-Client-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Client-v1",
+ "typename": "Skylake-Client-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Client-noTSX-IBRS",
+ "typename": "Skylake-Client-noTSX-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "alias-of": "Skylake-Client-v3",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Client-IBRS",
+ "typename": "Skylake-Client-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "alias-of": "Skylake-Client-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Skylake-Client",
+ "typename": "Skylake-Client-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "alias-of": "Skylake-Client-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "SandyBridge-v2",
+ "typename": "SandyBridge-v2-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "SandyBridge-v1",
+ "typename": "SandyBridge-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "SandyBridge-IBRS",
+ "typename": "SandyBridge-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "SandyBridge-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "SandyBridge",
+ "typename": "SandyBridge-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "SandyBridge-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Penryn-v1",
+ "typename": "Penryn-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Penryn",
+ "typename": "Penryn-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Penryn-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G5-v1",
+ "typename": "Opteron_G5-v1-x86_64-cpu",
+ "unavailable-features": [
+ "xop",
+ "fma4",
+ "tbm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G5",
+ "typename": "Opteron_G5-x86_64-cpu",
+ "unavailable-features": [
+ "xop",
+ "fma4",
+ "tbm"
+ ],
+ "alias-of": "Opteron_G5-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G4-v1",
+ "typename": "Opteron_G4-v1-x86_64-cpu",
+ "unavailable-features": [
+ "xop",
+ "fma4"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G4",
+ "typename": "Opteron_G4-x86_64-cpu",
+ "unavailable-features": [
+ "xop",
+ "fma4"
+ ],
+ "alias-of": "Opteron_G4-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G3-v1",
+ "typename": "Opteron_G3-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G3",
+ "typename": "Opteron_G3-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Opteron_G3-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G2-v1",
+ "typename": "Opteron_G2-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G2",
+ "typename": "Opteron_G2-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Opteron_G2-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G1-v1",
+ "typename": "Opteron_G1-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Opteron_G1",
+ "typename": "Opteron_G1-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Opteron_G1-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Nehalem-v2",
+ "typename": "Nehalem-v2-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Nehalem-v1",
+ "typename": "Nehalem-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Nehalem-IBRS",
+ "typename": "Nehalem-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Nehalem-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Nehalem",
+ "typename": "Nehalem-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Nehalem-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "KnightsMill-v1",
+ "typename": "KnightsMill-v1-x86_64-cpu",
+ "unavailable-features": [
+ "ss",
+ "erms",
+ "avx512f",
+ "avx512pf",
+ "avx512er",
+ "avx512cd",
+ "avx512-vpopcntdq",
+ "avx512-4vnniw",
+ "avx512-4fmaps",
+ "avx512f",
+ "avx512f",
+ "avx512f"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "KnightsMill",
+ "typename": "KnightsMill-x86_64-cpu",
+ "unavailable-features": [
+ "ss",
+ "erms",
+ "avx512f",
+ "avx512pf",
+ "avx512er",
+ "avx512cd",
+ "avx512-vpopcntdq",
+ "avx512-4vnniw",
+ "avx512-4fmaps",
+ "avx512f",
+ "avx512f",
+ "avx512f"
+ ],
+ "alias-of": "KnightsMill-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "IvyBridge-v2",
+ "typename": "IvyBridge-v2-x86_64-cpu",
+ "unavailable-features": [
+ "erms"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "IvyBridge-v1",
+ "typename": "IvyBridge-v1-x86_64-cpu",
+ "unavailable-features": [
+ "erms"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "IvyBridge-IBRS",
+ "typename": "IvyBridge-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "erms"
+ ],
+ "alias-of": "IvyBridge-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "IvyBridge",
+ "typename": "IvyBridge-x86_64-cpu",
+ "unavailable-features": [
+ "erms"
+ ],
+ "alias-of": "IvyBridge-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Server-v3",
+ "typename": "Icelake-Server-v3-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "la57",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku",
+ "ibrs-all",
+ "taa-no"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Server-v2",
+ "typename": "Icelake-Server-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "la57",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Server-v1",
+ "typename": "Icelake-Server-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "la57",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Server-noTSX",
+ "typename": "Icelake-Server-noTSX-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "la57",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "alias-of": "Icelake-Server-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Server",
+ "typename": "Icelake-Server-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "la57",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "alias-of": "Icelake-Server-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Client-v2",
+ "typename": "Icelake-Client-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Client-v1",
+ "typename": "Icelake-Client-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Client-noTSX",
+ "typename": "Icelake-Client-noTSX-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "pku"
+ ],
+ "alias-of": "Icelake-Client-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Icelake-Client",
+ "typename": "Icelake-Client-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512vbmi",
+ "pku",
+ "avx512vbmi2",
+ "gfni",
+ "vaes",
+ "vpclmulqdq",
+ "avx512vnni",
+ "avx512bitalg",
+ "avx512-vpopcntdq",
+ "pku"
+ ],
+ "alias-of": "Icelake-Client-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-v4",
+ "typename": "Haswell-v4-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-v3",
+ "typename": "Haswell-v3-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-v2",
+ "typename": "Haswell-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-v1",
+ "typename": "Haswell-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-noTSX-IBRS",
+ "typename": "Haswell-noTSX-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "alias-of": "Haswell-v4",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-noTSX",
+ "typename": "Haswell-noTSX-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "alias-of": "Haswell-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell-IBRS",
+ "typename": "Haswell-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "alias-of": "Haswell-v3",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Haswell",
+ "typename": "Haswell-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "alias-of": "Haswell-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-v3",
+ "typename": "EPYC-v3-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-v2",
+ "typename": "EPYC-v2-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-v1",
+ "typename": "EPYC-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-Rome-v1",
+ "typename": "EPYC-Rome-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-Rome",
+ "typename": "EPYC-Rome-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "EPYC-Rome-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-IBPB",
+ "typename": "EPYC-IBPB-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "EPYC-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC",
+ "typename": "EPYC-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "EPYC-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Dhyana-v1",
+ "typename": "Dhyana-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Dhyana",
+ "typename": "Dhyana-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Dhyana-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Denverton-v2",
+ "typename": "Denverton-v2-x86_64-cpu",
+ "unavailable-features": [
+ "erms"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Denverton-v1",
+ "typename": "Denverton-v1-x86_64-cpu",
+ "unavailable-features": [
+ "erms",
+ "mpx",
+ "mpx",
+ "mpx"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Denverton",
+ "typename": "Denverton-x86_64-cpu",
+ "unavailable-features": [
+ "erms",
+ "mpx",
+ "mpx",
+ "mpx"
+ ],
+ "alias-of": "Denverton-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cooperlake-v1",
+ "typename": "Cooperlake-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512-bf16",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku",
+ "ibrs-all",
+ "taa-no"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cooperlake",
+ "typename": "Cooperlake-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512-bf16",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku",
+ "ibrs-all",
+ "taa-no"
+ ],
+ "alias-of": "Cooperlake-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Conroe-v1",
+ "typename": "Conroe-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Conroe",
+ "typename": "Conroe-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "Conroe-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cascadelake-Server-v3",
+ "typename": "Cascadelake-Server-v3-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku",
+ "ibrs-all"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cascadelake-Server-v2",
+ "typename": "Cascadelake-Server-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku",
+ "ibrs-all"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cascadelake-Server-v1",
+ "typename": "Cascadelake-Server-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cascadelake-Server-noTSX",
+ "typename": "Cascadelake-Server-noTSX-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku",
+ "ibrs-all"
+ ],
+ "alias-of": "Cascadelake-Server-v3",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Cascadelake-Server",
+ "typename": "Cascadelake-Server-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm",
+ "avx512f",
+ "avx512dq",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "pku",
+ "avx512vnni",
+ "avx512f",
+ "avx512f",
+ "avx512f",
+ "pku"
+ ],
+ "alias-of": "Cascadelake-Server-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-v4",
+ "typename": "Broadwell-v4-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-v3",
+ "typename": "Broadwell-v3-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-v2",
+ "typename": "Broadwell-v2-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-v1",
+ "typename": "Broadwell-v1-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-noTSX-IBRS",
+ "typename": "Broadwell-noTSX-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "alias-of": "Broadwell-v4",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-noTSX",
+ "typename": "Broadwell-noTSX-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "erms",
+ "invpcid"
+ ],
+ "alias-of": "Broadwell-v2",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell-IBRS",
+ "typename": "Broadwell-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "alias-of": "Broadwell-v3",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "Broadwell",
+ "typename": "Broadwell-x86_64-cpu",
+ "unavailable-features": [
+ "pcid",
+ "hle",
+ "erms",
+ "invpcid",
+ "rtm"
+ ],
+ "alias-of": "Broadwell-v1",
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "486-v1",
+ "typename": "486-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "486",
+ "typename": "486-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "486-v1",
+ "static": false,
+ "migration-safe": true
+ }
+ ],
+ "id": "definitions"
+}
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.sig b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.sig
new file mode 100644
index 0000000000..cf54739de9
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.sig
@@ -0,0 +1,4 @@
+830f10
+family: 23 (0x17)
+model: 49 (0x31)
+stepping: 0 (0x00)
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.xml
new file mode 100644
index 0000000000..fc4fd433dd
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core.xml
@@ -0,0 +1,66 @@
+<!-- AMD EPYC 7502 32-Core Processor -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000010' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00830f10' ebx='0x18400800' ecx='0x7ed8320b' edx='0x178bfbff'/>
+ <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040' ebx='0x00000040' ecx='0x00000003' edx='0x00000011'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000001' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x219c91a9' ecx='0x00400004' edx='0x00000000'/>
+ <cpuid eax_in='0x00000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001' ebx='0x00000002' ecx='0x00000100' edx='0x00000018'/>
+ <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000007' ebx='0x00000040' ecx='0x00000201' edx='0x00000018'/>
+ <cpuid eax_in='0x0000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x00' eax='0x00000207' ebx='0x00000340' ecx='0x00000380' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000340' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100' ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x09' eax='0x00000040' ebx='0x00000340' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000e' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000f' ecx_in='0x00' eax='0x00000000' ebx='0x000000ff' ecx='0x00000000' edx='0x00000002'/>
+ <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000040' ecx='0x000000ff' edx='0x00000007'/>
+ <cpuid eax_in='0x00000010' ecx_in='0x00' eax='0x00000000' ebx='0x00000002' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000010' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000004' edx='0x0000000f'/>
+ <cpuid eax_in='0x20000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x80000020' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00830f10' ebx='0x40000000' ecx='0x75c237ff' edx='0x2fd3fbff'/>
+ <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x20444d41' ebx='0x43595045' ecx='0x30353720' edx='0x32332032'/>
+ <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x726f432d' ebx='0x72502065' ecx='0x7365636f' edx='0x20726f73'/>
+ <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x20202020' ebx='0x20202020' ecx='0x20202020' edx='0x00202020'/>
+ <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff40ff40' ebx='0xff40ff40' ecx='0x20080140' edx='0x20080140'/>
+ <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x48006400' ebx='0x68006400' ecx='0x02006140' edx='0x04009140'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x0000001b' ecx='0x00000000' edx='0x00006799'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003030' ebx='0x018cf757' ecx='0x0000703f' edx='0x00010000'/>
+ <cpuid eax_in='0x80000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000001' ebx='0x00008000' ecx='0x00000000' edx='0x0013bcff'/>
+ <cpuid eax_in='0x8000000b' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000d' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000e' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000f' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000010' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000011' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000012' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000013' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000014' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000015' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000016' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000017' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000018' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000019' ecx_in='0x00' eax='0xf040f040' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001a' ecx_in='0x00' eax='0x00000006' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001b' ecx_in='0x00' eax='0x000003ff' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x00' eax='0x00004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x01' eax='0x00004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x02' eax='0x00004143' ebx='0x01c0003f' ecx='0x000003ff' edx='0x00000002'/>
+ <cpuid eax_in='0x8000001d' ecx_in='0x03' eax='0x0001c163' ebx='0x03c0003f' ecx='0x00003fff' edx='0x00000001'/>
+ <cpuid eax_in='0x8000001e' ecx_in='0x00' eax='0x00000018' ebx='0x0000010c' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001f' ecx_in='0x00' eax='0x0001000f' ebx='0x0000016f' ecx='0x000001fd' edx='0x00000001'/>
+ <cpuid eax_in='0x80000020' ecx_in='0x00' eax='0x00000000' ebx='0x00000002' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000020' ecx_in='0x01' eax='0x0000000b' ebx='0x00000000' ecx='0x00000000' edx='0x0000000f'/>
+ <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <msr index='0x10a' edx='0x00000000' eax='0x00000069'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml
index 869659cc80..ca71b9efb5 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml
@@ -5,6 +5,5 @@
<cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/>
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/>
<cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
- <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00008000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000014f6'/>
</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml
index 7458db25ab..55f41693d9 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml
@@ -5,7 +5,7 @@
<cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x219c01ab' ecx='0x00400004' edx='0xa8000000'/>
<cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x008003f7' edx='0x2e500800'/>
- <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x03001205' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x03009205' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000009'/>
<msr index='0x10a' edx='0x00000000' eax='0x00000069'/>
</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml
index 1320f65a58..a49ef46f52 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml
@@ -1,12 +1,10 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>EPYC-IBPB</model>
+ <model fallback='forbid'>EPYC-Rome</model>
<vendor>AMD</vendor>
<feature policy='require' name='ht'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='cmt'/>
- <feature policy='require' name='clwb'/>
<feature policy='require' name='umip'/>
- <feature policy='require' name='rdpid'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='mbm_total'/>
<feature policy='require' name='mbm_local'/>
@@ -17,13 +15,8 @@
<feature policy='require' name='wdt'/>
<feature policy='require' name='tce'/>
<feature policy='require' name='topoext'/>
- <feature policy='require' name='perfctr_core'/>
<feature policy='require' name='perfctr_nb'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='clzero'/>
- <feature policy='require' name='xsaveerptr'/>
- <feature policy='require' name='wbnoinvd'/>
- <feature policy='require' name='amd-stibp'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='npt'/>
<feature policy='require' name='lbrv'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
index 37905ec812..e9aea3339a 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
@@ -1,13 +1,11 @@
<cpu>
<arch>x86_64</arch>
- <model>EPYC-IBPB</model>
+ <model>EPYC-Rome</model>
<vendor>AMD</vendor>
<feature name='ht'/>
<feature name='osxsave'/>
<feature name='cmt'/>
- <feature name='clwb'/>
<feature name='umip'/>
- <feature name='rdpid'/>
<feature name='xsaves'/>
<feature name='mbm_total'/>
<feature name='mbm_local'/>
@@ -18,13 +16,8 @@
<feature name='wdt'/>
<feature name='tce'/>
<feature name='topoext'/>
- <feature name='perfctr_core'/>
<feature name='perfctr_nb'/>
<feature name='invtsc'/>
- <feature name='clzero'/>
- <feature name='xsaveerptr'/>
- <feature name='wbnoinvd'/>
- <feature name='amd-stibp'/>
<feature name='amd-ssbd'/>
<feature name='npt'/>
<feature name='lbrv'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml
index fba378e030..5b83c04d3f 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml
@@ -1,22 +1,16 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>EPYC-IBPB</model>
+ <model fallback='forbid'>EPYC-Rome</model>
<vendor>AMD</vendor>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
- <feature policy='require' name='clwb'/>
<feature policy='require' name='umip'/>
- <feature policy='require' name='rdpid'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='arch-capabilities'/>
<feature policy='require' name='ssbd'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='cmp_legacy'/>
- <feature policy='require' name='perfctr_core'/>
- <feature policy='require' name='clzero'/>
- <feature policy='require' name='xsaveerptr'/>
- <feature policy='require' name='wbnoinvd'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='virt-ssbd'/>
<feature policy='require' name='npt'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.json b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.json
index fbdf1a794a..9ecc965e53 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.json
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.json
@@ -313,6 +313,7 @@
"tsc_scale": false,
"tsc-scale": false,
"topoext": false,
+ "amd-stibp": true,
"hv-vpindex": false,
"hv-no-nonarch-coresharing": "off",
"vmx-preemption-timer": false,
@@ -1501,6 +1502,13 @@
"static": false,
"migration-safe": true
},
+ {
+ "name": "EPYC-v3",
+ "typename": "EPYC-v3-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
{
"name": "EPYC-v2",
"typename": "EPYC-v2-x86_64-cpu",
@@ -1515,6 +1523,21 @@
"static": false,
"migration-safe": true
},
+ {
+ "name": "EPYC-Rome-v1",
+ "typename": "EPYC-Rome-v1-x86_64-cpu",
+ "unavailable-features": [],
+ "static": false,
+ "migration-safe": true
+ },
+ {
+ "name": "EPYC-Rome",
+ "typename": "EPYC-Rome-x86_64-cpu",
+ "unavailable-features": [],
+ "alias-of": "EPYC-Rome-v1",
+ "static": false,
+ "migration-safe": true
+ },
{
"name": "EPYC-IBPB",
"typename": "EPYC-IBPB-x86_64-cpu",
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.xml
index c8db5e3e10..40abc48762 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core.xml
@@ -1,7 +1,7 @@
<!-- AMD Ryzen 9 3900X 12-Core Processor -->
<cpudata arch='x86'>
<cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000010' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
- <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00870f10' ebx='0x10180800' ecx='0x7ed8320b' edx='0x178bfbff'/>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00870f10' ebx='0x0a180800' ecx='0x7ed8320b' edx='0x178bfbff'/>
<cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040' ebx='0x00000040' ecx='0x00000003' edx='0x00000011'/>
@@ -10,8 +10,8 @@
<cpuid eax_in='0x00000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x00000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x0000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
- <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001' ebx='0x00000002' ecx='0x00000100' edx='0x00000010'/>
- <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000007' ebx='0x00000018' ecx='0x00000201' edx='0x00000010'/>
+ <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001' ebx='0x00000002' ecx='0x00000100' edx='0x0000000a'/>
+ <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000007' ebx='0x00000018' ecx='0x00000201' edx='0x0000000a'/>
<cpuid eax_in='0x0000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x0000000d' ecx_in='0x00' eax='0x00000207' ebx='0x00000340' ecx='0x00000380' edx='0x00000000'/>
<cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000340' ecx='0x00000000' edx='0x00000000'/>
@@ -26,8 +26,8 @@
<cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x80000020' ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00870f10' ebx='0x20000000' ecx='0x75c237ff' edx='0x2fd3fbff'/>
<cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x20444d41' ebx='0x657a7952' ecx='0x2039206e' edx='0x30303933'/>
- <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x32312058' ebx='0x726f432d' ecx='0x72502065' edx='0x7365636f'/>
- <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x20726f73' ebx='0x20202020' ecx='0x20202020' edx='0x00202020'/>
+ <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x2d323120' ebx='0x65726f43' ecx='0x6f725020' edx='0x73736563'/>
+ <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2020726f' ebx='0x20202020' ecx='0x20202020' edx='0x00202020'/>
<cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff40ff40' ebx='0xff40ff40' ecx='0x20080140' edx='0x20080140'/>
<cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x48006400' ebx='0x68006400' ecx='0x02006140' edx='0x02009140'/>
<cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x0000001b' ecx='0x00000000' edx='0x00006799'/>
@@ -56,7 +56,7 @@
<cpuid eax_in='0x8000001d' ecx_in='0x01' eax='0x00004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
<cpuid eax_in='0x8000001d' ecx_in='0x02' eax='0x00004143' ebx='0x01c0003f' ecx='0x000003ff' edx='0x00000002'/>
<cpuid eax_in='0x8000001d' ecx_in='0x03' eax='0x00014163' ebx='0x03c0003f' ecx='0x00003fff' edx='0x00000001'/>
- <cpuid eax_in='0x8000001e' ecx_in='0x00' eax='0x00000010' ebx='0x00000108' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001e' ecx_in='0x00' eax='0x0000000a' ebx='0x00000105' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x8000001f' ecx_in='0x00' eax='0x0001000f' ebx='0x0000016f' ecx='0x000001fd' edx='0x00000001'/>
<cpuid eax_in='0x80000020' ecx_in='0x00' eax='0x00000000' ebx='0x00000002' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x80000020' ecx_in='0x01' eax='0x0000000b' ebx='0x00000000' ecx='0x00000000' edx='0x0000000f'/>
--
2.26.2
2
1
[PATCH 0/6] qemu: migration: Rename and refactor migration cookie/parser formatter
by Peter Krempa 30 Sep '20
by Peter Krempa 30 Sep '20
30 Sep '20
Peter Krempa (6):
qemu: migration: Rename qemuMigrationBakeCookie to
qemuMigrationCookieFormat
qemuMigrationCookieNew: Refactor allocation and cleanup
qemuMigrationCookieNew: Export
qemuMigrationSrcBeginPhase: Use qemuMigrationCookieNew
qemuMigrationCookieXMLFormatStr: Remove
qemu: migration: Rename qemuMigrationEatCookie to
qemuMigrationCookieParse
src/qemu/qemu_migration.c | 69 +++++++++++++-------------
src/qemu/qemu_migration_cookie.c | 85 ++++++++++++++------------------
src/qemu/qemu_migration_cookie.h | 32 ++++++------
3 files changed, 88 insertions(+), 98 deletions(-)
--
2.26.2
3
13
Hello All,
I recently ran into problems with the default very restrictive permissions
for files that are created via 9pfs host/guest shares (600 for files, 700
for directories). QEMU added two new-ish flags, fmode and dmode, to its
9pfs implementation so that users are able to control these exact
permissions.
Would it be possible to expose these two flags via the domain XML? I made
an issue on the libvirt Gitlab (
https://gitlab.com/libvirt/libvirt/-/issues/80) but it appears mailing list
posts may be preferred.
Thank you
2
1
According to latest fashion trends, it is possible
to rename the default branch.
Can we rename it to 'main'?
It's one less syllable and two letters shorter.
Jano
3
3
[PATCH] virDomainNumaFillCPUsInNode: Skip over NUMA nodes without vCPUs
by Michal Privoznik 30 Sep '20
by Michal Privoznik 30 Sep '20
30 Sep '20
After v6.5.0-rc1~148 we started to rectify vCPU to guest NUMA
assignment - if there is a vCPU not assigned to any guest NUMA
node it is automatically assigned to node #0.
A month later I've made it possible to define guest NUMA nodes
without vCPUs (v6.6.0-rc1~250) - this is needed because of HMAT.
As a part of that I fixed all callers of
virDomainNumaGetNodeCpumask() (which returns a bitmap of vCPUs for
given node) to handle case when NULL is returned (i.e. no vCPUs
assigned to given node). But of course my patch was written
before aforementioned vCPU rectify patch but merged afterwards
and hence I missed the virDomainNumaFillCPUsInNode() caller.
And because we are dealing with a NULL pointer, of course this
leads to a crash. Just try to define a domain with at least two
NUMA nodes and no vCPU assignment to any of the nodes.
Fixes: a26f61ee0cffa421b87ef568002b684dd8025432
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1880289
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/conf/numa_conf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/conf/numa_conf.c b/src/conf/numa_conf.c
index bfa312215c..cc6c77f105 100644
--- a/src/conf/numa_conf.c
+++ b/src/conf/numa_conf.c
@@ -1816,7 +1816,7 @@ virDomainNumaFillCPUsInNode(virDomainNumaPtr numa,
for (i = 0; i < numa->nmem_nodes; i++) {
virBitmapPtr nodeCpus = virDomainNumaGetNodeCpumask(numa, i);
- if (i == node)
+ if (i == node || !nodeCpus)
continue;
virBitmapSubtract(maxCPUsBitmap, nodeCpus);
--
2.26.2
2
1
Okay, that did not go as expected. Anyway
This patch add the qemu EPYC-Rome model and includes cpuid data from an
EPYC 7502 system as well as updated cpuid information from a Ryzen 9
3900 system.
Since the EPYC 7502 and the Ryzen 9 are pretty much identical, the
latter could be dropped as there is no corresponding qemu model.
Markus
2
2
29 Sep '20
Ján Tomko (7):
bhyve: use g_new0 instead of VIR_ALLOC*
esx: use g_new0 instead of VIR_ALLOC*
hyperv: use g_new0 instead of VIR_ALLOC*
interface: use g_new0 instead of VIR_ALLOC*
src: libvirt-stream: use g_new0 instead of VIR_ALLOC*
storage: scsi: invert logic in createVport
storage: use g_new0 instead of VIR_ALLOC*
src/bhyve/bhyve_capabilities.c | 3 +-
src/bhyve/bhyve_domain.c | 9 ++----
src/bhyve/bhyve_driver.c | 3 +-
src/bhyve/bhyve_parse_command.c | 7 ++---
src/esx/esx_driver.c | 14 ++++-----
src/esx/esx_network_driver.c | 17 ++++-------
src/esx/esx_storage_backend_iscsi.c | 3 +-
src/esx/esx_storage_backend_vmfs.c | 8 ++---
src/esx/esx_stream.c | 6 ++--
src/esx/esx_util.c | 3 +-
src/esx/esx_vi.c | 12 +++-----
src/esx/esx_vi_types.c | 3 +-
src/hyperv/hyperv_driver.c | 13 ++++-----
src/hyperv/hyperv_util.c | 3 +-
src/hyperv/hyperv_wmi.c | 13 ++-------
src/interface/interface_backend_netcf.c | 16 ++++------
src/interface/interface_backend_udev.c | 22 +++++---------
src/libvirt-stream.c | 12 +++-----
src/storage/storage_backend_disk.c | 6 ++--
src/storage/storage_backend_fs.c | 8 ++---
src/storage/storage_backend_gluster.c | 12 +++-----
src/storage/storage_backend_iscsi.c | 8 ++---
src/storage/storage_backend_iscsi_direct.c | 13 ++++-----
src/storage/storage_backend_logical.c | 6 ++--
src/storage/storage_backend_mpath.c | 3 +-
src/storage/storage_backend_rbd.c | 29 +++++++-----------
src/storage/storage_backend_scsi.c | 17 +++++------
src/storage/storage_backend_sheepdog.c | 3 +-
src/storage/storage_backend_zfs.c | 3 +-
src/storage/storage_driver.c | 14 +++------
src/storage/storage_file_fs.c | 3 +-
src/storage/storage_file_gluster.c | 6 ++--
src/storage/storage_util.c | 34 ++++++++--------------
33 files changed, 117 insertions(+), 215 deletions(-)
--
2.26.2
3
15
29 Sep '20
Daniel P. Berrangé (2):
ci: introduce pygments package to install
docs: specify "sh" as the language for code-block directives
.gitlab-ci.yml | 2 +-
ci/cirrus/build.yml | 6 +-
ci/cirrus/libvirt-freebsd-11.vars | 5 +-
ci/cirrus/libvirt-freebsd-12.vars | 5 +-
ci/cirrus/libvirt-macos-1015.vars | 6 +-
ci/cirrus/refresh | 2 +-
ci/containers/libvirt-centos-7.Dockerfile | 1 +
ci/containers/libvirt-centos-8.Dockerfile | 1 +
.../libvirt-centos-stream.Dockerfile | 1 +
...libvirt-debian-10-cross-aarch64.Dockerfile | 1 +
.../libvirt-debian-10-cross-armv6l.Dockerfile | 1 +
.../libvirt-debian-10-cross-armv7l.Dockerfile | 1 +
.../libvirt-debian-10-cross-i686.Dockerfile | 1 +
.../libvirt-debian-10-cross-mips.Dockerfile | 1 +
...ibvirt-debian-10-cross-mips64el.Dockerfile | 1 +
.../libvirt-debian-10-cross-mipsel.Dockerfile | 1 +
...libvirt-debian-10-cross-ppc64le.Dockerfile | 1 +
.../libvirt-debian-10-cross-s390x.Dockerfile | 1 +
ci/containers/libvirt-debian-10.Dockerfile | 1 +
...ibvirt-debian-sid-cross-aarch64.Dockerfile | 1 +
...libvirt-debian-sid-cross-armv6l.Dockerfile | 1 +
...libvirt-debian-sid-cross-armv7l.Dockerfile | 1 +
.../libvirt-debian-sid-cross-i686.Dockerfile | 1 +
...bvirt-debian-sid-cross-mips64el.Dockerfile | 1 +
...libvirt-debian-sid-cross-mipsel.Dockerfile | 1 +
...ibvirt-debian-sid-cross-ppc64le.Dockerfile | 1 +
.../libvirt-debian-sid-cross-s390x.Dockerfile | 1 +
ci/containers/libvirt-debian-sid.Dockerfile | 1 +
ci/containers/libvirt-fedora-31.Dockerfile | 1 +
ci/containers/libvirt-fedora-32.Dockerfile | 1 +
...rt-fedora-rawhide-cross-mingw32.Dockerfile | 1 +
...rt-fedora-rawhide-cross-mingw64.Dockerfile | 1 +
.../libvirt-fedora-rawhide.Dockerfile | 1 +
ci/containers/libvirt-opensuse-151.Dockerfile | 1 +
ci/containers/libvirt-ubuntu-1804.Dockerfile | 1 +
ci/containers/libvirt-ubuntu-2004.Dockerfile | 1 +
docs/manpages/libvirtd.rst | 4 +-
docs/manpages/virsh.rst | 582 +++++++++---------
docs/manpages/virt-admin.rst | 52 +-
docs/manpages/virtlockd.rst | 4 +-
docs/manpages/virtlogd.rst | 4 +-
41 files changed, 366 insertions(+), 336 deletions(-)
--
2.26.2
2
4
* Document sound device support,
* Document VNC password configuration and framebuffer resolution.
Signed-off-by: Roman Bogorodskiy <bogorodskiy(a)gmail.com>
---
docs/drvbhyve.html.in | 47 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)
diff --git a/docs/drvbhyve.html.in b/docs/drvbhyve.html.in
index ca511eeccd..cffb63f1ad 100644
--- a/docs/drvbhyve.html.in
+++ b/docs/drvbhyve.html.in
@@ -389,6 +389,30 @@ it with the <code>port</code> attribute):</p>
<graphics type='vnc' autoport='yes'>
</pre>
+<p><span class="since">Since 6.8.0</span>, it's possible to set framebuffer resolution
+using the <code>resolution</code> sub-element:</p>
+
+<pre>
+ <video>
+ <model type='gop' heads='1' primary='yes'>
+ <resolution x='800' y='600'/>
+ </model>
+ </video>
+</pre>
+
+<p><span class="since">Since 6.8.0</span>, VNC server can be configured to use
+password based authentication:</p>
+
+<pre>
+ <graphics type='vnc' port='5904' passwd='foobar'>
+ <listen type='address' address='127.0.0.1'/>
+ </graphics>
+</pre>
+
+<p>Note: VNC password authentication is known to be cryptographically weak.
+Additionally, the password is passed as a command line argument in clear text.
+Make sure you understand the risks associated with this feature before using it.</p>
+
<h3><a id="clockconfig">Clock configuration</a></h3>
<p>Originally bhyve supported only localtime for RTC. Support for UTC time was introduced in
@@ -432,6 +456,29 @@ supports Intel e1000 network adapter emulation. It's supported in libvirt
...
</pre>
+<h3><a id="sound">Sound device</a></h3>
+
+<p>As of <a href="https://svnweb.freebsd.org/changeset/base/349355">r349355</a> bhyve
+supports sound device emulation. It's supported in libvirt
+<span class="since">since 6.7.0</span>.</p>
+
+<pre>
+...
+ <sound model='ich7'>
+ <audio id='1'/>
+ </sound>
+ <audio id='1' type='oss'>
+ <input dev='/dev/dsp0'/>
+ <output dev='/dev/dsp0'/>
+ </audio>
+...
+</pre>
+
+<p>Here, the <code>sound</code> element specifies the sound device as it's exposed
+to the guest, with <code>ich7</code> being the only supported model now,
+and the <code>audio</code> element specifies how the guest device is mapped
+to the host sound device.</p>
+
<h3><a id="wired">Wiring guest memory</a></h3>
<p><span class="since">Since 4.4.0</span>, it's possible to specify that guest memory should
--
2.27.0
2
3
I have just tagged v6.8.0-rc1 in the repository and pushed signed
tarballs and source RPMs to https://libvirt.org/sources/
Please give the release candidate some testing and in case you find a
serious issue which should have a fix in the upcoming release, feel
free to reply to this thread to make sure the issue is more visible.
If you have not done so yet, please update NEWS.rst to document any
significant change you made since the last release.
Thanks,
Jirka
6
10
29 Sep '20
From: Igor Mammedov <imammedo(a)redhat.com>
These were deprecated since 4.0, remove both HMP and QMP variants.
Users should use device_add command instead. To get list of
possible CPUs and options, use 'info hotpluggable-cpus' HMP
or query-hotpluggable-cpus QMP command.
Signed-off-by: Igor Mammedov <imammedo(a)redhat.com>
Reviewed-by: Thomas Huth <thuth(a)redhat.com>
Acked-by: Dr. David Alan Gilbert <dgilbert(a)redhat.com>
Reviewed-by: Michal Privoznik <mprivozn(a)redhat.com>
Acked-by: Cornelia Huck <cohuck(a)redhat.com>
Message-Id: <20200915120403.1074579-1-imammedo(a)redhat.com>
Reviewed-by: Michael S. Tsirkin <mst(a)redhat.com>
Signed-off-by: Michael S. Tsirkin <mst(a)redhat.com>
---
qapi/machine.json | 24 ---------
include/hw/boards.h | 1 -
include/hw/i386/pc.h | 1 -
include/monitor/hmp.h | 1 -
hw/core/machine-hmp-cmds.c | 12 -----
hw/core/machine-qmp-cmds.c | 12 -----
hw/i386/pc.c | 27 ----------
hw/i386/pc_piix.c | 1 -
hw/s390x/s390-virtio-ccw.c | 12 -----
tests/qtest/cpu-plug-test.c | 100 ++++--------------------------------
tests/qtest/test-hmp.c | 1 -
docs/system/deprecated.rst | 25 +++++----
hmp-commands.hx | 15 ------
13 files changed, 21 insertions(+), 211 deletions(-)
diff --git a/qapi/machine.json b/qapi/machine.json
index 0ac1880e4a..d8ed096e9a 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -307,30 +307,6 @@
##
{ 'command': 'query-cpus-fast', 'returns': [ 'CpuInfoFast' ] }
-##
-# @cpu-add:
-#
-# Adds CPU with specified ID.
-#
-# @id: ID of CPU to be created, valid values [0..max_cpus)
-#
-# Features:
-# @deprecated: This command is deprecated. Use `device_add` instead.
-# See the `query-hotpluggable-cpus` command for details.
-#
-# Returns: Nothing on success
-#
-# Since: 1.5
-#
-# Example:
-#
-# -> { "execute": "cpu-add", "arguments": { "id": 2 } }
-# <- { "return": {} }
-#
-##
-{ 'command': 'cpu-add', 'data': {'id': 'int'},
- 'features': [ 'deprecated' ] }
-
##
# @MachineInfo:
#
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 56aa1ca335..482d2833f6 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -168,7 +168,6 @@ struct MachineClass {
void (*init)(MachineState *state);
void (*reset)(MachineState *state);
void (*wakeup)(MachineState *state);
- void (*hot_add_cpu)(MachineState *state, const int64_t id, Error **errp);
int (*kvm_type)(MachineState *machine, const char *arg);
void (*smp_parse)(MachineState *ms, QemuOpts *opts);
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index b2da2c8d2b..c71b02cafd 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -132,7 +132,6 @@ extern int fd_bootchk;
void pc_acpi_smi_interrupt(void *opaque, int irq, int level);
-void pc_hot_add_cpu(MachineState *ms, const int64_t id, Error **errp);
void pc_smp_parse(MachineState *ms, QemuOpts *opts);
void pc_guest_info_init(PCMachineState *pcms);
diff --git a/include/monitor/hmp.h b/include/monitor/hmp.h
index c986cfd28b..642e9e91f9 100644
--- a/include/monitor/hmp.h
+++ b/include/monitor/hmp.h
@@ -89,7 +89,6 @@ void hmp_chardev_add(Monitor *mon, const QDict *qdict);
void hmp_chardev_change(Monitor *mon, const QDict *qdict);
void hmp_chardev_remove(Monitor *mon, const QDict *qdict);
void hmp_chardev_send_break(Monitor *mon, const QDict *qdict);
-void hmp_cpu_add(Monitor *mon, const QDict *qdict);
void hmp_object_add(Monitor *mon, const QDict *qdict);
void hmp_object_del(Monitor *mon, const QDict *qdict);
void hmp_info_memdev(Monitor *mon, const QDict *qdict);
diff --git a/hw/core/machine-hmp-cmds.c b/hw/core/machine-hmp-cmds.c
index 39999c47c5..f4092b98cc 100644
--- a/hw/core/machine-hmp-cmds.c
+++ b/hw/core/machine-hmp-cmds.c
@@ -46,18 +46,6 @@ void hmp_info_cpus(Monitor *mon, const QDict *qdict)
qapi_free_CpuInfoFastList(cpu_list);
}
-void hmp_cpu_add(Monitor *mon, const QDict *qdict)
-{
- int cpuid;
- Error *err = NULL;
-
- error_report("cpu_add is deprecated, please use device_add instead");
-
- cpuid = qdict_get_int(qdict, "id");
- qmp_cpu_add(cpuid, &err);
- hmp_handle_error(mon, err);
-}
-
void hmp_hotpluggable_cpus(Monitor *mon, const QDict *qdict)
{
Error *err = NULL;
diff --git a/hw/core/machine-qmp-cmds.c b/hw/core/machine-qmp-cmds.c
index 21551221ad..5362c80a18 100644
--- a/hw/core/machine-qmp-cmds.c
+++ b/hw/core/machine-qmp-cmds.c
@@ -284,18 +284,6 @@ HotpluggableCPUList *qmp_query_hotpluggable_cpus(Error **errp)
return machine_query_hotpluggable_cpus(ms);
}
-void qmp_cpu_add(int64_t id, Error **errp)
-{
- MachineClass *mc;
-
- mc = MACHINE_GET_CLASS(current_machine);
- if (mc->hot_add_cpu) {
- mc->hot_add_cpu(current_machine, id, errp);
- } else {
- error_setg(errp, "Not supported");
- }
-}
-
void qmp_set_numa_node(NumaOptions *cmd, Error **errp)
{
if (!runstate_check(RUN_STATE_PRECONFIG)) {
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 1e2ab5ebe7..50e8317342 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -769,32 +769,6 @@ void pc_smp_parse(MachineState *ms, QemuOpts *opts)
}
}
-void pc_hot_add_cpu(MachineState *ms, const int64_t id, Error **errp)
-{
- X86MachineState *x86ms = X86_MACHINE(ms);
- int64_t apic_id = x86_cpu_apic_id_from_index(x86ms, id);
- Error *local_err = NULL;
-
- if (id < 0) {
- error_setg(errp, "Invalid CPU id: %" PRIi64, id);
- return;
- }
-
- if (apic_id >= ACPI_CPU_HOTPLUG_ID_LIMIT) {
- error_setg(errp, "Unable to add CPU: %" PRIi64
- ", resulting APIC ID (%" PRIi64 ") is too large",
- id, apic_id);
- return;
- }
-
-
- x86_cpu_new(X86_MACHINE(ms), apic_id, &local_err);
- if (local_err) {
- error_propagate(errp, local_err);
- return;
- }
-}
-
static
void pc_machine_done(Notifier *notifier, void *data)
{
@@ -1691,7 +1665,6 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
mc->auto_enable_numa_with_memdev = true;
mc->has_hotpluggable_cpus = true;
mc->default_boot_order = "cad";
- mc->hot_add_cpu = pc_hot_add_cpu;
mc->smp_parse = pc_smp_parse;
mc->block_default_type = IF_IDE;
mc->max_cpus = 255;
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 6f3e78bb60..2d8413a0ce 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -752,7 +752,6 @@ static void pc_i440fx_1_4_machine_options(MachineClass *m)
{
pc_i440fx_1_5_machine_options(m);
m->hw_version = "1.4.0";
- m->hot_add_cpu = NULL;
compat_props_add(m->compat_props, pc_compat_1_4, pc_compat_1_4_len);
}
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 3106bbea33..28266a3a35 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -553,17 +553,6 @@ static HotplugHandler *s390_get_hotplug_handler(MachineState *machine,
return NULL;
}
-static void s390_hot_add_cpu(MachineState *machine,
- const int64_t id, Error **errp)
-{
- ObjectClass *oc;
-
- g_assert(machine->possible_cpus->cpus[0].cpu);
- oc = OBJECT_CLASS(CPU_GET_CLASS(machine->possible_cpus->cpus[0].cpu));
-
- s390x_new_cpu(object_class_get_name(oc), id, errp);
-}
-
static void s390_nmi(NMIState *n, int cpu_index, Error **errp)
{
CPUState *cs = qemu_get_cpu(cpu_index);
@@ -604,7 +593,6 @@ static void ccw_machine_class_init(ObjectClass *oc, void *data)
s390mc->hpage_1m_allowed = true;
mc->init = ccw_init;
mc->reset = s390_machine_reset;
- mc->hot_add_cpu = s390_hot_add_cpu;
mc->block_default_type = IF_VIRTIO;
mc->no_cdrom = 1;
mc->no_floppy = 1;
diff --git a/tests/qtest/cpu-plug-test.c b/tests/qtest/cpu-plug-test.c
index e8ffbbce4b..a1c689414b 100644
--- a/tests/qtest/cpu-plug-test.c
+++ b/tests/qtest/cpu-plug-test.c
@@ -25,54 +25,6 @@ struct PlugTestData {
};
typedef struct PlugTestData PlugTestData;
-static void test_plug_with_cpu_add(gconstpointer data)
-{
- const PlugTestData *s = data;
- char *args;
- QDict *response;
- unsigned int i;
-
- args = g_strdup_printf("-machine %s -cpu %s "
- "-smp 1,sockets=%u,cores=%u,threads=%u,maxcpus=%u",
- s->machine, s->cpu_model,
- s->sockets, s->cores, s->threads, s->maxcpus);
- qtest_start(args);
-
- for (i = 1; i < s->maxcpus; i++) {
- response = qmp("{ 'execute': 'cpu-add',"
- " 'arguments': { 'id': %d } }", i);
- g_assert(response);
- g_assert(!qdict_haskey(response, "error"));
- qobject_unref(response);
- }
-
- qtest_end();
- g_free(args);
-}
-
-static void test_plug_without_cpu_add(gconstpointer data)
-{
- const PlugTestData *s = data;
- char *args;
- QDict *response;
-
- args = g_strdup_printf("-machine %s -cpu %s "
- "-smp 1,sockets=%u,cores=%u,threads=%u,maxcpus=%u",
- s->machine, s->cpu_model,
- s->sockets, s->cores, s->threads, s->maxcpus);
- qtest_start(args);
-
- response = qmp("{ 'execute': 'cpu-add',"
- " 'arguments': { 'id': %d } }",
- s->sockets * s->cores * s->threads);
- g_assert(response);
- g_assert(qdict_haskey(response, "error"));
- qobject_unref(response);
-
- qtest_end();
- g_free(args);
-}
-
static void test_plug_with_device_add(gconstpointer data)
{
const PlugTestData *td = data;
@@ -144,36 +96,13 @@ static void add_pc_test_case(const char *mname)
data->cores = 3;
data->threads = 2;
data->maxcpus = data->sockets * data->cores * data->threads;
- if (g_str_has_suffix(mname, "-1.4") ||
- (strcmp(mname, "pc-1.3") == 0) ||
- (strcmp(mname, "pc-1.2") == 0) ||
- (strcmp(mname, "pc-1.1") == 0) ||
- (strcmp(mname, "pc-1.0") == 0)) {
- path = g_strdup_printf("cpu-plug/%s/init/%ux%ux%u&maxcpus=%u",
- mname, data->sockets, data->cores,
- data->threads, data->maxcpus);
- qtest_add_data_func_full(path, data, test_plug_without_cpu_add,
- test_data_free);
- g_free(path);
- } else {
- PlugTestData *data2 = g_memdup(data, sizeof(PlugTestData));
- data2->machine = g_strdup(data->machine);
- data2->device_model = g_strdup(data->device_model);
-
- path = g_strdup_printf("cpu-plug/%s/cpu-add/%ux%ux%u&maxcpus=%u",
- mname, data->sockets, data->cores,
- data->threads, data->maxcpus);
- qtest_add_data_func_full(path, data, test_plug_with_cpu_add,
- test_data_free);
- g_free(path);
- path = g_strdup_printf("cpu-plug/%s/device-add/%ux%ux%u&maxcpus=%u",
- mname, data2->sockets, data2->cores,
- data2->threads, data2->maxcpus);
- qtest_add_data_func_full(path, data2, test_plug_with_device_add,
- test_data_free);
- g_free(path);
- }
+ path = g_strdup_printf("cpu-plug/%s/device-add/%ux%ux%u&maxcpus=%u",
+ mname, data->sockets, data->cores,
+ data->threads, data->maxcpus);
+ qtest_add_data_func_full(path, data, test_plug_with_device_add,
+ test_data_free);
+ g_free(path);
}
static void add_pseries_test_case(const char *mname)
@@ -205,7 +134,7 @@ static void add_pseries_test_case(const char *mname)
static void add_s390x_test_case(const char *mname)
{
char *path;
- PlugTestData *data, *data2;
+ PlugTestData *data;
if (!g_str_has_prefix(mname, "s390-ccw-virtio-")) {
return;
@@ -220,21 +149,10 @@ static void add_s390x_test_case(const char *mname)
data->threads = 1;
data->maxcpus = data->sockets * data->cores * data->threads;
- data2 = g_memdup(data, sizeof(PlugTestData));
- data2->machine = g_strdup(data->machine);
- data2->device_model = g_strdup(data->device_model);
-
- path = g_strdup_printf("cpu-plug/%s/cpu-add/%ux%ux%u&maxcpus=%u",
+ path = g_strdup_printf("cpu-plug/%s/device-add/%ux%ux%u&maxcpus=%u",
mname, data->sockets, data->cores,
data->threads, data->maxcpus);
- qtest_add_data_func_full(path, data, test_plug_with_cpu_add,
- test_data_free);
- g_free(path);
-
- path = g_strdup_printf("cpu-plug/%s/device-add/%ux%ux%u&maxcpus=%u",
- mname, data2->sockets, data2->cores,
- data2->threads, data2->maxcpus);
- qtest_add_data_func_full(path, data2, test_plug_with_device_add,
+ qtest_add_data_func_full(path, data, test_plug_with_device_add,
test_data_free);
g_free(path);
}
diff --git a/tests/qtest/test-hmp.c b/tests/qtest/test-hmp.c
index aea1384bac..94a8023173 100644
--- a/tests/qtest/test-hmp.c
+++ b/tests/qtest/test-hmp.c
@@ -27,7 +27,6 @@ static const char *hmp_cmds[] = {
"chardev-change testchardev1 ringbuf",
"chardev-remove testchardev1",
"commit all",
- "cpu-add 1",
"cpu 0",
"device_add ?",
"device_add usb-mouse,id=mouse1",
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index 17aa74531c..5326141cee 100644
--- a/docs/system/deprecated.rst
+++ b/docs/system/deprecated.rst
@@ -272,13 +272,6 @@ The ``query-cpus`` command is replaced by the ``query-cpus-fast`` command.
The ``arch`` output member of the ``query-cpus-fast`` command is
replaced by the ``target`` output member.
-``cpu-add`` (since 4.0)
-'''''''''''''''''''''''
-
-Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``. See
-documentation of ``query-hotpluggable-cpus`` for additional
-details.
-
``query-events`` (since 4.0)
''''''''''''''''''''''''''''
@@ -294,12 +287,6 @@ the 'wait' field, which is only applicable to sockets in server mode
Human Monitor Protocol (HMP) commands
-------------------------------------
-``cpu-add`` (since 4.0)
-'''''''''''''''''''''''
-
-Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``. See
-documentation of ``query-hotpluggable-cpus`` for additional details.
-
``acl_show``, ``acl_reset``, ``acl_policy``, ``acl_add``, ``acl_remove`` (since 4.0.0)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
@@ -517,6 +504,12 @@ QEMU Machine Protocol (QMP) commands
The "autoload" parameter has been ignored since 2.12.0. All bitmaps
are automatically loaded from qcow2 images.
+``cpu-add`` (removed in 5.2)
+''''''''''''''''''''''''''''
+
+Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``. See
+documentation of ``query-hotpluggable-cpus`` for additional details.
+
Human Monitor Protocol (HMP) commands
-------------------------------------
@@ -526,6 +519,12 @@ The ``hub_id`` parameter of ``hostfwd_add`` / ``hostfwd_remove`` (removed in 5.0
The ``[hub_id name]`` parameter tuple of the 'hostfwd_add' and
'hostfwd_remove' HMP commands has been replaced by ``netdev_id``.
+``cpu-add`` (removed in 5.2)
+''''''''''''''''''''''''''''
+
+Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``. See
+documentation of ``query-hotpluggable-cpus`` for additional details.
+
Guest Emulator ISAs
-------------------
diff --git a/hmp-commands.hx b/hmp-commands.hx
index 27c4bbe0f2..1088d64503 100644
--- a/hmp-commands.hx
+++ b/hmp-commands.hx
@@ -1761,21 +1761,6 @@ SRST
Executes a qemu-io command on the given block device.
ERST
- {
- .name = "cpu-add",
- .args_type = "id:i",
- .params = "id",
- .help = "add cpu (deprecated, use device_add instead)",
- .cmd = hmp_cpu_add,
- },
-
-SRST
-``cpu-add`` *id*
- Add CPU with id *id*. This command is deprecated, please
- +use ``device_add`` instead. For details, refer to
- 'docs/cpu-hotplug.rst'.
-ERST
-
{
.name = "qom-list",
.args_type = "path:s?",
--
MST
1
0
Hello,
I’m implementing some new functionality in the Hyper-V driver and could use some input on how I should handle automatic startup values.
Microsoft’s Msvm_VirtualSystemSettingData class stores this setting in a property named AutomaticStartupAction:
https://docs.microsoft.com/en-us/windows/win32/hyperv_v2/msvm-virtualsystem…
This property has several possible values with different meanings:
* 2 means “None.”, which represents that the VM will not automatically start at boot. This corresponds to libvirt’s domainGetAutostart outputting boolean false.
* 3 means “Restart if previously active.” This will start the machine at boot if it was running when the host was shut down or unexpectedly powered off. It appears libvirt does not have a way to represent this.
* 4 means “Always start.” This corresponds to libvirt’s domainGetAutostart outputting boolean true.
* 5 through 32768 are reserved.
I’m unsure how to handle the value 3, since libvirt treats this setting as a boolean...
The domainGetAutostart function places the value in an int:
* https://gitlab.com/libvirt/libvirt/-/blob/master/src/driver-hypervisor.h#L1…
* https://gitlab.com/libvirt/libvirt/-/blob/master/src/driver-hypervisor.h#L4…
However, virDomainGetAutostart’s docblock says that it will be treated as a boolean:
https://gitlab.com/libvirt/libvirt/-/blob/master/src/libvirt-domain.c#L6690…
Its usage in `virsh dominfo` confirms that:
https://gitlab.com/libvirt/libvirt/-/blob/master/tools/virsh-domain-monitor…
I haven’t investigated how other languages' bindings treat the field.
Currently, my code treats anything over 2 as autostart being enabled (although, perhaps I should ignore 5+). I feel like that pretty closely represents the VM’s configuration, since it will autostart in certain cases and it definitely isn’t configured to never autostart.
For 3 (“Restart if previously active.”), it could be argued that libvirt should only say that autostart is enabled when the VM is running. This would more closely represent what the VM’s runtime behavior will be, since `virsh list —autostart` would show you which VMs would boot if the hypervisor rebooted at that point in time. However, it could be considered confusing because the VM’s configuration would appear to change depending on whether or not it was running.
Ultimately, it seems like libvirt’s concept of autostart functionality needs to be extended. Along those lines, it was pointed out on IRC that libvirt lacks the ability to represent hypervisors’ host shutdown activities:
> danpb: we should introduce a <on_hoststop>..</on_hoststop> lifecycle action in the XML to express what actions to take on host shutdown and one of those actions can be “stop-and-restart-on-next-boot”
Hyper-V has a separate setting, AutomaticShutdownAction, which governs the actions taken when the host stops:
* 2 means “Turn off.” This abruptly powers off the VM.
* 3 means “Save state.” This saves the running VM’s state to disk.
* 4 means “Shutdown.” The performs a clean shutdown of the VM.
* 5 through 32768 are reserved.
It seems to me that the two settings complement each other but cover different functionality. I feel like 3 (“Restart if previously active.”) is more closely related to startup activities than the host stopping.
Since it seems like more pervasive changes are needed, I’d prefer to commit something “good enough” for the Hyper-V driver and then refine it along with the rest of the drivers.
Should I make domainGetAutostart only output true for Hyper-V VMs configured with AutomaticStartupAction=3 when they are running? Or, should I leave it as I currently have it (2 = autostart is disabled; 3+ = autostart is enabled)?
Thanks for your time and input, and apologies for how long this got.
Matt
2
2
[PATCH] tests: qemucapabilities: Update capabilities for qemu-5.2 dev cycle
by Peter Krempa 28 Sep '20
by Peter Krempa 28 Sep '20
28 Sep '20
Mid-cycle caps resync. Notable change is that virtio-blk enables
multiqueue by default and the addition of
'calc-dirty-rate'/'query-dirty-rate' QMP commands.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
.../caps_5.2.0.x86_64.replies | 2898 +++++++++--------
1 file changed, 1494 insertions(+), 1404 deletions(-)
diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies
index fb6f6477d9..a4b723ceb6 100644
--- a/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies
@@ -240,6 +240,12 @@
{
"name": "transaction"
},
+ {
+ "name": "query-dirty-rate"
+ },
+ {
+ "name": "calc-dirty-rate"
+ },
{
"name": "migrate-pause"
},
@@ -625,6 +631,10 @@
"name": "vhost-user-vsock-device",
"parent": "vhost-vsock-common"
},
+ {
+ "name": "virtio-blk-pci-transitional",
+ "parent": "virtio-blk-pci-base"
+ },
{
"name": "pcie-pci-bridge",
"parent": "base-pci-bridge"
@@ -633,10 +643,6 @@
"name": "pc-q35-2.11-machine",
"parent": "generic-pc-machine"
},
- {
- "name": "virtio-crypto-device",
- "parent": "virtio-device"
- },
{
"name": "isa-applesmc",
"parent": "isa-device"
@@ -654,16 +660,16 @@
"parent": "bus"
},
{
- "name": "Denverton-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "virtio-crypto-device",
+ "parent": "virtio-device"
},
{
"name": "chardev-testdev",
"parent": "chardev"
},
{
- "name": "usb-wacom-tablet",
- "parent": "usb-device"
+ "name": "Denverton-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
"name": "pci-ipmi-bt",
@@ -682,8 +688,8 @@
"parent": "netfilter"
},
{
- "name": "Icelake-Server-v1-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "usb-wacom-tablet",
+ "parent": "usb-device"
},
{
"name": "ich9-usb-uhci6",
@@ -721,14 +727,14 @@
"name": "sev-guest",
"parent": "object"
},
- {
- "name": "core2duo-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "ich9-usb-uhci5",
"parent": "pci-uhci-usb"
},
+ {
+ "name": "core2duo-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "pcm3680_pci",
"parent": "pci-device"
@@ -773,6 +779,10 @@
"name": "usb-hub",
"parent": "usb-device"
},
+ {
+ "name": "chardev-serial",
+ "parent": "chardev-fd"
+ },
{
"name": "virtio-blk-device",
"parent": "virtio-device"
@@ -813,30 +823,26 @@
"name": "qtest-accel",
"parent": "accel"
},
- {
- "name": "chardev-serial",
- "parent": "chardev-fd"
- },
{
"name": "vhost-user-vsock-pci",
"parent": "vhost-user-vsock-pci-base"
},
{
- "name": "Icelake-Client-v2-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "ich9-usb-uhci1",
+ "parent": "pci-uhci-usb"
},
{
"name": "pc-i440fx-5.0-machine",
"parent": "generic-pc-machine"
},
- {
- "name": "ich9-usb-uhci1",
- "parent": "pci-uhci-usb"
- },
{
"name": "scsi-generic",
"parent": "scsi-device"
},
+ {
+ "name": "Icelake-Client-v2-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "kvmclock",
"parent": "sys-bus-device"
@@ -897,6 +903,10 @@
"name": "virtio-serial-bus",
"parent": "bus"
},
+ {
+ "name": "vhost-scsi-pci",
+ "parent": "vhost-scsi-pci-base"
+ },
{
"name": "usb-host",
"parent": "usb-device"
@@ -922,8 +932,8 @@
"parent": "generic-pc-machine"
},
{
- "name": "vhost-scsi-pci",
- "parent": "vhost-scsi-pci-base"
+ "name": "acpi-ged",
+ "parent": "sys-bus-device"
},
{
"name": "isa-ipmi-bt",
@@ -941,14 +951,14 @@
"name": "pci-ipmi-kcs",
"parent": "pci-device"
},
- {
- "name": "xio3130-downstream",
- "parent": "pcie-slot"
- },
{
"name": "intel-iommu-iommu-memory-region",
"parent": "qemu:iommu-memory-region"
},
+ {
+ "name": "xio3130-downstream",
+ "parent": "pcie-slot"
+ },
{
"name": "vhost-user-vsock-pci-non-transitional",
"parent": "vhost-user-vsock-pci-base"
@@ -957,14 +967,14 @@
"name": "pc-i440fx-2.3-machine",
"parent": "generic-pc-machine"
},
- {
- "name": "microvm-machine",
- "parent": "x86-machine"
- },
{
"name": "PCI",
"parent": "bus"
},
+ {
+ "name": "microvm-machine",
+ "parent": "x86-machine"
+ },
{
"name": "sdhci-bus",
"parent": "sd-bus"
@@ -1121,10 +1131,6 @@
"name": "i82557b",
"parent": "pci-device"
},
- {
- "name": "chardev-memory",
- "parent": "chardev-ringbuf"
- },
{
"name": "i82557a",
"parent": "pci-device"
@@ -1137,6 +1143,10 @@
"name": "vmmouse",
"parent": "isa-device"
},
+ {
+ "name": "chardev-udp",
+ "parent": "chardev"
+ },
{
"name": "pc-q35-2.8-machine",
"parent": "generic-pc-machine"
@@ -1162,8 +1172,8 @@
"parent": "x86_64-cpu"
},
{
- "name": "chardev-udp",
- "parent": "chardev"
+ "name": "chardev-memory",
+ "parent": "chardev-ringbuf"
},
{
"name": "EPYC-Rome-v1-x86_64-cpu",
@@ -1213,14 +1223,14 @@
"name": "virtio-9p-pci-non-transitional",
"parent": "virtio-9p-pci-base"
},
- {
- "name": "memory-backend-file",
- "parent": "memory-backend"
- },
{
"name": "Nehalem-v2-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "memory-backend-file",
+ "parent": "memory-backend"
+ },
{
"name": "vhost-vsock-device",
"parent": "vhost-vsock-common"
@@ -1281,6 +1291,10 @@
"name": "tcg-accel",
"parent": "accel"
},
+ {
+ "name": "piix4-ide",
+ "parent": "pci-ide"
+ },
{
"name": "virtio-balloon-pci",
"parent": "virtio-balloon-pci-base"
@@ -1305,6 +1319,14 @@
"name": "athlon-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "acpi-ged-x86",
+ "parent": "acpi-ged"
+ },
+ {
+ "name": "ES1370",
+ "parent": "pci-device"
+ },
{
"name": "i82551",
"parent": "pci-device"
@@ -1322,8 +1344,8 @@
"parent": "x86_64-cpu"
},
{
- "name": "pc-i440fx-2.6-machine",
- "parent": "generic-pc-machine"
+ "name": "nvme",
+ "parent": "pci-device"
},
{
"name": "SandyBridge-x86_64-cpu",
@@ -1334,17 +1356,13 @@
"parent": "pci-device"
},
{
- "name": "piix4-ide",
- "parent": "pci-ide"
+ "name": "pc-i440fx-2.6-machine",
+ "parent": "generic-pc-machine"
},
{
"name": "mioe3680_pci",
"parent": "pci-device"
},
- {
- "name": "nvme",
- "parent": "pci-device"
- },
{
"name": "vhost-user-backend",
"parent": "object"
@@ -1358,17 +1376,13 @@
"parent": "base-xhci"
},
{
- "name": "ES1370",
- "parent": "pci-device"
+ "name": "kvm-apic",
+ "parent": "apic-common"
},
{
"name": "Conroe-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
- {
- "name": "kvm-apic",
- "parent": "apic-common"
- },
{
"name": "isa-pit",
"parent": "pit-common"
@@ -1405,14 +1419,14 @@
"name": "virtio-crypto-pci",
"parent": "virtio-crypto-pci-base-type"
},
- {
- "name": "i8042",
- "parent": "isa-device"
- },
{
"name": "iothread",
"parent": "object"
},
+ {
+ "name": "i8042",
+ "parent": "isa-device"
+ },
{
"name": "virtio-iommu-pci-transitional",
"parent": "virtio-iommu-device-base"
@@ -1449,6 +1463,10 @@
"name": "core2duo-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "virtio-rng-pci-non-transitional",
+ "parent": "virtio-rng-pci-base"
+ },
{
"name": "cirrus-vga",
"parent": "pci-device"
@@ -1465,17 +1483,13 @@
"name": "pc-i440fx-2.1-machine",
"parent": "generic-pc-machine"
},
- {
- "name": "virtio-serial-pci",
- "parent": "virtio-serial-pci-base"
- },
{
"name": "i82559er",
"parent": "pci-device"
},
{
- "name": "virtio-rng-pci-non-transitional",
- "parent": "virtio-rng-pci-base"
+ "name": "virtio-serial-pci",
+ "parent": "virtio-serial-pci-base"
},
{
"name": "Skylake-Client-x86_64-cpu",
@@ -1485,10 +1499,6 @@
"name": "Opteron_G3-x86_64-cpu",
"parent": "x86_64-cpu"
},
- {
- "name": "isa-ide",
- "parent": "isa-device"
- },
{
"name": "container",
"parent": "object"
@@ -1513,6 +1523,10 @@
"name": "vmport",
"parent": "isa-device"
},
+ {
+ "name": "isa-ide",
+ "parent": "isa-device"
+ },
{
"name": "am53c974",
"parent": "pci-device"
@@ -1533,14 +1547,14 @@
"name": "e1000-82545em",
"parent": "e1000-base"
},
- {
- "name": "pxb-pcie-bus",
- "parent": "PCIE"
- },
{
"name": "sdhci-pci",
"parent": "pci-device"
},
+ {
+ "name": "pxb-pcie-bus",
+ "parent": "PCIE"
+ },
{
"name": "vhost-user-scsi",
"parent": "vhost-scsi-common"
@@ -1838,8 +1852,8 @@
"parent": "x86_64-cpu"
},
{
- "name": "qio-net-listener",
- "parent": "object"
+ "name": "qio-channel-websock",
+ "parent": "qio-channel"
},
{
"name": "pc-q35-4.1-machine",
@@ -1862,8 +1876,8 @@
"parent": "x86_64-cpu"
},
{
- "name": "qio-channel-websock",
- "parent": "qio-channel"
+ "name": "qio-net-listener",
+ "parent": "object"
},
{
"name": "edu",
@@ -1942,8 +1956,8 @@
"parent": "chardev"
},
{
- "name": "clock",
- "parent": "object"
+ "name": "virtio-net-device",
+ "parent": "virtio-device"
},
{
"name": "Haswell-v2-x86_64-cpu",
@@ -1978,8 +1992,8 @@
"parent": "sys-bus-device"
},
{
- "name": "secret",
- "parent": "secret_common"
+ "name": "clock",
+ "parent": "object"
},
{
"name": "virtconsole",
@@ -2002,8 +2016,8 @@
"parent": "scsi-disk-base"
},
{
- "name": "Cascadelake-Server-noTSX-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "secret",
+ "parent": "secret_common"
},
{
"name": "usb-kbd",
@@ -2014,20 +2028,20 @@
"parent": "isa-device"
},
{
- "name": "virtio-net-device",
- "parent": "virtio-device"
+ "name": "usb-mtp",
+ "parent": "usb-device"
},
{
"name": "filter-replay",
"parent": "netfilter"
},
{
- "name": "input-linux",
- "parent": "object"
+ "name": "Cascadelake-Server-noTSX-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
- "name": "usb-mtp",
- "parent": "usb-device"
+ "name": "input-linux",
+ "parent": "object"
},
{
"name": "pc-q35-2.9-machine",
@@ -2181,14 +2195,14 @@
"name": "pc-dimm",
"parent": "device"
},
- {
- "name": "virtio-net-pci-transitional",
- "parent": "virtio-net-pci-base"
- },
{
"name": "virtio-balloon-pci-non-transitional",
"parent": "virtio-balloon-pci-base"
},
+ {
+ "name": "virtio-net-pci-transitional",
+ "parent": "virtio-net-pci-base"
+ },
{
"name": "ipmi-bmc-sim",
"parent": "ipmi-bmc"
@@ -2249,14 +2263,14 @@
"name": "colo-compare",
"parent": "object"
},
- {
- "name": "virtio-mmio",
- "parent": "sys-bus-device"
- },
{
"name": "pxb-bus",
"parent": "PCI"
},
+ {
+ "name": "virtio-mmio",
+ "parent": "sys-bus-device"
+ },
{
"name": "pentium2-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -2297,6 +2311,10 @@
"name": "Nehalem-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "authz-simple",
+ "parent": "authz"
+ },
{
"name": "Opteron_G2-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -2309,14 +2327,14 @@
"name": "vhost-user-blk-pci",
"parent": "vhost-user-blk-pci-base"
},
- {
- "name": "authz-simple",
- "parent": "authz"
- },
{
"name": "fw_cfg_io",
"parent": "fw_cfg"
},
+ {
+ "name": "pc-1.1-machine",
+ "parent": "generic-pc-machine"
+ },
{
"name": "intel-iommu",
"parent": "x86-iommu"
@@ -2334,8 +2352,8 @@
"parent": "x86_64-cpu"
},
{
- "name": "pc-1.1-machine",
- "parent": "generic-pc-machine"
+ "name": "u2f-passthru",
+ "parent": "u2f-key"
},
{
"name": "Snowridge-x86_64-cpu",
@@ -2473,14 +2491,14 @@
"name": "vhost-user-gpu",
"parent": "virtio-gpu-base"
},
- {
- "name": "pentium-v1-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "hda-duplex",
"parent": "hda-audio"
},
+ {
+ "name": "pentium-v1-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "amd-iommu-iommu-memory-region",
"parent": "qemu:iommu-memory-region"
@@ -2489,6 +2507,10 @@
"name": "can-bus",
"parent": "object"
},
+ {
+ "name": "virtio-balloon-device",
+ "parent": "virtio-device"
+ },
{
"name": "cfi.pflash01",
"parent": "sys-bus-device"
@@ -2501,10 +2523,6 @@
"name": "Cooperlake-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
- {
- "name": "virtio-balloon-device",
- "parent": "virtio-device"
- },
{
"name": "isa-parallel",
"parent": "isa-device"
@@ -2558,20 +2576,20 @@
"parent": "rng-backend"
},
{
- "name": "ivshmem-doorbell",
- "parent": "ivshmem-common"
+ "name": "Cascadelake-Server-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
"name": "i82558b",
"parent": "pci-device"
},
{
- "name": "qxl-vga",
- "parent": "pci-qxl"
+ "name": "ivshmem-doorbell",
+ "parent": "ivshmem-common"
},
{
- "name": "Cascadelake-Server-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "qxl-vga",
+ "parent": "pci-qxl"
},
{
"name": "virtio-iommu-device",
@@ -2753,16 +2771,16 @@
"name": "kvm64-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
- {
- "name": "scsi-block",
- "parent": "scsi-disk-base"
- },
{
"name": "mptsas1068",
"parent": "pci-device"
},
{
- "name": "Snowridge-v1-x86_64-cpu",
+ "name": "scsi-block",
+ "parent": "scsi-disk-base"
+ },
+ {
+ "name": "Snowridge-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
{
@@ -2849,14 +2867,14 @@
"name": "qio-channel-tls",
"parent": "qio-channel"
},
- {
- "name": "virtio-blk-pci-transitional",
- "parent": "virtio-blk-pci-base"
- },
{
"name": "virtio-vga",
"parent": "virtio-vga-base-type"
},
+ {
+ "name": "Icelake-Server-v1-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "authz-pam",
"parent": "authz"
@@ -3045,7 +3063,7 @@
"type": "uint32"
},
{
- "default-value": 1,
+ "default-value": 65535,
"name": "num-queues",
"type": "uint16"
},
@@ -3778,7 +3796,7 @@
"type": "bool"
},
{
- "default-value": 1,
+ "default-value": 4294967295,
"name": "num_queues",
"type": "uint32"
},
@@ -4458,6 +4476,11 @@
"name": "disable_s3",
"type": "uint8"
},
+ {
+ "default-value": true,
+ "name": "acpi-root-pci-hotplug",
+ "type": "bool"
+ },
{
"default-value": true,
"name": "memory-hotplug-support",
@@ -4553,33 +4576,37 @@
"name": "x-config-reg-migration-enabled",
"type": "bool"
},
+ {
+ "name": "pci-hole-end",
+ "type": "uint32"
+ },
{
"default-value": 2147483648,
"name": "pci-hole64-size",
"type": "size"
},
+ {
+ "name": "pci-hole64-start",
+ "type": "uint64"
+ },
{
"default-value": 0,
"name": "short_root_bus",
"type": "uint32"
},
+ {
+ "name": "pci-hole64-end",
+ "type": "uint64"
+ },
{
"default-value": true,
"name": "x-pci-hole64-fix",
"type": "bool"
},
{
- "name": "pci-hole-end",
+ "name": "pci-hole-start",
"type": "uint32"
},
- {
- "name": "pci-hole64-start",
- "type": "uint64"
- },
- {
- "name": "pci-hole64-end",
- "type": "uint64"
- },
{
"name": "pci-conf-idx[0]",
"type": "child<qemu:memory-region>"
@@ -4587,10 +4614,6 @@
{
"name": "pci-conf-data[0]",
"type": "child<qemu:memory-region>"
- },
- {
- "name": "pci-hole-start",
- "type": "uint32"
}
],
"id": "libvirt-18"
@@ -6484,6 +6507,10 @@
"name": "memory",
"type": "link<qemu:memory-region>"
},
+ {
+ "name": "start-powered-off",
+ "type": "bool"
+ },
{
"name": "legacy-memory",
"type": "str"
@@ -8144,6 +8171,14 @@
"deprecated": false,
"default-ram-id": "pc.ram"
},
+ {
+ "hotpluggable-cpus": false,
+ "name": "none",
+ "numa-mem-supported": false,
+ "cpu-max": 1,
+ "deprecated": false,
+ "default-ram-id": "ram"
+ },
{
"hotpluggable-cpus": true,
"name": "pc-1.1",
@@ -8153,14 +8188,6 @@
"deprecated": true,
"default-ram-id": "pc.ram"
},
- {
- "hotpluggable-cpus": false,
- "name": "none",
- "numa-mem-supported": false,
- "cpu-max": 1,
- "deprecated": false,
- "default-ram-id": "ram"
- },
{
"hotpluggable-cpus": true,
"name": "pc-i440fx-2.7",
@@ -10284,13 +10311,97 @@
},
{
"parameters": [
+ {
+ "name": "audiodev",
+ "type": "string"
+ },
+ {
+ "name": "non-adaptive",
+ "type": "boolean"
+ },
+ {
+ "name": "lossy",
+ "type": "boolean"
+ },
+ {
+ "name": "sasl-authz",
+ "type": "string"
+ },
+ {
+ "name": "tls-authz",
+ "type": "string"
+ },
+ {
+ "name": "acl",
+ "type": "boolean"
+ },
+ {
+ "name": "sasl",
+ "type": "boolean"
+ },
+ {
+ "name": "key-delay-ms",
+ "type": "number"
+ },
+ {
+ "name": "lock-key-sync",
+ "type": "boolean"
+ },
+ {
+ "name": "reverse",
+ "type": "boolean"
+ },
+ {
+ "name": "password",
+ "type": "boolean"
+ },
+ {
+ "name": "ipv6",
+ "type": "boolean"
+ },
+ {
+ "name": "ipv4",
+ "type": "boolean"
+ },
+ {
+ "name": "to",
+ "type": "number"
+ },
+ {
+ "name": "connections",
+ "type": "number"
+ },
+ {
+ "name": "head",
+ "type": "number"
+ },
+ {
+ "name": "display",
+ "type": "string"
+ },
+ {
+ "name": "share",
+ "type": "string"
+ },
+ {
+ "name": "tls-creds",
+ "type": "string"
+ },
+ {
+ "name": "websocket",
+ "type": "string"
+ },
+ {
+ "name": "vnc",
+ "type": "string"
+ }
],
- "option": "acpi"
+ "option": "vnc"
},
{
"parameters": [
],
- "option": "smbios"
+ "option": "acpi"
},
{
"parameters": [
@@ -10421,6 +10532,36 @@
],
"option": "spice"
},
+ {
+ "parameters": [
+ {
+ "name": "resourcecontrol",
+ "type": "string"
+ },
+ {
+ "name": "spawn",
+ "type": "string"
+ },
+ {
+ "name": "elevateprivileges",
+ "type": "string"
+ },
+ {
+ "name": "obsolete",
+ "type": "string"
+ },
+ {
+ "name": "enable",
+ "type": "boolean"
+ }
+ ],
+ "option": "sandbox"
+ },
+ {
+ "parameters": [
+ ],
+ "option": "smbios"
+ },
{
"parameters": [
{
@@ -10613,192 +10754,78 @@
{
"parameters": [
{
- "name": "audiodev",
+ "name": "gen_id",
+ "help": "Sets id of the object generating the fw_cfg blob to be inserted",
"type": "string"
},
{
- "name": "non-adaptive",
- "type": "boolean"
- },
- {
- "name": "lossy",
- "type": "boolean"
+ "name": "string",
+ "help": "Sets content of the blob to be inserted from a string",
+ "type": "string"
},
{
- "name": "sasl-authz",
+ "name": "file",
+ "help": "Sets the name of the file from which the fw_cfg blob will be loaded",
"type": "string"
},
{
- "name": "tls-authz",
+ "name": "name",
+ "help": "Sets the fw_cfg name of the blob to be inserted",
"type": "string"
- },
+ }
+ ],
+ "option": "fw_cfg"
+ },
+ {
+ "parameters": [
+ ],
+ "option": ""
+ },
+ {
+ "parameters": [
{
- "name": "acl",
- "type": "boolean"
+ "name": "rrsnapshot",
+ "type": "string"
},
{
- "name": "sasl",
- "type": "boolean"
+ "name": "rrfile",
+ "type": "string"
},
{
- "name": "key-delay-ms",
- "type": "number"
+ "name": "rr",
+ "type": "string"
},
{
- "name": "lock-key-sync",
+ "name": "sleep",
"type": "boolean"
},
{
- "name": "reverse",
+ "name": "align",
"type": "boolean"
},
{
- "name": "password",
- "type": "boolean"
- },
+ "name": "shift",
+ "type": "string"
+ }
+ ],
+ "option": "icount"
+ },
+ {
+ "parameters": [
+ ],
+ "option": "numa"
+ },
+ {
+ "parameters": [
{
- "name": "ipv6",
+ "name": "debug-threads",
+ "help": "When enabled, name the individual threads; defaults off.\nNOTE: The thread names are for debugging and not a\nstable API.",
"type": "boolean"
},
{
- "name": "ipv4",
- "type": "boolean"
- },
- {
- "name": "to",
- "type": "number"
- },
- {
- "name": "connections",
- "type": "number"
- },
- {
- "name": "head",
- "type": "number"
- },
- {
- "name": "display",
- "type": "string"
- },
- {
- "name": "share",
- "type": "string"
- },
- {
- "name": "tls-creds",
- "type": "string"
- },
- {
- "name": "websocket",
- "type": "string"
- },
- {
- "name": "vnc",
- "type": "string"
- }
- ],
- "option": "vnc"
- },
- {
- "parameters": [
- {
- "name": "resourcecontrol",
- "type": "string"
- },
- {
- "name": "spawn",
- "type": "string"
- },
- {
- "name": "elevateprivileges",
- "type": "string"
- },
- {
- "name": "obsolete",
- "type": "string"
- },
- {
- "name": "enable",
- "type": "boolean"
- }
- ],
- "option": "sandbox"
- },
- {
- "parameters": [
- {
- "name": "gen_id",
- "help": "Sets id of the object generating the fw_cfg blob to be inserted",
- "type": "string"
- },
- {
- "name": "string",
- "help": "Sets content of the blob to be inserted from a string",
- "type": "string"
- },
- {
- "name": "file",
- "help": "Sets the name of the file from which the fw_cfg blob will be loaded",
- "type": "string"
- },
- {
- "name": "name",
- "help": "Sets the fw_cfg name of the blob to be inserted",
- "type": "string"
- }
- ],
- "option": "fw_cfg"
- },
- {
- "parameters": [
- ],
- "option": ""
- },
- {
- "parameters": [
- {
- "name": "rrsnapshot",
- "type": "string"
- },
- {
- "name": "rrfile",
- "type": "string"
- },
- {
- "name": "rr",
- "type": "string"
- },
- {
- "name": "sleep",
- "type": "boolean"
- },
- {
- "name": "align",
- "type": "boolean"
- },
- {
- "name": "shift",
- "type": "string"
- }
- ],
- "option": "icount"
- },
- {
- "parameters": [
- ],
- "option": "numa"
- },
- {
- "parameters": [
- {
- "name": "debug-threads",
- "help": "When enabled, name the individual threads; defaults off.\nNOTE: The thread names are for debugging and not a\nstable API.",
- "type": "boolean"
- },
- {
- "name": "process",
- "help": "Sets the name of the QEMU process, as shown in top etc",
- "type": "string"
+ "name": "process",
+ "help": "Sets the name of the QEMU process, as shown in top etc",
+ "type": "string"
},
{
"name": "guest",
@@ -12562,44 +12589,56 @@
"arg-type": "150"
},
{
- "name": "transaction",
+ "name": "calc-dirty-rate",
"ret-type": "0",
"meta-type": "command",
"arg-type": "151"
},
+ {
+ "name": "query-dirty-rate",
+ "ret-type": "152",
+ "meta-type": "command",
+ "arg-type": "0"
+ },
+ {
+ "name": "transaction",
+ "ret-type": "0",
+ "meta-type": "command",
+ "arg-type": "153"
+ },
{
"name": "trace-event-get-state",
- "ret-type": "[153]",
+ "ret-type": "[155]",
"meta-type": "command",
- "arg-type": "152"
+ "arg-type": "154"
},
{
"name": "trace-event-set-state",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "154"
+ "arg-type": "156"
},
{
"name": "qmp_capabilities",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "155"
+ "arg-type": "157"
},
{
"name": "query-version",
- "ret-type": "156",
+ "ret-type": "158",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-commands",
- "ret-type": "[157]",
+ "ret-type": "[159]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-events",
- "ret-type": "[158]",
+ "ret-type": "[160]",
"meta-type": "command",
"arg-type": "0",
"features": [
@@ -12614,78 +12653,78 @@
},
{
"name": "query-qmp-schema",
- "ret-type": "[159]",
+ "ret-type": "[161]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "qom-list",
- "ret-type": "[161]",
+ "ret-type": "[163]",
"meta-type": "command",
- "arg-type": "160"
+ "arg-type": "162"
},
{
"name": "qom-get",
"ret-type": "any",
"meta-type": "command",
- "arg-type": "162"
+ "arg-type": "164"
},
{
"name": "qom-set",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "163"
+ "arg-type": "165"
},
{
"name": "qom-list-types",
- "ret-type": "[165]",
+ "ret-type": "[167]",
"meta-type": "command",
- "arg-type": "164"
+ "arg-type": "166"
},
{
"name": "qom-list-properties",
- "ret-type": "[161]",
+ "ret-type": "[163]",
"meta-type": "command",
- "arg-type": "166"
+ "arg-type": "168"
},
{
"name": "object-add",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "167"
+ "arg-type": "169"
},
{
"name": "object-del",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "168"
+ "arg-type": "170"
},
{
"name": "device-list-properties",
- "ret-type": "[161]",
+ "ret-type": "[163]",
"meta-type": "command",
- "arg-type": "169"
+ "arg-type": "171"
},
{
"name": "device_add",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "170"
+ "arg-type": "172"
},
{
"name": "device_del",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "171"
+ "arg-type": "173"
},
{
"name": "DEVICE_DELETED",
"meta-type": "event",
- "arg-type": "172"
+ "arg-type": "174"
},
{
"name": "query-cpus",
- "ret-type": "[173]",
+ "ret-type": "[175]",
"meta-type": "command",
"arg-type": "0",
"features": [
@@ -12694,7 +12733,7 @@
},
{
"name": "query-cpus-fast",
- "ret-type": "[174]",
+ "ret-type": "[176]",
"meta-type": "command",
"arg-type": "0"
},
@@ -12702,38 +12741,38 @@
"name": "cpu-add",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "175",
+ "arg-type": "177",
"features": [
"deprecated"
]
},
{
"name": "query-machines",
- "ret-type": "[176]",
+ "ret-type": "[178]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-current-machine",
- "ret-type": "177",
+ "ret-type": "179",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-target",
- "ret-type": "178",
+ "ret-type": "180",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-memdev",
- "ret-type": "[179]",
+ "ret-type": "[181]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-hotpluggable-cpus",
- "ret-type": "[180]",
+ "ret-type": "[182]",
"meta-type": "command",
"arg-type": "0"
},
@@ -12741,17 +12780,17 @@
"name": "set-numa-node",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "181"
+ "arg-type": "183"
},
{
"name": "query-cpu-model-expansion",
- "ret-type": "187",
+ "ret-type": "189",
"meta-type": "command",
- "arg-type": "186"
+ "arg-type": "188"
},
{
"name": "query-cpu-definitions",
- "ret-type": "[188]",
+ "ret-type": "[190]",
"meta-type": "command",
"arg-type": "0"
},
@@ -12759,46 +12798,46 @@
"name": "add_client",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "189"
+ "arg-type": "191"
},
{
"name": "query-name",
- "ret-type": "190",
+ "ret-type": "192",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-kvm",
- "ret-type": "191",
+ "ret-type": "193",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-uuid",
- "ret-type": "192",
+ "ret-type": "194",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-iothreads",
- "ret-type": "[193]",
+ "ret-type": "[195]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-balloon",
- "ret-type": "194",
+ "ret-type": "196",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "BALLOON_CHANGE",
"meta-type": "event",
- "arg-type": "195"
+ "arg-type": "197"
},
{
"name": "query-pci",
- "ret-type": "[196]",
+ "ret-type": "[198]",
"meta-type": "command",
"arg-type": "0"
},
@@ -12824,13 +12863,13 @@
"name": "memsave",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "197"
+ "arg-type": "199"
},
{
"name": "pmemsave",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "198"
+ "arg-type": "200"
},
{
"name": "cont",
@@ -12860,13 +12899,13 @@
"name": "balloon",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "199"
+ "arg-type": "201"
},
{
"name": "human-monitor-command",
"ret-type": "str",
"meta-type": "command",
- "arg-type": "200",
+ "arg-type": "202",
"features": [
"savevm-monitor-nodes"
]
@@ -12875,7 +12914,7 @@
"name": "change",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "201",
+ "arg-type": "203",
"features": [
"deprecated"
]
@@ -12884,93 +12923,93 @@
"name": "xen-set-global-dirty-log",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "202"
+ "arg-type": "204"
},
{
"name": "getfd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "203"
+ "arg-type": "205"
},
{
"name": "closefd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "204"
+ "arg-type": "206"
},
{
"name": "query-memory-size-summary",
- "ret-type": "205",
+ "ret-type": "207",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "add-fd",
- "ret-type": "207",
+ "ret-type": "209",
"meta-type": "command",
- "arg-type": "206"
+ "arg-type": "208"
},
{
"name": "remove-fd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "208"
+ "arg-type": "210"
},
{
"name": "query-fdsets",
- "ret-type": "[209]",
+ "ret-type": "[211]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-command-line-options",
- "ret-type": "[211]",
+ "ret-type": "[213]",
"meta-type": "command",
- "arg-type": "210"
+ "arg-type": "212"
},
{
"name": "query-memory-devices",
- "ret-type": "[212]",
+ "ret-type": "[214]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "MEMORY_DEVICE_SIZE_CHANGE",
"meta-type": "event",
- "arg-type": "213"
+ "arg-type": "215"
},
{
"name": "MEM_UNPLUG_ERROR",
"meta-type": "event",
- "arg-type": "214"
+ "arg-type": "216"
},
{
"name": "query-acpi-ospm-status",
- "ret-type": "[215]",
+ "ret-type": "[217]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "ACPI_DEVICE_OST",
"meta-type": "event",
- "arg-type": "216"
+ "arg-type": "218"
},
{
"name": "xen-load-devices-state",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "217"
+ "arg-type": "219"
},
{
"name": "query-vm-generation-id",
- "ret-type": "218",
+ "ret-type": "220",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "RTC_CHANGE",
"meta-type": "event",
- "arg-type": "219"
+ "arg-type": "221"
},
{
"name": "rtc-reset-reinjection",
@@ -12980,19 +13019,19 @@
},
{
"name": "query-sev",
- "ret-type": "220",
+ "ret-type": "222",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sev-launch-measure",
- "ret-type": "221",
+ "ret-type": "223",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sev-capabilities",
- "ret-type": "222",
+ "ret-type": "224",
"meta-type": "command",
"arg-type": "0"
},
@@ -13015,7 +13054,7 @@
},
{
"name": "status",
- "type": "225"
+ "type": "227"
}
],
"meta-type": "object"
@@ -13029,7 +13068,7 @@
},
{
"name": "reason",
- "type": "226"
+ "type": "228"
}
],
"meta-type": "object"
@@ -13043,7 +13082,7 @@
},
{
"name": "reason",
- "type": "226"
+ "type": "228"
}
],
"meta-type": "object"
@@ -13053,7 +13092,7 @@
"members": [
{
"name": "action",
- "type": "227"
+ "type": "229"
}
],
"meta-type": "object"
@@ -13063,7 +13102,7 @@
"members": [
{
"name": "action",
- "type": "227"
+ "type": "229"
}
],
"meta-type": "object"
@@ -13073,12 +13112,12 @@
"members": [
{
"name": "action",
- "type": "228"
+ "type": "230"
},
{
"name": "info",
"default": null,
- "type": "229"
+ "type": "231"
}
],
"meta-type": "object"
@@ -13088,12 +13127,12 @@
"members": [
{
"name": "action",
- "type": "228"
+ "type": "230"
},
{
"name": "info",
"default": null,
- "type": "229"
+ "type": "231"
}
],
"meta-type": "object"
@@ -13236,7 +13275,7 @@
{
"name": "read-only-mode",
"default": null,
- "type": "230"
+ "type": "232"
}
],
"meta-type": "object"
@@ -13458,12 +13497,12 @@
{
"name": "io-status",
"default": null,
- "type": "231"
+ "type": "233"
},
{
"name": "dirty-bitmaps",
"default": null,
- "type": "[232]",
+ "type": "[234]",
"features": [
"deprecated"
]
@@ -13507,12 +13546,12 @@
},
{
"name": "stats",
- "type": "233"
+ "type": "235"
},
{
"name": "driver-specific",
"default": null,
- "type": "234"
+ "type": "236"
},
{
"name": "parent",
@@ -13565,7 +13604,7 @@
},
{
"name": "io-status",
- "type": "231"
+ "type": "233"
},
{
"name": "ready",
@@ -13573,7 +13612,7 @@
},
{
"name": "status",
- "type": "235"
+ "type": "237"
},
{
"name": "auto-finalize",
@@ -13661,7 +13700,7 @@
{
"name": "mode",
"default": null,
- "type": "236"
+ "type": "238"
}
],
"meta-type": "object"
@@ -13749,7 +13788,7 @@
{
"name": "on-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "filter-node-name",
@@ -13783,7 +13822,7 @@
},
{
"name": "sync",
- "type": "238"
+ "type": "240"
},
{
"name": "speed",
@@ -13798,7 +13837,7 @@
{
"name": "bitmap-mode",
"default": null,
- "type": "239"
+ "type": "241"
},
{
"name": "compress",
@@ -13808,12 +13847,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "on-target-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "auto-finalize",
@@ -13842,7 +13881,7 @@
{
"name": "mode",
"default": null,
- "type": "236"
+ "type": "238"
}
],
"meta-type": "object"
@@ -13861,7 +13900,7 @@
},
{
"name": "sync",
- "type": "238"
+ "type": "240"
},
{
"name": "speed",
@@ -13876,7 +13915,7 @@
{
"name": "bitmap-mode",
"default": null,
- "type": "239"
+ "type": "241"
},
{
"name": "compress",
@@ -13886,12 +13925,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "on-target-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "auto-finalize",
@@ -13973,7 +14012,7 @@
},
{
"name": "detect_zeroes",
- "type": "240"
+ "type": "242"
},
{
"name": "bps",
@@ -14001,7 +14040,7 @@
},
{
"name": "image",
- "type": "241"
+ "type": "243"
},
{
"name": "bps_max",
@@ -14075,7 +14114,7 @@
},
{
"name": "cache",
- "type": "242"
+ "type": "244"
},
{
"name": "write_threshold",
@@ -14084,7 +14123,7 @@
{
"name": "dirty-bitmaps",
"default": null,
- "type": "[232]"
+ "type": "[234]"
}
],
"meta-type": "object"
@@ -14094,11 +14133,11 @@
"members": [
{
"name": "nodes",
- "type": "[243]"
+ "type": "[245]"
},
{
"name": "edges",
- "type": "[244]"
+ "type": "[246]"
}
],
"meta-type": "object"
@@ -14136,12 +14175,12 @@
},
{
"name": "sync",
- "type": "238"
+ "type": "240"
},
{
"name": "mode",
"default": null,
- "type": "236"
+ "type": "238"
},
{
"name": "speed",
@@ -14161,12 +14200,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "on-target-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "unmap",
@@ -14176,7 +14215,7 @@
{
"name": "copy-mode",
"default": null,
- "type": "245"
+ "type": "247"
},
{
"name": "auto-finalize",
@@ -14247,7 +14286,7 @@
},
{
"name": "bitmaps",
- "type": "[246]"
+ "type": "[248]"
}
],
"meta-type": "object"
@@ -14285,7 +14324,7 @@
},
{
"name": "sync",
- "type": "238"
+ "type": "240"
},
{
"name": "speed",
@@ -14305,12 +14344,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "on-target-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "filter-node-name",
@@ -14320,7 +14359,7 @@
{
"name": "copy-mode",
"default": null,
- "type": "245"
+ "type": "247"
},
{
"name": "auto-finalize",
@@ -14370,7 +14409,7 @@
{
"name": "on-error",
"default": null,
- "type": "237"
+ "type": "239"
},
{
"name": "auto-finalize",
@@ -14470,169 +14509,169 @@
"variants": [
{
"case": "blkdebug",
- "type": "250"
+ "type": "252"
},
{
"case": "blklogwrites",
- "type": "251"
+ "type": "253"
},
{
"case": "blkverify",
- "type": "252"
+ "type": "254"
},
{
"case": "blkreplay",
- "type": "253"
+ "type": "255"
},
{
"case": "bochs",
- "type": "254"
+ "type": "256"
},
{
"case": "cloop",
- "type": "254"
+ "type": "256"
},
{
"case": "compress",
- "type": "254"
+ "type": "256"
},
{
"case": "copy-on-read",
- "type": "254"
+ "type": "256"
},
{
"case": "dmg",
- "type": "254"
+ "type": "256"
},
{
"case": "file",
- "type": "255"
+ "type": "257"
},
{
"case": "ftp",
- "type": "256"
+ "type": "258"
},
{
"case": "ftps",
- "type": "257"
+ "type": "259"
},
{
"case": "gluster",
- "type": "258"
+ "type": "260"
},
{
"case": "host_cdrom",
- "type": "255"
+ "type": "257"
},
{
"case": "host_device",
- "type": "255"
+ "type": "257"
},
{
"case": "http",
- "type": "259"
+ "type": "261"
},
{
"case": "https",
- "type": "260"
+ "type": "262"
},
{
"case": "iscsi",
- "type": "261"
+ "type": "263"
},
{
"case": "luks",
- "type": "262"
+ "type": "264"
},
{
"case": "nbd",
- "type": "263"
+ "type": "265"
},
{
"case": "nfs",
- "type": "264"
+ "type": "266"
},
{
"case": "null-aio",
- "type": "265"
+ "type": "267"
},
{
"case": "null-co",
- "type": "265"
+ "type": "267"
},
{
"case": "nvme",
- "type": "266"
+ "type": "268"
},
{
"case": "parallels",
- "type": "254"
+ "type": "256"
},
{
"case": "qcow2",
- "type": "267"
+ "type": "269"
},
{
"case": "qcow",
- "type": "268"
+ "type": "270"
},
{
"case": "qed",
- "type": "269"
+ "type": "271"
},
{
"case": "quorum",
- "type": "270"
+ "type": "272"
},
{
"case": "raw",
- "type": "271"
+ "type": "273"
},
{
"case": "rbd",
- "type": "272"
+ "type": "274"
},
{
"case": "replication",
- "type": "273"
+ "type": "275"
},
{
"case": "sheepdog",
- "type": "274"
+ "type": "276"
},
{
"case": "ssh",
- "type": "275"
+ "type": "277"
},
{
"case": "throttle",
- "type": "276"
+ "type": "278"
},
{
"case": "vdi",
- "type": "254"
+ "type": "256"
},
{
"case": "vhdx",
- "type": "254"
+ "type": "256"
},
{
"case": "vmdk",
- "type": "269"
+ "type": "271"
},
{
"case": "vpc",
- "type": "254"
+ "type": "256"
},
{
"case": "vvfat",
- "type": "277"
+ "type": "279"
}
],
"members": [
{
"name": "driver",
- "type": "247"
+ "type": "249"
},
{
"name": "node-name",
@@ -14642,12 +14681,12 @@
{
"name": "discard",
"default": null,
- "type": "248"
+ "type": "250"
},
{
"name": "cache",
"default": null,
- "type": "249"
+ "type": "251"
},
{
"name": "read-only",
@@ -14667,7 +14706,7 @@
{
"name": "detect-zeroes",
"default": null,
- "type": "240"
+ "type": "242"
}
],
"meta-type": "object"
@@ -14691,7 +14730,7 @@
},
{
"name": "options",
- "type": "278"
+ "type": "280"
}
],
"meta-type": "object"
@@ -14709,7 +14748,7 @@
},
{
"name": "options",
- "type": "279"
+ "type": "281"
},
{
"name": "force",
@@ -14766,11 +14805,11 @@
},
{
"name": "operation",
- "type": "280"
+ "type": "282"
},
{
"name": "action",
- "type": "281"
+ "type": "283"
},
{
"name": "nospace",
@@ -14789,7 +14828,7 @@
"members": [
{
"name": "type",
- "type": "282"
+ "type": "284"
},
{
"name": "device",
@@ -14820,7 +14859,7 @@
"members": [
{
"name": "type",
- "type": "282"
+ "type": "284"
},
{
"name": "device",
@@ -14850,11 +14889,11 @@
},
{
"name": "operation",
- "type": "280"
+ "type": "282"
},
{
"name": "action",
- "type": "281"
+ "type": "283"
}
],
"meta-type": "object"
@@ -14864,7 +14903,7 @@
"members": [
{
"name": "type",
- "type": "282"
+ "type": "284"
},
{
"name": "device",
@@ -14890,7 +14929,7 @@
"members": [
{
"name": "type",
- "type": "282"
+ "type": "284"
},
{
"name": "id",
@@ -14960,7 +14999,7 @@
},
{
"name": "iothread",
- "type": "283"
+ "type": "285"
},
{
"name": "force",
@@ -14975,7 +15014,7 @@
"members": [
{
"name": "addr",
- "type": "284"
+ "type": "286"
},
{
"name": "tls-creds",
@@ -15030,7 +15069,7 @@
{
"name": "mode",
"default": null,
- "type": "285"
+ "type": "287"
}
],
"meta-type": "object"
@@ -15058,7 +15097,7 @@
"members": [
{
"name": "type",
- "type": "286"
+ "type": "288"
},
{
"name": "error",
@@ -15157,7 +15196,7 @@
},
{
"name": "status",
- "type": "235"
+ "type": "237"
}
],
"meta-type": "object"
@@ -15236,11 +15275,11 @@
},
{
"name": "type",
- "type": "282"
+ "type": "284"
},
{
"name": "status",
- "type": "235"
+ "type": "237"
},
{
"name": "current-progress",
@@ -15310,7 +15349,7 @@
{
"name": "format",
"default": null,
- "type": "287"
+ "type": "289"
}
],
"meta-type": "object"
@@ -15329,7 +15368,7 @@
{
"name": "format",
"default": null,
- "type": "287"
+ "type": "289"
}
],
"meta-type": "object"
@@ -15348,7 +15387,7 @@
},
{
"name": "backend",
- "type": "288"
+ "type": "290"
}
],
"meta-type": "object"
@@ -15373,7 +15412,7 @@
},
{
"name": "backend",
- "type": "288"
+ "type": "290"
}
],
"meta-type": "object"
@@ -15441,7 +15480,7 @@
{
"name": "format",
"default": null,
- "type": "289"
+ "type": "291"
}
],
"meta-type": "object"
@@ -15451,7 +15490,7 @@
"members": [
{
"name": "status",
- "type": "290"
+ "type": "292"
},
{
"name": "completed",
@@ -15484,7 +15523,7 @@
"members": [
{
"name": "formats",
- "type": "[289]"
+ "type": "[291]"
}
],
"meta-type": "object"
@@ -15509,47 +15548,47 @@
"variants": [
{
"case": "nic",
- "type": "292"
+ "type": "294"
},
{
"case": "user",
- "type": "293"
+ "type": "295"
},
{
"case": "tap",
- "type": "294"
+ "type": "296"
},
{
"case": "l2tpv3",
- "type": "295"
+ "type": "297"
},
{
"case": "socket",
- "type": "296"
+ "type": "298"
},
{
"case": "vde",
- "type": "297"
+ "type": "299"
},
{
"case": "bridge",
- "type": "298"
+ "type": "300"
},
{
"case": "hubport",
- "type": "299"
+ "type": "301"
},
{
"case": "netmap",
- "type": "300"
+ "type": "302"
},
{
"case": "vhost-user",
- "type": "301"
+ "type": "303"
},
{
"case": "vhost-vdpa",
- "type": "302"
+ "type": "304"
},
{
"case": "none",
@@ -15563,7 +15602,7 @@
},
{
"name": "type",
- "type": "291"
+ "type": "293"
}
],
"meta-type": "object"
@@ -15607,15 +15646,15 @@
},
{
"name": "multicast",
- "type": "303"
+ "type": "305"
},
{
"name": "unicast",
- "type": "303"
+ "type": "305"
},
{
"name": "vlan",
- "type": "303"
+ "type": "305"
},
{
"name": "broadcast-allowed",
@@ -15791,11 +15830,11 @@
},
{
"name": "duplex",
- "type": "304"
+ "type": "306"
},
{
"name": "autoneg",
- "type": "305"
+ "type": "307"
}
],
"meta-type": "object"
@@ -15833,15 +15872,15 @@
},
{
"name": "key",
- "type": "306"
+ "type": "308"
},
{
"name": "mask",
- "type": "307"
+ "type": "309"
},
{
"name": "action",
- "type": "308"
+ "type": "310"
}
],
"meta-type": "object"
@@ -15980,7 +16019,7 @@
},
{
"name": "options",
- "type": "309"
+ "type": "311"
}
],
"meta-type": "object"
@@ -16076,12 +16115,12 @@
},
{
"name": "mouse-mode",
- "type": "310"
+ "type": "312"
},
{
"name": "channels",
"default": null,
- "type": "[311]"
+ "type": "[313]"
}
],
"meta-type": "object"
@@ -16091,11 +16130,11 @@
"members": [
{
"name": "server",
- "type": "312"
+ "type": "314"
},
{
"name": "client",
- "type": "312"
+ "type": "314"
}
],
"meta-type": "object"
@@ -16105,11 +16144,11 @@
"members": [
{
"name": "server",
- "type": "313"
+ "type": "315"
},
{
"name": "client",
- "type": "311"
+ "type": "313"
}
],
"meta-type": "object"
@@ -16119,11 +16158,11 @@
"members": [
{
"name": "server",
- "type": "312"
+ "type": "314"
},
{
"name": "client",
- "type": "312"
+ "type": "314"
}
],
"meta-type": "object"
@@ -16143,7 +16182,7 @@
{
"name": "family",
"default": null,
- "type": "314"
+ "type": "316"
},
{
"name": "service",
@@ -16158,7 +16197,7 @@
{
"name": "clients",
"default": null,
- "type": "[315]"
+ "type": "[317]"
}
],
"meta-type": "object"
@@ -16177,20 +16216,20 @@
},
{
"name": "server",
- "type": "[316]"
+ "type": "[318]"
},
{
"name": "clients",
- "type": "[315]"
+ "type": "[317]"
},
{
"name": "auth",
- "type": "317"
+ "type": "319"
},
{
"name": "vencrypt",
"default": null,
- "type": "318"
+ "type": "320"
},
{
"name": "display",
@@ -16215,11 +16254,11 @@
"members": [
{
"name": "server",
- "type": "319"
+ "type": "321"
},
{
"name": "client",
- "type": "320"
+ "type": "322"
}
],
"meta-type": "object"
@@ -16229,11 +16268,11 @@
"members": [
{
"name": "server",
- "type": "319"
+ "type": "321"
},
{
"name": "client",
- "type": "315"
+ "type": "317"
}
],
"meta-type": "object"
@@ -16243,11 +16282,11 @@
"members": [
{
"name": "server",
- "type": "319"
+ "type": "321"
},
{
"name": "client",
- "type": "315"
+ "type": "317"
}
],
"meta-type": "object"
@@ -16284,7 +16323,7 @@
"members": [
{
"name": "keys",
- "type": "[321]"
+ "type": "[323]"
},
{
"name": "hold-time",
@@ -16309,7 +16348,7 @@
},
{
"name": "events",
- "type": "[322]"
+ "type": "[324]"
}
],
"meta-type": "object"
@@ -16320,15 +16359,15 @@
"variants": [
{
"case": "gtk",
- "type": "325"
+ "type": "327"
},
{
"case": "curses",
- "type": "326"
+ "type": "328"
},
{
"case": "egl-headless",
- "type": "327"
+ "type": "329"
},
{
"case": "default",
@@ -16354,7 +16393,7 @@
"members": [
{
"name": "type",
- "type": "323"
+ "type": "325"
},
{
"name": "full-screen",
@@ -16374,7 +16413,7 @@
{
"name": "gl",
"default": null,
- "type": "324"
+ "type": "326"
}
],
"meta-type": "object"
@@ -16385,22 +16424,22 @@
{
"name": "status",
"default": null,
- "type": "328"
+ "type": "330"
},
{
"name": "ram",
"default": null,
- "type": "329"
+ "type": "331"
},
{
"name": "disk",
"default": null,
- "type": "329"
+ "type": "331"
},
{
"name": "xbzrle-cache",
"default": null,
- "type": "330"
+ "type": "332"
},
{
"name": "total-time",
@@ -16445,12 +16484,12 @@
{
"name": "compression",
"default": null,
- "type": "331"
+ "type": "333"
},
{
"name": "socket-address",
"default": null,
- "type": "[332]"
+ "type": "[334]"
}
],
"meta-type": "object"
@@ -16475,7 +16514,7 @@
"members": [
{
"name": "capability",
- "type": "333"
+ "type": "335"
},
{
"name": "state",
@@ -16550,17 +16589,17 @@
{
"name": "tls-creds",
"default": null,
- "type": "283"
+ "type": "285"
},
{
"name": "tls-hostname",
"default": null,
- "type": "283"
+ "type": "285"
},
{
"name": "tls-authz",
"default": null,
- "type": "283"
+ "type": "285"
},
{
"name": "max-bandwidth",
@@ -16605,7 +16644,7 @@
{
"name": "multifd-compression",
"default": null,
- "type": "334"
+ "type": "336"
},
{
"name": "multifd-zlib-level",
@@ -16620,7 +16659,7 @@
{
"name": "block-bitmap-mapping",
"default": null,
- "type": "[335]"
+ "type": "[337]"
}
],
"meta-type": "object"
@@ -16746,7 +16785,7 @@
{
"name": "multifd-compression",
"default": null,
- "type": "334"
+ "type": "336"
},
{
"name": "multifd-zlib-level",
@@ -16761,7 +16800,7 @@
{
"name": "block-bitmap-mapping",
"default": null,
- "type": "[335]"
+ "type": "[337]"
}
],
"meta-type": "object"
@@ -16800,7 +16839,7 @@
"members": [
{
"name": "status",
- "type": "328"
+ "type": "330"
}
],
"meta-type": "object"
@@ -16820,11 +16859,11 @@
"members": [
{
"name": "mode",
- "type": "336"
+ "type": "338"
},
{
"name": "reason",
- "type": "337"
+ "type": "339"
}
],
"meta-type": "object"
@@ -16834,7 +16873,7 @@
"members": [
{
"name": "state",
- "type": "328"
+ "type": "330"
}
],
"meta-type": "object"
@@ -16968,15 +17007,15 @@
"members": [
{
"name": "mode",
- "type": "336"
+ "type": "338"
},
{
"name": "last-mode",
- "type": "336"
+ "type": "338"
},
{
"name": "reason",
- "type": "337"
+ "type": "339"
}
],
"meta-type": "object"
@@ -17003,21 +17042,53 @@
},
{
"name": "151",
+ "members": [
+ {
+ "name": "calc-time",
+ "type": "int"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "152",
+ "members": [
+ {
+ "name": "dirty-rate",
+ "type": "int"
+ },
+ {
+ "name": "status",
+ "type": "340"
+ },
+ {
+ "name": "start-time",
+ "type": "int"
+ },
+ {
+ "name": "calc-time",
+ "type": "int"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "153",
"members": [
{
"name": "actions",
- "type": "[338]"
+ "type": "[341]"
},
{
"name": "properties",
"default": null,
- "type": "339"
+ "type": "342"
}
],
"meta-type": "object"
},
{
- "name": "152",
+ "name": "154",
"members": [
{
"name": "name",
@@ -17032,12 +17103,12 @@
"meta-type": "object"
},
{
- "name": "[153]",
- "element-type": "153",
+ "name": "[155]",
+ "element-type": "155",
"meta-type": "array"
},
{
- "name": "153",
+ "name": "155",
"members": [
{
"name": "name",
@@ -17045,7 +17116,7 @@
},
{
"name": "state",
- "type": "340"
+ "type": "343"
},
{
"name": "vcpu",
@@ -17055,7 +17126,7 @@
"meta-type": "object"
},
{
- "name": "154",
+ "name": "156",
"members": [
{
"name": "name",
@@ -17079,22 +17150,22 @@
"meta-type": "object"
},
{
- "name": "155",
+ "name": "157",
"members": [
{
"name": "enable",
"default": null,
- "type": "[341]"
+ "type": "[344]"
}
],
"meta-type": "object"
},
{
- "name": "156",
+ "name": "158",
"members": [
{
"name": "qemu",
- "type": "342"
+ "type": "345"
},
{
"name": "package",
@@ -17104,12 +17175,12 @@
"meta-type": "object"
},
{
- "name": "[157]",
- "element-type": "157",
+ "name": "[159]",
+ "element-type": "159",
"meta-type": "array"
},
{
- "name": "157",
+ "name": "159",
"members": [
{
"name": "name",
@@ -17119,12 +17190,12 @@
"meta-type": "object"
},
{
- "name": "[158]",
- "element-type": "158",
+ "name": "[160]",
+ "element-type": "160",
"meta-type": "array"
},
{
- "name": "158",
+ "name": "160",
"members": [
{
"name": "name",
@@ -17134,41 +17205,41 @@
"meta-type": "object"
},
{
- "name": "[159]",
- "element-type": "159",
+ "name": "[161]",
+ "element-type": "161",
"meta-type": "array"
},
{
- "name": "159",
+ "name": "161",
"tag": "meta-type",
"variants": [
{
"case": "builtin",
- "type": "344"
+ "type": "347"
},
{
"case": "enum",
- "type": "345"
+ "type": "348"
},
{
"case": "array",
- "type": "346"
+ "type": "349"
},
{
"case": "object",
- "type": "347"
+ "type": "350"
},
{
"case": "alternate",
- "type": "348"
+ "type": "351"
},
{
"case": "command",
- "type": "349"
+ "type": "352"
},
{
"case": "event",
- "type": "350"
+ "type": "353"
}
],
"members": [
@@ -17178,7 +17249,7 @@
},
{
"name": "meta-type",
- "type": "343"
+ "type": "346"
},
{
"name": "features",
@@ -17189,7 +17260,7 @@
"meta-type": "object"
},
{
- "name": "160",
+ "name": "162",
"members": [
{
"name": "path",
@@ -17199,12 +17270,12 @@
"meta-type": "object"
},
{
- "name": "[161]",
- "element-type": "161",
+ "name": "[163]",
+ "element-type": "163",
"meta-type": "array"
},
{
- "name": "161",
+ "name": "163",
"members": [
{
"name": "name",
@@ -17228,7 +17299,7 @@
"meta-type": "object"
},
{
- "name": "162",
+ "name": "164",
"members": [
{
"name": "path",
@@ -17247,7 +17318,7 @@
"meta-type": "builtin"
},
{
- "name": "163",
+ "name": "165",
"members": [
{
"name": "path",
@@ -17265,7 +17336,7 @@
"meta-type": "object"
},
{
- "name": "164",
+ "name": "166",
"members": [
{
"name": "implements",
@@ -17281,12 +17352,12 @@
"meta-type": "object"
},
{
- "name": "[165]",
- "element-type": "165",
+ "name": "[167]",
+ "element-type": "167",
"meta-type": "array"
},
{
- "name": "165",
+ "name": "167",
"members": [
{
"name": "name",
@@ -17306,7 +17377,7 @@
"meta-type": "object"
},
{
- "name": "166",
+ "name": "168",
"members": [
{
"name": "typename",
@@ -17316,7 +17387,7 @@
"meta-type": "object"
},
{
- "name": "167",
+ "name": "169",
"members": [
{
"name": "qom-type",
@@ -17335,7 +17406,7 @@
"meta-type": "object"
},
{
- "name": "168",
+ "name": "170",
"members": [
{
"name": "id",
@@ -17345,7 +17416,7 @@
"meta-type": "object"
},
{
- "name": "169",
+ "name": "171",
"members": [
{
"name": "typename",
@@ -17355,7 +17426,7 @@
"meta-type": "object"
},
{
- "name": "170",
+ "name": "172",
"members": [
{
"name": "driver",
@@ -17375,7 +17446,7 @@
"meta-type": "object"
},
{
- "name": "171",
+ "name": "173",
"members": [
{
"name": "id",
@@ -17385,7 +17456,7 @@
"meta-type": "object"
},
{
- "name": "172",
+ "name": "174",
"members": [
{
"name": "device",
@@ -17400,41 +17471,41 @@
"meta-type": "object"
},
{
- "name": "[173]",
- "element-type": "173",
+ "name": "[175]",
+ "element-type": "175",
"meta-type": "array"
},
{
- "name": "173",
+ "name": "175",
"tag": "arch",
"variants": [
{
"case": "x86",
- "type": "353"
+ "type": "356"
},
{
"case": "sparc",
- "type": "354"
+ "type": "357"
},
{
"case": "ppc",
- "type": "355"
+ "type": "358"
},
{
"case": "mips",
- "type": "356"
+ "type": "359"
},
{
"case": "tricore",
- "type": "357"
+ "type": "360"
},
{
"case": "s390",
- "type": "358"
+ "type": "361"
},
{
"case": "riscv",
- "type": "359"
+ "type": "362"
},
{
"case": "other",
@@ -17465,27 +17536,27 @@
{
"name": "props",
"default": null,
- "type": "351"
+ "type": "354"
},
{
"name": "arch",
- "type": "352"
+ "type": "355"
}
],
"meta-type": "object"
},
{
- "name": "[174]",
- "element-type": "174",
+ "name": "[176]",
+ "element-type": "176",
"meta-type": "array"
},
{
- "name": "174",
+ "name": "176",
"tag": "target",
"variants": [
{
"case": "s390x",
- "type": "358"
+ "type": "361"
},
{
"case": "aarch64",
@@ -17632,24 +17703,24 @@
{
"name": "props",
"default": null,
- "type": "351"
+ "type": "354"
},
{
"name": "arch",
- "type": "352",
+ "type": "355",
"features": [
"deprecated"
]
},
{
"name": "target",
- "type": "360"
+ "type": "363"
}
],
"meta-type": "object"
},
{
- "name": "175",
+ "name": "177",
"members": [
{
"name": "id",
@@ -17659,12 +17730,12 @@
"meta-type": "object"
},
{
- "name": "[176]",
- "element-type": "176",
+ "name": "[178]",
+ "element-type": "178",
"meta-type": "array"
},
{
- "name": "176",
+ "name": "178",
"members": [
{
"name": "name",
@@ -17710,7 +17781,7 @@
"meta-type": "object"
},
{
- "name": "177",
+ "name": "179",
"members": [
{
"name": "wakeup-suspend-support",
@@ -17720,22 +17791,22 @@
"meta-type": "object"
},
{
- "name": "178",
+ "name": "180",
"members": [
{
"name": "arch",
- "type": "360"
+ "type": "363"
}
],
"meta-type": "object"
},
{
- "name": "[179]",
- "element-type": "179",
+ "name": "[181]",
+ "element-type": "181",
"meta-type": "array"
},
{
- "name": "179",
+ "name": "181",
"members": [
{
"name": "id",
@@ -17764,18 +17835,18 @@
},
{
"name": "policy",
- "type": "361"
+ "type": "364"
}
],
"meta-type": "object"
},
{
- "name": "[180]",
- "element-type": "180",
+ "name": "[182]",
+ "element-type": "182",
"meta-type": "array"
},
{
- "name": "180",
+ "name": "182",
"members": [
{
"name": "type",
@@ -17787,7 +17858,7 @@
},
{
"name": "props",
- "type": "351"
+ "type": "354"
},
{
"name": "qom-path",
@@ -17798,69 +17869,69 @@
"meta-type": "object"
},
{
- "name": "181",
+ "name": "183",
"tag": "type",
"variants": [
{
"case": "node",
- "type": "363"
+ "type": "366"
},
{
"case": "dist",
- "type": "364"
+ "type": "367"
},
{
"case": "cpu",
- "type": "365"
+ "type": "368"
},
{
"case": "hmat-lb",
- "type": "366"
+ "type": "369"
},
{
"case": "hmat-cache",
- "type": "367"
+ "type": "370"
}
],
"members": [
{
"name": "type",
- "type": "362"
+ "type": "365"
}
],
"meta-type": "object"
},
{
- "name": "186",
+ "name": "188",
"members": [
{
"name": "type",
- "type": "370"
+ "type": "373"
},
{
"name": "model",
- "type": "368"
+ "type": "371"
}
],
"meta-type": "object"
},
{
- "name": "187",
+ "name": "189",
"members": [
{
"name": "model",
- "type": "368"
+ "type": "371"
}
],
"meta-type": "object"
},
{
- "name": "[188]",
- "element-type": "188",
+ "name": "[190]",
+ "element-type": "190",
"meta-type": "array"
},
{
- "name": "188",
+ "name": "190",
"members": [
{
"name": "name",
@@ -17893,7 +17964,7 @@
"meta-type": "object"
},
{
- "name": "189",
+ "name": "191",
"members": [
{
"name": "protocol",
@@ -17917,7 +17988,7 @@
"meta-type": "object"
},
{
- "name": "190",
+ "name": "192",
"members": [
{
"name": "name",
@@ -17928,7 +17999,7 @@
"meta-type": "object"
},
{
- "name": "191",
+ "name": "193",
"members": [
{
"name": "enabled",
@@ -17942,7 +18013,7 @@
"meta-type": "object"
},
{
- "name": "192",
+ "name": "194",
"members": [
{
"name": "UUID",
@@ -17952,12 +18023,12 @@
"meta-type": "object"
},
{
- "name": "[193]",
- "element-type": "193",
+ "name": "[195]",
+ "element-type": "195",
"meta-type": "array"
},
{
- "name": "193",
+ "name": "195",
"members": [
{
"name": "id",
@@ -17983,7 +18054,7 @@
"meta-type": "object"
},
{
- "name": "194",
+ "name": "196",
"members": [
{
"name": "actual",
@@ -17993,7 +18064,7 @@
"meta-type": "object"
},
{
- "name": "195",
+ "name": "197",
"members": [
{
"name": "actual",
@@ -18003,12 +18074,12 @@
"meta-type": "object"
},
{
- "name": "[196]",
- "element-type": "196",
+ "name": "[198]",
+ "element-type": "198",
"meta-type": "array"
},
{
- "name": "196",
+ "name": "198",
"members": [
{
"name": "bus",
@@ -18016,13 +18087,13 @@
},
{
"name": "devices",
- "type": "[371]"
+ "type": "[374]"
}
],
"meta-type": "object"
},
{
- "name": "197",
+ "name": "199",
"members": [
{
"name": "val",
@@ -18045,7 +18116,7 @@
"meta-type": "object"
},
{
- "name": "198",
+ "name": "200",
"members": [
{
"name": "val",
@@ -18063,7 +18134,7 @@
"meta-type": "object"
},
{
- "name": "199",
+ "name": "201",
"members": [
{
"name": "value",
@@ -18073,7 +18144,7 @@
"meta-type": "object"
},
{
- "name": "200",
+ "name": "202",
"members": [
{
"name": "command-line",
@@ -18088,7 +18159,7 @@
"meta-type": "object"
},
{
- "name": "201",
+ "name": "203",
"members": [
{
"name": "device",
@@ -18107,7 +18178,7 @@
"meta-type": "object"
},
{
- "name": "202",
+ "name": "204",
"members": [
{
"name": "enable",
@@ -18117,7 +18188,7 @@
"meta-type": "object"
},
{
- "name": "203",
+ "name": "205",
"members": [
{
"name": "fdname",
@@ -18127,7 +18198,7 @@
"meta-type": "object"
},
{
- "name": "204",
+ "name": "206",
"members": [
{
"name": "fdname",
@@ -18137,7 +18208,7 @@
"meta-type": "object"
},
{
- "name": "205",
+ "name": "207",
"members": [
{
"name": "base-memory",
@@ -18152,7 +18223,7 @@
"meta-type": "object"
},
{
- "name": "206",
+ "name": "208",
"members": [
{
"name": "fdset-id",
@@ -18168,7 +18239,7 @@
"meta-type": "object"
},
{
- "name": "207",
+ "name": "209",
"members": [
{
"name": "fdset-id",
@@ -18182,7 +18253,7 @@
"meta-type": "object"
},
{
- "name": "208",
+ "name": "210",
"members": [
{
"name": "fdset-id",
@@ -18197,12 +18268,12 @@
"meta-type": "object"
},
{
- "name": "[209]",
- "element-type": "209",
+ "name": "[211]",
+ "element-type": "211",
"meta-type": "array"
},
{
- "name": "209",
+ "name": "211",
"members": [
{
"name": "fdset-id",
@@ -18210,13 +18281,13 @@
},
{
"name": "fds",
- "type": "[372]"
+ "type": "[375]"
}
],
"meta-type": "object"
},
{
- "name": "210",
+ "name": "212",
"members": [
{
"name": "option",
@@ -18227,12 +18298,12 @@
"meta-type": "object"
},
{
- "name": "[211]",
- "element-type": "211",
+ "name": "[213]",
+ "element-type": "213",
"meta-type": "array"
},
{
- "name": "211",
+ "name": "213",
"members": [
{
"name": "option",
@@ -18240,47 +18311,47 @@
},
{
"name": "parameters",
- "type": "[373]"
+ "type": "[376]"
}
],
"meta-type": "object"
},
{
- "name": "[212]",
- "element-type": "212",
+ "name": "[214]",
+ "element-type": "214",
"meta-type": "array"
},
{
- "name": "212",
+ "name": "214",
"tag": "type",
"variants": [
{
"case": "dimm",
- "type": "375"
+ "type": "378"
},
{
"case": "nvdimm",
- "type": "375"
+ "type": "378"
},
{
"case": "virtio-pmem",
- "type": "376"
+ "type": "379"
},
{
"case": "virtio-mem",
- "type": "377"
+ "type": "380"
}
],
"members": [
{
"name": "type",
- "type": "374"
+ "type": "377"
}
],
"meta-type": "object"
},
{
- "name": "213",
+ "name": "215",
"members": [
{
"name": "id",
@@ -18295,7 +18366,7 @@
"meta-type": "object"
},
{
- "name": "214",
+ "name": "216",
"members": [
{
"name": "device",
@@ -18309,12 +18380,12 @@
"meta-type": "object"
},
{
- "name": "[215]",
- "element-type": "215",
+ "name": "[217]",
+ "element-type": "217",
"meta-type": "array"
},
{
- "name": "215",
+ "name": "217",
"members": [
{
"name": "device",
@@ -18327,7 +18398,7 @@
},
{
"name": "slot-type",
- "type": "378"
+ "type": "381"
},
{
"name": "source",
@@ -18341,17 +18412,17 @@
"meta-type": "object"
},
{
- "name": "216",
+ "name": "218",
"members": [
{
"name": "info",
- "type": "215"
+ "type": "217"
}
],
"meta-type": "object"
},
{
- "name": "217",
+ "name": "219",
"members": [
{
"name": "filename",
@@ -18361,7 +18432,7 @@
"meta-type": "object"
},
{
- "name": "218",
+ "name": "220",
"members": [
{
"name": "guid",
@@ -18371,7 +18442,7 @@
"meta-type": "object"
},
{
- "name": "219",
+ "name": "221",
"members": [
{
"name": "offset",
@@ -18381,7 +18452,7 @@
"meta-type": "object"
},
{
- "name": "220",
+ "name": "222",
"members": [
{
"name": "enabled",
@@ -18405,7 +18476,7 @@
},
{
"name": "state",
- "type": "379"
+ "type": "382"
},
{
"name": "handle",
@@ -18415,7 +18486,7 @@
"meta-type": "object"
},
{
- "name": "221",
+ "name": "223",
"members": [
{
"name": "data",
@@ -18425,7 +18496,7 @@
"meta-type": "object"
},
{
- "name": "222",
+ "name": "224",
"members": [
{
"name": "pdh",
@@ -18452,7 +18523,7 @@
"meta-type": "builtin"
},
{
- "name": "225",
+ "name": "227",
"meta-type": "enum",
"values": [
"debug",
@@ -18475,7 +18546,7 @@
]
},
{
- "name": "226",
+ "name": "228",
"meta-type": "enum",
"values": [
"none",
@@ -18491,7 +18562,7 @@
]
},
{
- "name": "227",
+ "name": "229",
"meta-type": "enum",
"values": [
"reset",
@@ -18504,7 +18575,7 @@
]
},
{
- "name": "228",
+ "name": "230",
"meta-type": "enum",
"values": [
"pause",
@@ -18513,28 +18584,28 @@
]
},
{
- "name": "229",
+ "name": "231",
"tag": "type",
"variants": [
{
"case": "hyper-v",
- "type": "381"
+ "type": "384"
},
{
"case": "s390",
- "type": "382"
+ "type": "385"
}
],
"members": [
{
"name": "type",
- "type": "380"
+ "type": "383"
}
],
"meta-type": "object"
},
{
- "name": "230",
+ "name": "232",
"meta-type": "enum",
"values": [
"retain",
@@ -18548,7 +18619,7 @@
"meta-type": "array"
},
{
- "name": "231",
+ "name": "233",
"meta-type": "enum",
"values": [
"ok",
@@ -18557,12 +18628,12 @@
]
},
{
- "name": "[232]",
- "element-type": "232",
+ "name": "[234]",
+ "element-type": "234",
"meta-type": "array"
},
{
- "name": "232",
+ "name": "234",
"members": [
{
"name": "name",
@@ -18587,7 +18658,7 @@
},
{
"name": "status",
- "type": "383",
+ "type": "386",
"features": [
"deprecated"
]
@@ -18605,7 +18676,7 @@
"meta-type": "object"
},
{
- "name": "233",
+ "name": "235",
"members": [
{
"name": "rd_bytes",
@@ -18714,37 +18785,37 @@
},
{
"name": "timed_stats",
- "type": "[384]"
+ "type": "[387]"
},
{
"name": "rd_latency_histogram",
"default": null,
- "type": "385"
+ "type": "388"
},
{
"name": "wr_latency_histogram",
"default": null,
- "type": "385"
+ "type": "388"
},
{
"name": "flush_latency_histogram",
"default": null,
- "type": "385"
+ "type": "388"
}
],
"meta-type": "object"
},
{
- "name": "234",
+ "name": "236",
"tag": "driver",
"variants": [
{
"case": "file",
- "type": "386"
+ "type": "389"
},
{
"case": "host_device",
- "type": "386"
+ "type": "389"
},
{
"case": "blkdebug",
@@ -18902,13 +18973,13 @@
"members": [
{
"name": "driver",
- "type": "247"
+ "type": "249"
}
],
"meta-type": "object"
},
{
- "name": "235",
+ "name": "237",
"meta-type": "enum",
"values": [
"undefined",
@@ -18925,7 +18996,7 @@
]
},
{
- "name": "236",
+ "name": "238",
"meta-type": "enum",
"values": [
"existing",
@@ -18933,7 +19004,7 @@
]
},
{
- "name": "237",
+ "name": "239",
"meta-type": "enum",
"values": [
"report",
@@ -18944,7 +19015,7 @@
]
},
{
- "name": "238",
+ "name": "240",
"meta-type": "enum",
"values": [
"top",
@@ -18955,7 +19026,7 @@
]
},
{
- "name": "239",
+ "name": "241",
"meta-type": "enum",
"values": [
"on-success",
@@ -18964,7 +19035,7 @@
]
},
{
- "name": "240",
+ "name": "242",
"meta-type": "enum",
"values": [
"off",
@@ -18973,7 +19044,7 @@
]
},
{
- "name": "241",
+ "name": "243",
"members": [
{
"name": "filename",
@@ -19035,18 +19106,18 @@
{
"name": "backing-image",
"default": null,
- "type": "241"
+ "type": "243"
},
{
"name": "format-specific",
"default": null,
- "type": "387"
+ "type": "390"
}
],
"meta-type": "object"
},
{
- "name": "242",
+ "name": "244",
"members": [
{
"name": "writeback",
@@ -19064,12 +19135,12 @@
"meta-type": "object"
},
{
- "name": "[243]",
- "element-type": "243",
+ "name": "[245]",
+ "element-type": "245",
"meta-type": "array"
},
{
- "name": "243",
+ "name": "245",
"members": [
{
"name": "id",
@@ -19077,7 +19148,7 @@
},
{
"name": "type",
- "type": "388"
+ "type": "391"
},
{
"name": "name",
@@ -19087,12 +19158,12 @@
"meta-type": "object"
},
{
- "name": "[244]",
- "element-type": "244",
+ "name": "[246]",
+ "element-type": "246",
"meta-type": "array"
},
{
- "name": "244",
+ "name": "246",
"members": [
{
"name": "parent",
@@ -19108,17 +19179,17 @@
},
{
"name": "perm",
- "type": "[389]"
+ "type": "[392]"
},
{
"name": "shared-perm",
- "type": "[389]"
+ "type": "[392]"
}
],
"meta-type": "object"
},
{
- "name": "245",
+ "name": "247",
"meta-type": "enum",
"values": [
"background",
@@ -19126,12 +19197,12 @@
]
},
{
- "name": "[246]",
- "element-type": "246",
+ "name": "[248]",
+ "element-type": "248",
"meta-type": "array"
},
{
- "name": "246",
+ "name": "248",
"members": [
{
"type": "str"
@@ -19143,7 +19214,7 @@
"meta-type": "alternate"
},
{
- "name": "247",
+ "name": "249",
"meta-type": "enum",
"values": [
"blkdebug",
@@ -19189,7 +19260,7 @@
]
},
{
- "name": "248",
+ "name": "250",
"meta-type": "enum",
"values": [
"ignore",
@@ -19197,7 +19268,7 @@
]
},
{
- "name": "249",
+ "name": "251",
"members": [
{
"name": "direct",
@@ -19213,11 +19284,11 @@
"meta-type": "object"
},
{
- "name": "250",
+ "name": "252",
"members": [
{
"name": "image",
- "type": "390"
+ "type": "393"
},
{
"name": "config",
@@ -19257,36 +19328,36 @@
{
"name": "inject-error",
"default": null,
- "type": "[391]"
+ "type": "[394]"
},
{
"name": "set-state",
"default": null,
- "type": "[392]"
+ "type": "[395]"
},
{
"name": "take-child-perms",
"default": null,
- "type": "[389]"
+ "type": "[392]"
},
{
"name": "unshare-child-perms",
"default": null,
- "type": "[389]"
+ "type": "[392]"
}
],
"meta-type": "object"
},
{
- "name": "251",
+ "name": "253",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "log",
- "type": "390"
+ "type": "393"
},
{
"name": "log-sector-size",
@@ -19307,41 +19378,41 @@
"meta-type": "object"
},
{
- "name": "252",
+ "name": "254",
"members": [
{
"name": "test",
- "type": "390"
+ "type": "393"
},
{
"name": "raw",
- "type": "390"
+ "type": "393"
}
],
"meta-type": "object"
},
{
- "name": "253",
+ "name": "255",
"members": [
{
"name": "image",
- "type": "390"
+ "type": "393"
}
],
"meta-type": "object"
},
{
- "name": "254",
+ "name": "256",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
}
],
"meta-type": "object"
},
{
- "name": "255",
+ "name": "257",
"members": [
{
"name": "filename",
@@ -19355,12 +19426,12 @@
{
"name": "locking",
"default": null,
- "type": "393"
+ "type": "396"
},
{
"name": "aio",
"default": null,
- "type": "394"
+ "type": "397"
},
{
"name": "drop-cache",
@@ -19379,7 +19450,7 @@
]
},
{
- "name": "256",
+ "name": "258",
"members": [
{
"name": "url",
@@ -19419,7 +19490,7 @@
"meta-type": "object"
},
{
- "name": "257",
+ "name": "259",
"members": [
{
"name": "url",
@@ -19464,7 +19535,7 @@
"meta-type": "object"
},
{
- "name": "258",
+ "name": "260",
"members": [
{
"name": "volume",
@@ -19476,7 +19547,7 @@
},
{
"name": "server",
- "type": "[332]"
+ "type": "[334]"
},
{
"name": "debug",
@@ -19492,7 +19563,7 @@
"meta-type": "object"
},
{
- "name": "259",
+ "name": "261",
"members": [
{
"name": "url",
@@ -19542,7 +19613,7 @@
"meta-type": "object"
},
{
- "name": "260",
+ "name": "262",
"members": [
{
"name": "url",
@@ -19597,11 +19668,11 @@
"meta-type": "object"
},
{
- "name": "261",
+ "name": "263",
"members": [
{
"name": "transport",
- "type": "395"
+ "type": "398"
},
{
"name": "portal",
@@ -19634,7 +19705,7 @@
{
"name": "header-digest",
"default": null,
- "type": "396"
+ "type": "399"
},
{
"name": "timeout",
@@ -19645,11 +19716,11 @@
"meta-type": "object"
},
{
- "name": "262",
+ "name": "264",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "key-secret",
@@ -19660,11 +19731,11 @@
"meta-type": "object"
},
{
- "name": "263",
+ "name": "265",
"members": [
{
"name": "server",
- "type": "332"
+ "type": "334"
},
{
"name": "export",
@@ -19690,11 +19761,11 @@
"meta-type": "object"
},
{
- "name": "264",
+ "name": "266",
"members": [
{
"name": "server",
- "type": "397"
+ "type": "400"
},
{
"name": "path",
@@ -19734,7 +19805,7 @@
"meta-type": "object"
},
{
- "name": "265",
+ "name": "267",
"members": [
{
"name": "size",
@@ -19755,7 +19826,7 @@
"meta-type": "object"
},
{
- "name": "266",
+ "name": "268",
"members": [
{
"name": "device",
@@ -19769,16 +19840,16 @@
"meta-type": "object"
},
{
- "name": "267",
+ "name": "269",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "backing",
"default": null,
- "type": "398"
+ "type": "401"
},
{
"name": "lazy-refcounts",
@@ -19803,7 +19874,7 @@
{
"name": "overlap-check",
"default": null,
- "type": "399"
+ "type": "402"
},
{
"name": "cache-size",
@@ -19833,53 +19904,53 @@
{
"name": "encrypt",
"default": null,
- "type": "400"
+ "type": "403"
},
{
"name": "data-file",
"default": null,
- "type": "390"
+ "type": "393"
}
],
"meta-type": "object"
},
{
- "name": "268",
+ "name": "270",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "backing",
"default": null,
- "type": "398"
+ "type": "401"
},
{
"name": "encrypt",
"default": null,
- "type": "401"
+ "type": "404"
}
],
"meta-type": "object"
},
{
- "name": "269",
+ "name": "271",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "backing",
"default": null,
- "type": "398"
+ "type": "401"
}
],
"meta-type": "object"
},
{
- "name": "270",
+ "name": "272",
"members": [
{
"name": "blkverify",
@@ -19888,7 +19959,7 @@
},
{
"name": "children",
- "type": "[390]"
+ "type": "[393]"
},
{
"name": "vote-threshold",
@@ -19902,17 +19973,17 @@
{
"name": "read-pattern",
"default": null,
- "type": "402"
+ "type": "405"
}
],
"meta-type": "object"
},
{
- "name": "271",
+ "name": "273",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "offset",
@@ -19928,7 +19999,7 @@
"meta-type": "object"
},
{
- "name": "272",
+ "name": "274",
"members": [
{
"name": "pool",
@@ -19961,7 +20032,7 @@
{
"name": "auth-client-required",
"default": null,
- "type": "[403]"
+ "type": "[406]"
},
{
"name": "key-secret",
@@ -19971,21 +20042,21 @@
{
"name": "server",
"default": null,
- "type": "[404]"
+ "type": "[407]"
}
],
"meta-type": "object"
},
{
- "name": "273",
+ "name": "275",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "mode",
- "type": "405"
+ "type": "408"
},
{
"name": "top-id",
@@ -19996,11 +20067,11 @@
"meta-type": "object"
},
{
- "name": "274",
+ "name": "276",
"members": [
{
"name": "server",
- "type": "332"
+ "type": "334"
},
{
"name": "vdi",
@@ -20020,11 +20091,11 @@
"meta-type": "object"
},
{
- "name": "275",
+ "name": "277",
"members": [
{
"name": "server",
- "type": "406"
+ "type": "409"
},
{
"name": "path",
@@ -20038,13 +20109,13 @@
{
"name": "host-key-check",
"default": null,
- "type": "407"
+ "type": "410"
}
],
"meta-type": "object"
},
{
- "name": "276",
+ "name": "278",
"members": [
{
"name": "throttle-group",
@@ -20052,13 +20123,13 @@
},
{
"name": "file",
- "type": "390"
+ "type": "393"
}
],
"meta-type": "object"
},
{
- "name": "277",
+ "name": "279",
"members": [
{
"name": "dir",
@@ -20088,68 +20159,68 @@
"meta-type": "object"
},
{
- "name": "278",
+ "name": "280",
"tag": "driver",
"variants": [
{
"case": "file",
- "type": "408"
+ "type": "411"
},
{
"case": "gluster",
- "type": "409"
+ "type": "412"
},
{
"case": "luks",
- "type": "410"
+ "type": "413"
},
{
"case": "nfs",
- "type": "411"
+ "type": "414"
},
{
"case": "parallels",
- "type": "412"
+ "type": "415"
},
{
"case": "qcow",
- "type": "413"
+ "type": "416"
},
{
"case": "qcow2",
- "type": "414"
+ "type": "417"
},
{
"case": "qed",
- "type": "415"
+ "type": "418"
},
{
"case": "rbd",
- "type": "416"
+ "type": "419"
},
{
"case": "sheepdog",
- "type": "417"
+ "type": "420"
},
{
"case": "ssh",
- "type": "418"
+ "type": "421"
},
{
"case": "vdi",
- "type": "419"
+ "type": "422"
},
{
"case": "vhdx",
- "type": "420"
+ "type": "423"
},
{
"case": "vmdk",
- "type": "421"
+ "type": "424"
},
{
"case": "vpc",
- "type": "422"
+ "type": "425"
},
{
"case": "blkdebug",
@@ -20255,22 +20326,22 @@
"members": [
{
"name": "driver",
- "type": "247"
+ "type": "249"
}
],
"meta-type": "object"
},
{
- "name": "279",
+ "name": "281",
"tag": "driver",
"variants": [
{
"case": "luks",
- "type": "423"
+ "type": "426"
},
{
"case": "qcow2",
- "type": "424"
+ "type": "427"
},
{
"case": "blkdebug",
@@ -20428,13 +20499,13 @@
"members": [
{
"name": "driver",
- "type": "247"
+ "type": "249"
}
],
"meta-type": "object"
},
{
- "name": "280",
+ "name": "282",
"meta-type": "enum",
"values": [
"read",
@@ -20442,7 +20513,7 @@
]
},
{
- "name": "281",
+ "name": "283",
"meta-type": "enum",
"values": [
"ignore",
@@ -20451,7 +20522,7 @@
]
},
{
- "name": "282",
+ "name": "284",
"meta-type": "enum",
"values": [
"commit",
@@ -20463,7 +20534,7 @@
]
},
{
- "name": "283",
+ "name": "285",
"members": [
{
"type": "str"
@@ -20475,36 +20546,36 @@
"meta-type": "alternate"
},
{
- "name": "284",
+ "name": "286",
"tag": "type",
"variants": [
{
"case": "inet",
- "type": "426"
+ "type": "429"
},
{
"case": "unix",
- "type": "427"
+ "type": "430"
},
{
"case": "vsock",
- "type": "428"
+ "type": "431"
},
{
"case": "fd",
- "type": "429"
+ "type": "432"
}
],
"members": [
{
"name": "type",
- "type": "425"
+ "type": "428"
}
],
"meta-type": "object"
},
{
- "name": "285",
+ "name": "287",
"meta-type": "enum",
"values": [
"safe",
@@ -20512,7 +20583,7 @@
]
},
{
- "name": "286",
+ "name": "288",
"meta-type": "enum",
"values": [
"read",
@@ -20521,7 +20592,7 @@
]
},
{
- "name": "287",
+ "name": "289",
"meta-type": "enum",
"values": [
"utf8",
@@ -20529,100 +20600,100 @@
]
},
{
- "name": "288",
+ "name": "290",
"tag": "type",
"variants": [
{
"case": "file",
- "type": "431"
+ "type": "434"
},
{
"case": "serial",
- "type": "432"
+ "type": "435"
},
{
"case": "parallel",
- "type": "432"
+ "type": "435"
},
{
"case": "pipe",
- "type": "432"
+ "type": "435"
},
{
"case": "socket",
- "type": "433"
+ "type": "436"
},
{
"case": "udp",
- "type": "434"
+ "type": "437"
},
{
"case": "pty",
- "type": "435"
+ "type": "438"
},
{
"case": "null",
- "type": "435"
+ "type": "438"
},
{
"case": "mux",
- "type": "436"
+ "type": "439"
},
{
"case": "msmouse",
- "type": "435"
+ "type": "438"
},
{
"case": "wctablet",
- "type": "435"
+ "type": "438"
},
{
"case": "braille",
- "type": "435"
+ "type": "438"
},
{
"case": "testdev",
- "type": "435"
+ "type": "438"
},
{
"case": "stdio",
- "type": "437"
+ "type": "440"
},
{
"case": "console",
- "type": "435"
+ "type": "438"
},
{
"case": "spicevmc",
- "type": "438"
+ "type": "441"
},
{
"case": "spiceport",
- "type": "439"
+ "type": "442"
},
{
"case": "vc",
- "type": "440"
+ "type": "443"
},
{
"case": "ringbuf",
- "type": "441"
+ "type": "444"
},
{
"case": "memory",
- "type": "441"
+ "type": "444"
}
],
"members": [
{
"name": "type",
- "type": "430"
+ "type": "433"
}
],
"meta-type": "object"
},
{
- "name": "289",
+ "name": "291",
"meta-type": "enum",
"values": [
"elf",
@@ -20633,7 +20704,7 @@
]
},
{
- "name": "290",
+ "name": "292",
"meta-type": "enum",
"values": [
"none",
@@ -20643,12 +20714,12 @@
]
},
{
- "name": "[289]",
- "element-type": "289",
+ "name": "[291]",
+ "element-type": "291",
"meta-type": "array"
},
{
- "name": "291",
+ "name": "293",
"meta-type": "enum",
"values": [
"none",
@@ -20666,7 +20737,7 @@
]
},
{
- "name": "292",
+ "name": "294",
"members": [
{
"name": "netdev",
@@ -20697,7 +20768,7 @@
"meta-type": "object"
},
{
- "name": "293",
+ "name": "295",
"members": [
{
"name": "hostname",
@@ -20757,7 +20828,7 @@
{
"name": "dnssearch",
"default": null,
- "type": "[442]"
+ "type": "[445]"
},
{
"name": "domainname",
@@ -20797,12 +20868,12 @@
{
"name": "hostfwd",
"default": null,
- "type": "[442]"
+ "type": "[445]"
},
{
"name": "guestfwd",
"default": null,
- "type": "[442]"
+ "type": "[445]"
},
{
"name": "tftp-server-name",
@@ -20813,7 +20884,7 @@
"meta-type": "object"
},
{
- "name": "294",
+ "name": "296",
"members": [
{
"name": "ifname",
@@ -20894,7 +20965,7 @@
"meta-type": "object"
},
{
- "name": "295",
+ "name": "297",
"members": [
{
"name": "src",
@@ -20967,7 +21038,7 @@
"meta-type": "object"
},
{
- "name": "296",
+ "name": "298",
"members": [
{
"name": "fd",
@@ -21003,7 +21074,7 @@
"meta-type": "object"
},
{
- "name": "297",
+ "name": "299",
"members": [
{
"name": "sock",
@@ -21029,7 +21100,7 @@
"meta-type": "object"
},
{
- "name": "298",
+ "name": "300",
"members": [
{
"name": "br",
@@ -21045,7 +21116,7 @@
"meta-type": "object"
},
{
- "name": "299",
+ "name": "301",
"members": [
{
"name": "hubid",
@@ -21060,7 +21131,7 @@
"meta-type": "object"
},
{
- "name": "300",
+ "name": "302",
"members": [
{
"name": "ifname",
@@ -21075,7 +21146,7 @@
"meta-type": "object"
},
{
- "name": "301",
+ "name": "303",
"members": [
{
"name": "chardev",
@@ -21095,7 +21166,7 @@
"meta-type": "object"
},
{
- "name": "302",
+ "name": "304",
"members": [
{
"name": "vhostdev",
@@ -21111,7 +21182,7 @@
"meta-type": "object"
},
{
- "name": "303",
+ "name": "305",
"meta-type": "enum",
"values": [
"normal",
@@ -21125,7 +21196,7 @@
"meta-type": "array"
},
{
- "name": "304",
+ "name": "306",
"meta-type": "enum",
"values": [
"half",
@@ -21133,7 +21204,7 @@
]
},
{
- "name": "305",
+ "name": "307",
"meta-type": "enum",
"values": [
"off",
@@ -21141,7 +21212,7 @@
]
},
{
- "name": "306",
+ "name": "308",
"members": [
{
"name": "priority",
@@ -21200,7 +21271,7 @@
"meta-type": "object"
},
{
- "name": "307",
+ "name": "309",
"members": [
{
"name": "in-pport",
@@ -21241,7 +21312,7 @@
"meta-type": "object"
},
{
- "name": "308",
+ "name": "310",
"members": [
{
"name": "goto-tbl",
@@ -21277,28 +21348,28 @@
"meta-type": "object"
},
{
- "name": "309",
+ "name": "311",
"tag": "type",
"variants": [
{
"case": "passthrough",
- "type": "444"
+ "type": "447"
},
{
"case": "emulator",
- "type": "445"
+ "type": "448"
}
],
"members": [
{
"name": "type",
- "type": "443"
+ "type": "446"
}
],
"meta-type": "object"
},
{
- "name": "310",
+ "name": "312",
"meta-type": "enum",
"values": [
"client",
@@ -21307,12 +21378,12 @@
]
},
{
- "name": "[311]",
- "element-type": "311",
+ "name": "[313]",
+ "element-type": "313",
"meta-type": "array"
},
{
- "name": "311",
+ "name": "313",
"members": [
{
"name": "host",
@@ -21324,7 +21395,7 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
},
{
"name": "connection-id",
@@ -21346,7 +21417,7 @@
"meta-type": "object"
},
{
- "name": "312",
+ "name": "314",
"members": [
{
"name": "host",
@@ -21358,13 +21429,13 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
}
],
"meta-type": "object"
},
{
- "name": "313",
+ "name": "315",
"members": [
{
"name": "host",
@@ -21376,7 +21447,7 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
},
{
"name": "auth",
@@ -21387,7 +21458,7 @@
"meta-type": "object"
},
{
- "name": "314",
+ "name": "316",
"meta-type": "enum",
"values": [
"ipv4",
@@ -21398,12 +21469,12 @@
]
},
{
- "name": "[315]",
- "element-type": "315",
+ "name": "[317]",
+ "element-type": "317",
"meta-type": "array"
},
{
- "name": "315",
+ "name": "317",
"members": [
{
"name": "host",
@@ -21415,7 +21486,7 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
},
{
"name": "websocket",
@@ -21435,12 +21506,12 @@
"meta-type": "object"
},
{
- "name": "[316]",
- "element-type": "316",
+ "name": "[318]",
+ "element-type": "318",
"meta-type": "array"
},
{
- "name": "316",
+ "name": "318",
"members": [
{
"name": "host",
@@ -21452,7 +21523,7 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
},
{
"name": "websocket",
@@ -21460,18 +21531,18 @@
},
{
"name": "auth",
- "type": "317"
+ "type": "319"
},
{
"name": "vencrypt",
"default": null,
- "type": "318"
+ "type": "320"
}
],
"meta-type": "object"
},
{
- "name": "317",
+ "name": "319",
"meta-type": "enum",
"values": [
"none",
@@ -21486,7 +21557,7 @@
]
},
{
- "name": "318",
+ "name": "320",
"meta-type": "enum",
"values": [
"plain",
@@ -21501,7 +21572,7 @@
]
},
{
- "name": "319",
+ "name": "321",
"members": [
{
"name": "host",
@@ -21513,7 +21584,7 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
},
{
"name": "websocket",
@@ -21528,7 +21599,7 @@
"meta-type": "object"
},
{
- "name": "320",
+ "name": "322",
"members": [
{
"name": "host",
@@ -21540,7 +21611,7 @@
},
{
"name": "family",
- "type": "314"
+ "type": "316"
},
{
"name": "websocket",
@@ -21550,67 +21621,67 @@
"meta-type": "object"
},
{
- "name": "[321]",
- "element-type": "321",
+ "name": "[323]",
+ "element-type": "323",
"meta-type": "array"
},
{
- "name": "321",
+ "name": "323",
"tag": "type",
"variants": [
{
"case": "number",
- "type": "447"
+ "type": "450"
},
{
"case": "qcode",
- "type": "448"
+ "type": "451"
}
],
"members": [
{
"name": "type",
- "type": "446"
+ "type": "449"
}
],
"meta-type": "object"
},
{
- "name": "[322]",
- "element-type": "322",
+ "name": "[324]",
+ "element-type": "324",
"meta-type": "array"
},
{
- "name": "322",
+ "name": "324",
"tag": "type",
"variants": [
{
"case": "key",
- "type": "450"
+ "type": "453"
},
{
"case": "btn",
- "type": "451"
+ "type": "454"
},
{
"case": "rel",
- "type": "452"
+ "type": "455"
},
{
"case": "abs",
- "type": "452"
+ "type": "455"
}
],
"members": [
{
"name": "type",
- "type": "449"
+ "type": "452"
}
],
"meta-type": "object"
},
{
- "name": "323",
+ "name": "325",
"meta-type": "enum",
"values": [
"default",
@@ -21624,7 +21695,7 @@
]
},
{
- "name": "324",
+ "name": "326",
"meta-type": "enum",
"values": [
"off",
@@ -21634,7 +21705,7 @@
]
},
{
- "name": "325",
+ "name": "327",
"members": [
{
"name": "grab-on-hover",
@@ -21650,7 +21721,7 @@
"meta-type": "object"
},
{
- "name": "326",
+ "name": "328",
"members": [
{
"name": "charset",
@@ -21661,7 +21732,7 @@
"meta-type": "object"
},
{
- "name": "327",
+ "name": "329",
"members": [
{
"name": "rendernode",
@@ -21672,7 +21743,7 @@
"meta-type": "object"
},
{
- "name": "328",
+ "name": "330",
"meta-type": "enum",
"values": [
"none",
@@ -21692,7 +21763,7 @@
]
},
{
- "name": "329",
+ "name": "331",
"members": [
{
"name": "transferred",
@@ -21754,7 +21825,7 @@
"meta-type": "object"
},
{
- "name": "330",
+ "name": "332",
"members": [
{
"name": "cache-size",
@@ -21788,7 +21859,7 @@
"meta-type": "object"
},
{
- "name": "331",
+ "name": "333",
"members": [
{
"name": "pages",
@@ -21814,41 +21885,41 @@
"meta-type": "object"
},
{
- "name": "[332]",
- "element-type": "332",
+ "name": "[334]",
+ "element-type": "334",
"meta-type": "array"
},
{
- "name": "332",
+ "name": "334",
"tag": "type",
"variants": [
{
"case": "inet",
- "type": "406"
+ "type": "409"
},
{
"case": "unix",
- "type": "454"
+ "type": "457"
},
{
"case": "vsock",
- "type": "455"
+ "type": "458"
},
{
"case": "fd",
- "type": "442"
+ "type": "445"
}
],
"members": [
{
"name": "type",
- "type": "453"
+ "type": "456"
}
],
"meta-type": "object"
},
{
- "name": "333",
+ "name": "335",
"meta-type": "enum",
"values": [
"xbzrle",
@@ -21872,7 +21943,7 @@
]
},
{
- "name": "334",
+ "name": "336",
"meta-type": "enum",
"values": [
"none",
@@ -21880,12 +21951,12 @@
]
},
{
- "name": "[335]",
- "element-type": "335",
+ "name": "[337]",
+ "element-type": "337",
"meta-type": "array"
},
{
- "name": "335",
+ "name": "337",
"members": [
{
"name": "node-name",
@@ -21897,13 +21968,13 @@
},
{
"name": "bitmaps",
- "type": "[456]"
+ "type": "[459]"
}
],
"meta-type": "object"
},
{
- "name": "336",
+ "name": "338",
"meta-type": "enum",
"values": [
"none",
@@ -21912,7 +21983,7 @@
]
},
{
- "name": "337",
+ "name": "339",
"meta-type": "enum",
"values": [
"none",
@@ -21927,84 +21998,93 @@
"meta-type": "builtin"
},
{
- "name": "[338]",
- "element-type": "338",
+ "name": "340",
+ "meta-type": "enum",
+ "values": [
+ "unstarted",
+ "measuring",
+ "measured"
+ ]
+ },
+ {
+ "name": "[341]",
+ "element-type": "341",
"meta-type": "array"
},
{
- "name": "338",
+ "name": "341",
"tag": "type",
"variants": [
{
"case": "abort",
- "type": "458"
+ "type": "461"
},
{
"case": "block-dirty-bitmap-add",
- "type": "459"
+ "type": "462"
},
{
"case": "block-dirty-bitmap-remove",
- "type": "460"
+ "type": "463"
},
{
"case": "block-dirty-bitmap-clear",
- "type": "460"
+ "type": "463"
},
{
"case": "block-dirty-bitmap-enable",
- "type": "460"
+ "type": "463"
},
{
"case": "block-dirty-bitmap-disable",
- "type": "460"
+ "type": "463"
},
{
"case": "block-dirty-bitmap-merge",
- "type": "461"
+ "type": "464"
},
{
"case": "blockdev-backup",
- "type": "462"
+ "type": "465"
},
{
"case": "blockdev-snapshot",
- "type": "463"
+ "type": "466"
},
{
"case": "blockdev-snapshot-internal-sync",
- "type": "464"
+ "type": "467"
},
{
"case": "blockdev-snapshot-sync",
- "type": "465"
+ "type": "468"
},
{
"case": "drive-backup",
- "type": "466"
+ "type": "469"
}
],
"members": [
{
"name": "type",
- "type": "457"
+ "type": "460"
}
],
"meta-type": "object"
},
{
- "name": "339",
+ "name": "342",
"members": [
{
"name": "completion-mode",
"default": null,
- "type": "467"
+ "type": "470"
}
],
"meta-type": "object"
},
{
- "name": "340",
+ "name": "343",
"meta-type": "enum",
"values": [
"unavailable",
@@ -22013,19 +22093,19 @@
]
},
{
- "name": "[341]",
- "element-type": "341",
+ "name": "[344]",
+ "element-type": "344",
"meta-type": "array"
},
{
- "name": "341",
+ "name": "344",
"meta-type": "enum",
"values": [
"oob"
]
},
{
- "name": "342",
+ "name": "345",
"members": [
{
"name": "major",
@@ -22043,7 +22123,7 @@
"meta-type": "object"
},
{
- "name": "343",
+ "name": "346",
"meta-type": "enum",
"values": [
"builtin",
@@ -22056,17 +22136,17 @@
]
},
{
- "name": "344",
+ "name": "347",
"members": [
{
"name": "json-type",
- "type": "468"
+ "type": "471"
}
],
"meta-type": "object"
},
{
- "name": "345",
+ "name": "348",
"members": [
{
"name": "values",
@@ -22076,7 +22156,7 @@
"meta-type": "object"
},
{
- "name": "346",
+ "name": "349",
"members": [
{
"name": "element-type",
@@ -22086,11 +22166,11 @@
"meta-type": "object"
},
{
- "name": "347",
+ "name": "350",
"members": [
{
"name": "members",
- "type": "[469]"
+ "type": "[472]"
},
{
"name": "tag",
@@ -22100,23 +22180,23 @@
{
"name": "variants",
"default": null,
- "type": "[470]"
+ "type": "[473]"
}
],
"meta-type": "object"
},
{
- "name": "348",
+ "name": "351",
"members": [
{
"name": "members",
- "type": "[471]"
+ "type": "[474]"
}
],
"meta-type": "object"
},
{
- "name": "349",
+ "name": "352",
"members": [
{
"name": "arg-type",
@@ -22135,7 +22215,7 @@
"meta-type": "object"
},
{
- "name": "350",
+ "name": "353",
"members": [
{
"name": "arg-type",
@@ -22145,7 +22225,7 @@
"meta-type": "object"
},
{
- "name": "351",
+ "name": "354",
"members": [
{
"name": "node-id",
@@ -22176,7 +22256,7 @@
"meta-type": "object"
},
{
- "name": "352",
+ "name": "355",
"meta-type": "enum",
"values": [
"x86",
@@ -22190,7 +22270,7 @@
]
},
{
- "name": "353",
+ "name": "356",
"members": [
{
"name": "pc",
@@ -22200,7 +22280,7 @@
"meta-type": "object"
},
{
- "name": "354",
+ "name": "357",
"members": [
{
"name": "pc",
@@ -22214,7 +22294,7 @@
"meta-type": "object"
},
{
- "name": "355",
+ "name": "358",
"members": [
{
"name": "nip",
@@ -22224,7 +22304,7 @@
"meta-type": "object"
},
{
- "name": "356",
+ "name": "359",
"members": [
{
"name": "PC",
@@ -22234,7 +22314,7 @@
"meta-type": "object"
},
{
- "name": "357",
+ "name": "360",
"members": [
{
"name": "PC",
@@ -22244,17 +22324,17 @@
"meta-type": "object"
},
{
- "name": "358",
+ "name": "361",
"members": [
{
"name": "cpu-state",
- "type": "472"
+ "type": "475"
}
],
"meta-type": "object"
},
{
- "name": "359",
+ "name": "362",
"members": [
{
"name": "pc",
@@ -22264,7 +22344,7 @@
"meta-type": "object"
},
{
- "name": "360",
+ "name": "363",
"meta-type": "enum",
"values": [
"aarch64",
@@ -22303,7 +22383,7 @@
]
},
{
- "name": "361",
+ "name": "364",
"meta-type": "enum",
"values": [
"default",
@@ -22313,7 +22393,7 @@
]
},
{
- "name": "362",
+ "name": "365",
"meta-type": "enum",
"values": [
"node",
@@ -22324,7 +22404,7 @@
]
},
{
- "name": "363",
+ "name": "366",
"members": [
{
"name": "nodeid",
@@ -22355,7 +22435,7 @@
"meta-type": "object"
},
{
- "name": "364",
+ "name": "367",
"members": [
{
"name": "src",
@@ -22373,7 +22453,7 @@
"meta-type": "object"
},
{
- "name": "365",
+ "name": "368",
"members": [
{
"name": "node-id",
@@ -22404,7 +22484,7 @@
"meta-type": "object"
},
{
- "name": "366",
+ "name": "369",
"members": [
{
"name": "initiator",
@@ -22416,11 +22496,11 @@
},
{
"name": "hierarchy",
- "type": "473"
+ "type": "476"
},
{
"name": "data-type",
- "type": "474"
+ "type": "477"
},
{
"name": "latency",
@@ -22436,7 +22516,7 @@
"meta-type": "object"
},
{
- "name": "367",
+ "name": "370",
"members": [
{
"name": "node-id",
@@ -22452,11 +22532,11 @@
},
{
"name": "associativity",
- "type": "475"
+ "type": "478"
},
{
"name": "policy",
- "type": "476"
+ "type": "479"
},
{
"name": "line",
@@ -22466,7 +22546,7 @@
"meta-type": "object"
},
{
- "name": "368",
+ "name": "371",
"members": [
{
"name": "name",
@@ -22481,7 +22561,7 @@
"meta-type": "object"
},
{
- "name": "369",
+ "name": "372",
"meta-type": "enum",
"values": [
"incompatible",
@@ -22491,7 +22571,7 @@
]
},
{
- "name": "370",
+ "name": "373",
"meta-type": "enum",
"values": [
"static",
@@ -22499,12 +22579,12 @@
]
},
{
- "name": "[371]",
- "element-type": "371",
+ "name": "[374]",
+ "element-type": "374",
"meta-type": "array"
},
{
- "name": "371",
+ "name": "374",
"members": [
{
"name": "bus",
@@ -22520,11 +22600,11 @@
},
{
"name": "class_info",
- "type": "477"
+ "type": "480"
},
{
"name": "id",
- "type": "478"
+ "type": "481"
},
{
"name": "irq",
@@ -22542,22 +22622,22 @@
{
"name": "pci_bridge",
"default": null,
- "type": "479"
+ "type": "482"
},
{
"name": "regions",
- "type": "[480]"
+ "type": "[483]"
}
],
"meta-type": "object"
},
{
- "name": "[372]",
- "element-type": "372",
+ "name": "[375]",
+ "element-type": "375",
"meta-type": "array"
},
{
- "name": "372",
+ "name": "375",
"members": [
{
"name": "fd",
@@ -22572,12 +22652,12 @@
"meta-type": "object"
},
{
- "name": "[373]",
- "element-type": "373",
+ "name": "[376]",
+ "element-type": "376",
"meta-type": "array"
},
{
- "name": "373",
+ "name": "376",
"members": [
{
"name": "name",
@@ -22585,7 +22665,7 @@
},
{
"name": "type",
- "type": "481"
+ "type": "484"
},
{
"name": "help",
@@ -22601,7 +22681,7 @@
"meta-type": "object"
},
{
- "name": "374",
+ "name": "377",
"meta-type": "enum",
"values": [
"dimm",
@@ -22611,37 +22691,37 @@
]
},
{
- "name": "375",
+ "name": "378",
"members": [
{
"name": "data",
- "type": "482"
+ "type": "485"
}
],
"meta-type": "object"
},
{
- "name": "376",
+ "name": "379",
"members": [
{
"name": "data",
- "type": "483"
+ "type": "486"
}
],
"meta-type": "object"
},
{
- "name": "377",
+ "name": "380",
"members": [
{
"name": "data",
- "type": "484"
+ "type": "487"
}
],
"meta-type": "object"
},
{
- "name": "378",
+ "name": "381",
"meta-type": "enum",
"values": [
"DIMM",
@@ -22649,7 +22729,7 @@
]
},
{
- "name": "379",
+ "name": "382",
"meta-type": "enum",
"values": [
"uninit",
@@ -22661,7 +22741,7 @@
]
},
{
- "name": "380",
+ "name": "383",
"meta-type": "enum",
"values": [
"hyper-v",
@@ -22669,7 +22749,7 @@
]
},
{
- "name": "381",
+ "name": "384",
"members": [
{
"name": "arg1",
@@ -22695,7 +22775,7 @@
"meta-type": "object"
},
{
- "name": "382",
+ "name": "385",
"members": [
{
"name": "core",
@@ -22711,13 +22791,13 @@
},
{
"name": "reason",
- "type": "485"
+ "type": "488"
}
],
"meta-type": "object"
},
{
- "name": "383",
+ "name": "386",
"meta-type": "enum",
"values": [
"active",
@@ -22728,12 +22808,12 @@
]
},
{
- "name": "[384]",
- "element-type": "384",
+ "name": "[387]",
+ "element-type": "387",
"meta-type": "array"
},
{
- "name": "384",
+ "name": "387",
"members": [
{
"name": "interval_length",
@@ -22787,7 +22867,7 @@
"meta-type": "object"
},
{
- "name": "385",
+ "name": "388",
"members": [
{
"name": "boundaries",
@@ -22801,7 +22881,7 @@
"meta-type": "object"
},
{
- "name": "386",
+ "name": "389",
"members": [
{
"name": "discard-nb-ok",
@@ -22824,32 +22904,32 @@
"meta-type": "array"
},
{
- "name": "387",
+ "name": "390",
"tag": "type",
"variants": [
{
"case": "qcow2",
- "type": "487"
+ "type": "490"
},
{
"case": "vmdk",
- "type": "488"
+ "type": "491"
},
{
"case": "luks",
- "type": "489"
+ "type": "492"
}
],
"members": [
{
"name": "type",
- "type": "486"
+ "type": "489"
}
],
"meta-type": "object"
},
{
- "name": "388",
+ "name": "391",
"meta-type": "enum",
"values": [
"block-backend",
@@ -22858,12 +22938,12 @@
]
},
{
- "name": "[389]",
- "element-type": "389",
+ "name": "[392]",
+ "element-type": "392",
"meta-type": "array"
},
{
- "name": "389",
+ "name": "392",
"meta-type": "enum",
"values": [
"consistent-read",
@@ -22874,7 +22954,7 @@
]
},
{
- "name": "390",
+ "name": "393",
"members": [
{
"type": "48"
@@ -22886,16 +22966,16 @@
"meta-type": "alternate"
},
{
- "name": "[391]",
- "element-type": "391",
+ "name": "[394]",
+ "element-type": "394",
"meta-type": "array"
},
{
- "name": "391",
+ "name": "394",
"members": [
{
"name": "event",
- "type": "490"
+ "type": "493"
},
{
"name": "state",
@@ -22905,7 +22985,7 @@
{
"name": "iotype",
"default": null,
- "type": "491"
+ "type": "494"
},
{
"name": "errno",
@@ -22931,16 +23011,16 @@
"meta-type": "object"
},
{
- "name": "[392]",
- "element-type": "392",
+ "name": "[395]",
+ "element-type": "395",
"meta-type": "array"
},
{
- "name": "392",
+ "name": "395",
"members": [
{
"name": "event",
- "type": "490"
+ "type": "493"
},
{
"name": "state",
@@ -22955,7 +23035,7 @@
"meta-type": "object"
},
{
- "name": "393",
+ "name": "396",
"meta-type": "enum",
"values": [
"auto",
@@ -22964,7 +23044,7 @@
]
},
{
- "name": "394",
+ "name": "397",
"meta-type": "enum",
"values": [
"threads",
@@ -22973,7 +23053,7 @@
]
},
{
- "name": "395",
+ "name": "398",
"meta-type": "enum",
"values": [
"tcp",
@@ -22981,7 +23061,7 @@
]
},
{
- "name": "396",
+ "name": "399",
"meta-type": "enum",
"values": [
"crc32c",
@@ -22991,11 +23071,11 @@
]
},
{
- "name": "397",
+ "name": "400",
"members": [
{
"name": "type",
- "type": "492"
+ "type": "495"
},
{
"name": "host",
@@ -23005,7 +23085,7 @@
"meta-type": "object"
},
{
- "name": "398",
+ "name": "401",
"members": [
{
"type": "48"
@@ -23020,62 +23100,62 @@
"meta-type": "alternate"
},
{
- "name": "399",
+ "name": "402",
"members": [
{
- "type": "493"
+ "type": "496"
},
{
- "type": "494"
+ "type": "497"
}
],
"meta-type": "alternate"
},
{
- "name": "400",
+ "name": "403",
"tag": "format",
"variants": [
{
"case": "aes",
- "type": "496"
+ "type": "499"
},
{
"case": "luks",
- "type": "497"
+ "type": "500"
}
],
"members": [
{
"name": "format",
- "type": "495"
+ "type": "498"
}
],
"meta-type": "object"
},
{
- "name": "401",
+ "name": "404",
"tag": "format",
"variants": [
{
"case": "aes",
- "type": "496"
+ "type": "499"
}
],
"members": [
{
"name": "format",
- "type": "498"
+ "type": "501"
}
],
"meta-type": "object"
},
{
- "name": "[390]",
- "element-type": "390",
+ "name": "[393]",
+ "element-type": "393",
"meta-type": "array"
},
{
- "name": "402",
+ "name": "405",
"meta-type": "enum",
"values": [
"quorum",
@@ -23083,12 +23163,12 @@
]
},
{
- "name": "[403]",
- "element-type": "403",
+ "name": "[406]",
+ "element-type": "406",
"meta-type": "array"
},
{
- "name": "403",
+ "name": "406",
"meta-type": "enum",
"values": [
"cephx",
@@ -23096,12 +23176,12 @@
]
},
{
- "name": "[404]",
- "element-type": "404",
+ "name": "[407]",
+ "element-type": "407",
"meta-type": "array"
},
{
- "name": "404",
+ "name": "407",
"members": [
{
"name": "host",
@@ -23115,7 +23195,7 @@
"meta-type": "object"
},
{
- "name": "405",
+ "name": "408",
"meta-type": "enum",
"values": [
"primary",
@@ -23123,7 +23203,7 @@
]
},
{
- "name": "406",
+ "name": "409",
"members": [
{
"name": "host",
@@ -23162,12 +23242,12 @@
"meta-type": "object"
},
{
- "name": "407",
+ "name": "410",
"tag": "mode",
"variants": [
{
"case": "hash",
- "type": "500"
+ "type": "503"
},
{
"case": "none",
@@ -23181,13 +23261,13 @@
"members": [
{
"name": "mode",
- "type": "499"
+ "type": "502"
}
],
"meta-type": "object"
},
{
- "name": "408",
+ "name": "411",
"members": [
{
"name": "filename",
@@ -23200,7 +23280,7 @@
{
"name": "preallocation",
"default": null,
- "type": "501"
+ "type": "504"
},
{
"name": "nocow",
@@ -23216,11 +23296,11 @@
"meta-type": "object"
},
{
- "name": "409",
+ "name": "412",
"members": [
{
"name": "location",
- "type": "258"
+ "type": "260"
},
{
"name": "size",
@@ -23229,13 +23309,13 @@
{
"name": "preallocation",
"default": null,
- "type": "501"
+ "type": "504"
}
],
"meta-type": "object"
},
{
- "name": "410",
+ "name": "413",
"members": [
{
"name": "key-secret",
@@ -23245,27 +23325,27 @@
{
"name": "cipher-alg",
"default": null,
- "type": "502"
+ "type": "505"
},
{
"name": "cipher-mode",
"default": null,
- "type": "503"
+ "type": "506"
},
{
"name": "ivgen-alg",
"default": null,
- "type": "504"
+ "type": "507"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "505"
+ "type": "508"
},
{
"name": "hash-alg",
"default": null,
- "type": "505"
+ "type": "508"
},
{
"name": "iter-time",
@@ -23274,7 +23354,7 @@
},
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23283,17 +23363,17 @@
{
"name": "preallocation",
"default": null,
- "type": "501"
+ "type": "504"
}
],
"meta-type": "object"
},
{
- "name": "411",
+ "name": "414",
"members": [
{
"name": "location",
- "type": "264"
+ "type": "266"
},
{
"name": "size",
@@ -23303,11 +23383,11 @@
"meta-type": "object"
},
{
- "name": "412",
+ "name": "415",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23322,11 +23402,11 @@
"meta-type": "object"
},
{
- "name": "413",
+ "name": "416",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23340,28 +23420,33 @@
{
"name": "encrypt",
"default": null,
- "type": "506"
+ "type": "509"
}
],
"meta-type": "object"
},
{
- "name": "414",
+ "name": "417",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "data-file",
"default": null,
- "type": "390"
+ "type": "393"
},
{
"name": "data-file-raw",
"default": null,
"type": "bool"
},
+ {
+ "name": "extended-l2",
+ "default": null,
+ "type": "bool"
+ },
{
"name": "size",
"type": "int"
@@ -23369,7 +23454,7 @@
{
"name": "version",
"default": null,
- "type": "507"
+ "type": "510"
},
{
"name": "backing-file",
@@ -23379,12 +23464,12 @@
{
"name": "backing-fmt",
"default": null,
- "type": "247"
+ "type": "249"
},
{
"name": "encrypt",
"default": null,
- "type": "506"
+ "type": "509"
},
{
"name": "cluster-size",
@@ -23394,7 +23479,7 @@
{
"name": "preallocation",
"default": null,
- "type": "501"
+ "type": "504"
},
{
"name": "lazy-refcounts",
@@ -23409,17 +23494,17 @@
{
"name": "compression-type",
"default": null,
- "type": "508"
+ "type": "511"
}
],
"meta-type": "object"
},
{
- "name": "415",
+ "name": "418",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23433,7 +23518,7 @@
{
"name": "backing-fmt",
"default": null,
- "type": "247"
+ "type": "249"
},
{
"name": "cluster-size",
@@ -23449,11 +23534,11 @@
"meta-type": "object"
},
{
- "name": "416",
+ "name": "419",
"members": [
{
"name": "location",
- "type": "272"
+ "type": "274"
},
{
"name": "size",
@@ -23468,11 +23553,11 @@
"meta-type": "object"
},
{
- "name": "417",
+ "name": "420",
"members": [
{
"name": "location",
- "type": "274"
+ "type": "276"
},
{
"name": "size",
@@ -23486,12 +23571,12 @@
{
"name": "preallocation",
"default": null,
- "type": "501"
+ "type": "504"
},
{
"name": "redundancy",
"default": null,
- "type": "509"
+ "type": "512"
},
{
"name": "object-size",
@@ -23502,11 +23587,11 @@
"meta-type": "object"
},
{
- "name": "418",
+ "name": "421",
"members": [
{
"name": "location",
- "type": "275"
+ "type": "277"
},
{
"name": "size",
@@ -23516,11 +23601,11 @@
"meta-type": "object"
},
{
- "name": "419",
+ "name": "422",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23529,17 +23614,17 @@
{
"name": "preallocation",
"default": null,
- "type": "501"
+ "type": "504"
}
],
"meta-type": "object"
},
{
- "name": "420",
+ "name": "423",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23558,7 +23643,7 @@
{
"name": "subformat",
"default": null,
- "type": "510"
+ "type": "513"
},
{
"name": "block-state-zero",
@@ -23569,11 +23654,11 @@
"meta-type": "object"
},
{
- "name": "421",
+ "name": "424",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23582,12 +23667,12 @@
{
"name": "extents",
"default": null,
- "type": "[390]"
+ "type": "[393]"
},
{
"name": "subformat",
"default": null,
- "type": "511"
+ "type": "514"
},
{
"name": "backing-file",
@@ -23597,7 +23682,7 @@
{
"name": "adapter-type",
"default": null,
- "type": "512"
+ "type": "515"
},
{
"name": "hwversion",
@@ -23613,11 +23698,11 @@
"meta-type": "object"
},
{
- "name": "422",
+ "name": "425",
"members": [
{
"name": "file",
- "type": "390"
+ "type": "393"
},
{
"name": "size",
@@ -23626,7 +23711,7 @@
{
"name": "subformat",
"default": null,
- "type": "513"
+ "type": "516"
},
{
"name": "force-size",
@@ -23637,11 +23722,11 @@
"meta-type": "object"
},
{
- "name": "423",
+ "name": "426",
"members": [
{
"name": "state",
- "type": "514"
+ "type": "517"
},
{
"name": "new-secret",
@@ -23672,12 +23757,12 @@
"meta-type": "object"
},
{
- "name": "424",
+ "name": "427",
"members": [
{
"name": "encrypt",
"default": null,
- "type": "515"
+ "type": "518"
}
],
"meta-type": "object"
@@ -23688,7 +23773,7 @@
"meta-type": "builtin"
},
{
- "name": "425",
+ "name": "428",
"meta-type": "enum",
"values": [
"inet",
@@ -23698,47 +23783,47 @@
]
},
{
- "name": "426",
+ "name": "429",
"members": [
{
"name": "data",
- "type": "406"
+ "type": "409"
}
],
"meta-type": "object"
},
{
- "name": "427",
+ "name": "430",
"members": [
{
"name": "data",
- "type": "454"
+ "type": "457"
}
],
"meta-type": "object"
},
{
- "name": "428",
+ "name": "431",
"members": [
{
"name": "data",
- "type": "455"
+ "type": "458"
}
],
"meta-type": "object"
},
{
- "name": "429",
+ "name": "432",
"members": [
{
"name": "data",
- "type": "442"
+ "type": "445"
}
],
"meta-type": "object"
},
{
- "name": "430",
+ "name": "433",
"meta-type": "enum",
"values": [
"file",
@@ -23764,122 +23849,122 @@
]
},
{
- "name": "431",
+ "name": "434",
"members": [
{
"name": "data",
- "type": "516"
+ "type": "519"
}
],
"meta-type": "object"
},
{
- "name": "432",
+ "name": "435",
"members": [
{
"name": "data",
- "type": "517"
+ "type": "520"
}
],
"meta-type": "object"
},
{
- "name": "433",
+ "name": "436",
"members": [
{
"name": "data",
- "type": "518"
+ "type": "521"
}
],
"meta-type": "object"
},
{
- "name": "434",
+ "name": "437",
"members": [
{
"name": "data",
- "type": "519"
+ "type": "522"
}
],
"meta-type": "object"
},
{
- "name": "435",
+ "name": "438",
"members": [
{
"name": "data",
- "type": "520"
+ "type": "523"
}
],
"meta-type": "object"
},
{
- "name": "436",
+ "name": "439",
"members": [
{
"name": "data",
- "type": "521"
+ "type": "524"
}
],
"meta-type": "object"
},
{
- "name": "437",
+ "name": "440",
"members": [
{
"name": "data",
- "type": "522"
+ "type": "525"
}
],
"meta-type": "object"
},
{
- "name": "438",
+ "name": "441",
"members": [
{
"name": "data",
- "type": "523"
+ "type": "526"
}
],
"meta-type": "object"
},
{
- "name": "439",
+ "name": "442",
"members": [
{
"name": "data",
- "type": "524"
+ "type": "527"
}
],
"meta-type": "object"
},
{
- "name": "440",
+ "name": "443",
"members": [
{
"name": "data",
- "type": "525"
+ "type": "528"
}
],
"meta-type": "object"
},
{
- "name": "441",
+ "name": "444",
"members": [
{
"name": "data",
- "type": "526"
+ "type": "529"
}
],
"meta-type": "object"
},
{
- "name": "[442]",
- "element-type": "442",
+ "name": "[445]",
+ "element-type": "445",
"meta-type": "array"
},
{
- "name": "442",
+ "name": "445",
"members": [
{
"name": "str",
@@ -23889,7 +23974,7 @@
"meta-type": "object"
},
{
- "name": "443",
+ "name": "446",
"meta-type": "enum",
"values": [
"passthrough",
@@ -23897,27 +23982,27 @@
]
},
{
- "name": "444",
+ "name": "447",
"members": [
{
"name": "data",
- "type": "527"
+ "type": "530"
}
],
"meta-type": "object"
},
{
- "name": "445",
+ "name": "448",
"members": [
{
"name": "data",
- "type": "528"
+ "type": "531"
}
],
"meta-type": "object"
},
{
- "name": "446",
+ "name": "449",
"meta-type": "enum",
"values": [
"number",
@@ -23925,7 +24010,7 @@
]
},
{
- "name": "447",
+ "name": "450",
"members": [
{
"name": "data",
@@ -23935,17 +24020,17 @@
"meta-type": "object"
},
{
- "name": "448",
+ "name": "451",
"members": [
{
"name": "data",
- "type": "529"
+ "type": "532"
}
],
"meta-type": "object"
},
{
- "name": "449",
+ "name": "452",
"meta-type": "enum",
"values": [
"key",
@@ -23955,37 +24040,37 @@
]
},
{
- "name": "450",
+ "name": "453",
"members": [
{
"name": "data",
- "type": "530"
+ "type": "533"
}
],
"meta-type": "object"
},
{
- "name": "451",
+ "name": "454",
"members": [
{
"name": "data",
- "type": "531"
+ "type": "534"
}
],
"meta-type": "object"
},
{
- "name": "452",
+ "name": "455",
"members": [
{
"name": "data",
- "type": "532"
+ "type": "535"
}
],
"meta-type": "object"
},
{
- "name": "453",
+ "name": "456",
"meta-type": "enum",
"values": [
"inet",
@@ -23995,7 +24080,7 @@
]
},
{
- "name": "454",
+ "name": "457",
"members": [
{
"name": "path",
@@ -24015,7 +24100,7 @@
"meta-type": "object"
},
{
- "name": "455",
+ "name": "458",
"members": [
{
"name": "cid",
@@ -24029,12 +24114,12 @@
"meta-type": "object"
},
{
- "name": "[456]",
- "element-type": "456",
+ "name": "[459]",
+ "element-type": "459",
"meta-type": "array"
},
{
- "name": "456",
+ "name": "459",
"members": [
{
"name": "name",
@@ -24048,7 +24133,7 @@
"meta-type": "object"
},
{
- "name": "457",
+ "name": "460",
"meta-type": "enum",
"values": [
"abort",
@@ -24066,17 +24151,17 @@
]
},
{
- "name": "458",
+ "name": "461",
"members": [
{
"name": "data",
- "type": "533"
+ "type": "536"
}
],
"meta-type": "object"
},
{
- "name": "459",
+ "name": "462",
"members": [
{
"name": "data",
@@ -24086,7 +24171,7 @@
"meta-type": "object"
},
{
- "name": "460",
+ "name": "463",
"members": [
{
"name": "data",
@@ -24096,7 +24181,7 @@
"meta-type": "object"
},
{
- "name": "461",
+ "name": "464",
"members": [
{
"name": "data",
@@ -24106,7 +24191,7 @@
"meta-type": "object"
},
{
- "name": "462",
+ "name": "465",
"members": [
{
"name": "data",
@@ -24116,7 +24201,7 @@
"meta-type": "object"
},
{
- "name": "463",
+ "name": "466",
"members": [
{
"name": "data",
@@ -24126,7 +24211,7 @@
"meta-type": "object"
},
{
- "name": "464",
+ "name": "467",
"members": [
{
"name": "data",
@@ -24136,7 +24221,7 @@
"meta-type": "object"
},
{
- "name": "465",
+ "name": "468",
"members": [
{
"name": "data",
@@ -24146,7 +24231,7 @@
"meta-type": "object"
},
{
- "name": "466",
+ "name": "469",
"members": [
{
"name": "data",
@@ -24156,7 +24241,7 @@
"meta-type": "object"
},
{
- "name": "467",
+ "name": "470",
"meta-type": "enum",
"values": [
"individual",
@@ -24164,7 +24249,7 @@
]
},
{
- "name": "468",
+ "name": "471",
"meta-type": "enum",
"values": [
"string",
@@ -24178,12 +24263,12 @@
]
},
{
- "name": "[469]",
- "element-type": "469",
+ "name": "[472]",
+ "element-type": "472",
"meta-type": "array"
},
{
- "name": "469",
+ "name": "472",
"members": [
{
"name": "name",
@@ -24207,12 +24292,12 @@
"meta-type": "object"
},
{
- "name": "[470]",
- "element-type": "470",
+ "name": "[473]",
+ "element-type": "473",
"meta-type": "array"
},
{
- "name": "470",
+ "name": "473",
"members": [
{
"name": "case",
@@ -24226,12 +24311,12 @@
"meta-type": "object"
},
{
- "name": "[471]",
- "element-type": "471",
+ "name": "[474]",
+ "element-type": "474",
"meta-type": "array"
},
{
- "name": "471",
+ "name": "474",
"members": [
{
"name": "type",
@@ -24241,7 +24326,7 @@
"meta-type": "object"
},
{
- "name": "472",
+ "name": "475",
"meta-type": "enum",
"values": [
"uninitialized",
@@ -24252,7 +24337,7 @@
]
},
{
- "name": "473",
+ "name": "476",
"meta-type": "enum",
"values": [
"memory",
@@ -24262,7 +24347,7 @@
]
},
{
- "name": "474",
+ "name": "477",
"meta-type": "enum",
"values": [
"access-latency",
@@ -24274,7 +24359,7 @@
]
},
{
- "name": "475",
+ "name": "478",
"meta-type": "enum",
"values": [
"none",
@@ -24283,7 +24368,7 @@
]
},
{
- "name": "476",
+ "name": "479",
"meta-type": "enum",
"values": [
"none",
@@ -24292,7 +24377,7 @@
]
},
{
- "name": "477",
+ "name": "480",
"members": [
{
"name": "desc",
@@ -24307,7 +24392,7 @@
"meta-type": "object"
},
{
- "name": "478",
+ "name": "481",
"members": [
{
"name": "device",
@@ -24331,27 +24416,27 @@
"meta-type": "object"
},
{
- "name": "479",
+ "name": "482",
"members": [
{
"name": "bus",
- "type": "534"
+ "type": "537"
},
{
"name": "devices",
"default": null,
- "type": "[371]"
+ "type": "[374]"
}
],
"meta-type": "object"
},
{
- "name": "[480]",
- "element-type": "480",
+ "name": "[483]",
+ "element-type": "483",
"meta-type": "array"
},
{
- "name": "480",
+ "name": "483",
"members": [
{
"name": "bar",
@@ -24383,7 +24468,7 @@
"meta-type": "object"
},
{
- "name": "481",
+ "name": "484",
"meta-type": "enum",
"values": [
"string",
@@ -24393,7 +24478,7 @@
]
},
{
- "name": "482",
+ "name": "485",
"members": [
{
"name": "id",
@@ -24432,7 +24517,7 @@
"meta-type": "object"
},
{
- "name": "483",
+ "name": "486",
"members": [
{
"name": "id",
@@ -24455,7 +24540,7 @@
"meta-type": "object"
},
{
- "name": "484",
+ "name": "487",
"members": [
{
"name": "id",
@@ -24494,7 +24579,7 @@
"meta-type": "object"
},
{
- "name": "485",
+ "name": "488",
"meta-type": "enum",
"values": [
"unknown",
@@ -24505,7 +24590,7 @@
]
},
{
- "name": "486",
+ "name": "489",
"meta-type": "enum",
"values": [
"qcow2",
@@ -24514,37 +24599,37 @@
]
},
{
- "name": "487",
+ "name": "490",
"members": [
{
"name": "data",
- "type": "535"
+ "type": "538"
}
],
"meta-type": "object"
},
{
- "name": "488",
+ "name": "491",
"members": [
{
"name": "data",
- "type": "536"
+ "type": "539"
}
],
"meta-type": "object"
},
{
- "name": "489",
+ "name": "492",
"members": [
{
"name": "data",
- "type": "537"
+ "type": "540"
}
],
"meta-type": "object"
},
{
- "name": "490",
+ "name": "493",
"meta-type": "enum",
"values": [
"l1_update",
@@ -24598,7 +24683,7 @@
]
},
{
- "name": "491",
+ "name": "494",
"meta-type": "enum",
"values": [
"read",
@@ -24610,19 +24695,19 @@
]
},
{
- "name": "492",
+ "name": "495",
"meta-type": "enum",
"values": [
"inet"
]
},
{
- "name": "493",
+ "name": "496",
"members": [
{
"name": "template",
"default": null,
- "type": "494"
+ "type": "497"
},
{
"name": "main-header",
@@ -24673,7 +24758,7 @@
"meta-type": "object"
},
{
- "name": "494",
+ "name": "497",
"meta-type": "enum",
"values": [
"none",
@@ -24683,7 +24768,7 @@
]
},
{
- "name": "495",
+ "name": "498",
"meta-type": "enum",
"values": [
"aes",
@@ -24691,7 +24776,7 @@
]
},
{
- "name": "496",
+ "name": "499",
"members": [
{
"name": "key-secret",
@@ -24702,7 +24787,7 @@
"meta-type": "object"
},
{
- "name": "497",
+ "name": "500",
"members": [
{
"name": "key-secret",
@@ -24713,14 +24798,14 @@
"meta-type": "object"
},
{
- "name": "498",
+ "name": "501",
"meta-type": "enum",
"values": [
"aes"
]
},
{
- "name": "499",
+ "name": "502",
"meta-type": "enum",
"values": [
"none",
@@ -24729,11 +24814,11 @@
]
},
{
- "name": "500",
+ "name": "503",
"members": [
{
"name": "type",
- "type": "538"
+ "type": "541"
},
{
"name": "hash",
@@ -24743,7 +24828,7 @@
"meta-type": "object"
},
{
- "name": "501",
+ "name": "504",
"meta-type": "enum",
"values": [
"off",
@@ -24753,7 +24838,7 @@
]
},
{
- "name": "502",
+ "name": "505",
"meta-type": "enum",
"values": [
"aes-128",
@@ -24771,7 +24856,7 @@
]
},
{
- "name": "503",
+ "name": "506",
"meta-type": "enum",
"values": [
"ecb",
@@ -24781,7 +24866,7 @@
]
},
{
- "name": "504",
+ "name": "507",
"meta-type": "enum",
"values": [
"plain",
@@ -24790,7 +24875,7 @@
]
},
{
- "name": "505",
+ "name": "508",
"meta-type": "enum",
"values": [
"md5",
@@ -24803,28 +24888,28 @@
]
},
{
- "name": "506",
+ "name": "509",
"tag": "format",
"variants": [
{
"case": "qcow",
- "type": "496"
+ "type": "499"
},
{
"case": "luks",
- "type": "540"
+ "type": "543"
}
],
"members": [
{
"name": "format",
- "type": "539"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "507",
+ "name": "510",
"meta-type": "enum",
"values": [
"v2",
@@ -24832,35 +24917,35 @@
]
},
{
- "name": "508",
+ "name": "511",
"meta-type": "enum",
"values": [
"zlib"
]
},
{
- "name": "509",
+ "name": "512",
"tag": "type",
"variants": [
{
"case": "full",
- "type": "542"
+ "type": "545"
},
{
"case": "erasure-coded",
- "type": "543"
+ "type": "546"
}
],
"members": [
{
"name": "type",
- "type": "541"
+ "type": "544"
}
],
"meta-type": "object"
},
{
- "name": "510",
+ "name": "513",
"meta-type": "enum",
"values": [
"dynamic",
@@ -24868,7 +24953,7 @@
]
},
{
- "name": "511",
+ "name": "514",
"meta-type": "enum",
"values": [
"monolithicSparse",
@@ -24879,7 +24964,7 @@
]
},
{
- "name": "512",
+ "name": "515",
"meta-type": "enum",
"values": [
"ide",
@@ -24889,7 +24974,7 @@
]
},
{
- "name": "513",
+ "name": "516",
"meta-type": "enum",
"values": [
"dynamic",
@@ -24897,7 +24982,7 @@
]
},
{
- "name": "514",
+ "name": "517",
"meta-type": "enum",
"values": [
"active",
@@ -24905,12 +24990,12 @@
]
},
{
- "name": "515",
+ "name": "518",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "544"
+ "type": "547"
},
{
"case": "qcow",
@@ -24920,13 +25005,13 @@
"members": [
{
"name": "format",
- "type": "539"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "516",
+ "name": "519",
"members": [
{
"name": "logfile",
@@ -24956,7 +25041,7 @@
"meta-type": "object"
},
{
- "name": "517",
+ "name": "520",
"members": [
{
"name": "logfile",
@@ -24976,7 +25061,7 @@
"meta-type": "object"
},
{
- "name": "518",
+ "name": "521",
"members": [
{
"name": "logfile",
@@ -24990,7 +25075,7 @@
},
{
"name": "addr",
- "type": "284"
+ "type": "286"
},
{
"name": "tls-creds",
@@ -25041,7 +25126,7 @@
"meta-type": "object"
},
{
- "name": "519",
+ "name": "522",
"members": [
{
"name": "logfile",
@@ -25055,18 +25140,18 @@
},
{
"name": "remote",
- "type": "284"
+ "type": "286"
},
{
"name": "local",
"default": null,
- "type": "284"
+ "type": "286"
}
],
"meta-type": "object"
},
{
- "name": "520",
+ "name": "523",
"members": [
{
"name": "logfile",
@@ -25082,7 +25167,7 @@
"meta-type": "object"
},
{
- "name": "521",
+ "name": "524",
"members": [
{
"name": "logfile",
@@ -25102,7 +25187,7 @@
"meta-type": "object"
},
{
- "name": "522",
+ "name": "525",
"members": [
{
"name": "logfile",
@@ -25123,7 +25208,7 @@
"meta-type": "object"
},
{
- "name": "523",
+ "name": "526",
"members": [
{
"name": "logfile",
@@ -25143,7 +25228,7 @@
"meta-type": "object"
},
{
- "name": "524",
+ "name": "527",
"members": [
{
"name": "logfile",
@@ -25163,7 +25248,7 @@
"meta-type": "object"
},
{
- "name": "525",
+ "name": "528",
"members": [
{
"name": "logfile",
@@ -25199,7 +25284,7 @@
"meta-type": "object"
},
{
- "name": "526",
+ "name": "529",
"members": [
{
"name": "logfile",
@@ -25220,7 +25305,7 @@
"meta-type": "object"
},
{
- "name": "527",
+ "name": "530",
"members": [
{
"name": "path",
@@ -25236,7 +25321,7 @@
"meta-type": "object"
},
{
- "name": "528",
+ "name": "531",
"members": [
{
"name": "chardev",
@@ -25246,7 +25331,7 @@
"meta-type": "object"
},
{
- "name": "529",
+ "name": "532",
"meta-type": "enum",
"values": [
"unmapped",
@@ -25400,11 +25485,11 @@
]
},
{
- "name": "530",
+ "name": "533",
"members": [
{
"name": "key",
- "type": "321"
+ "type": "323"
},
{
"name": "down",
@@ -25414,11 +25499,11 @@
"meta-type": "object"
},
{
- "name": "531",
+ "name": "534",
"members": [
{
"name": "button",
- "type": "545"
+ "type": "548"
},
{
"name": "down",
@@ -25428,11 +25513,11 @@
"meta-type": "object"
},
{
- "name": "532",
+ "name": "535",
"members": [
{
"name": "axis",
- "type": "546"
+ "type": "549"
},
{
"name": "value",
@@ -25442,13 +25527,13 @@
"meta-type": "object"
},
{
- "name": "533",
+ "name": "536",
"members": [
],
"meta-type": "object"
},
{
- "name": "534",
+ "name": "537",
"members": [
{
"name": "number",
@@ -25464,21 +25549,21 @@
},
{
"name": "io_range",
- "type": "547"
+ "type": "550"
},
{
"name": "memory_range",
- "type": "547"
+ "type": "550"
},
{
"name": "prefetchable_range",
- "type": "547"
+ "type": "550"
}
],
"meta-type": "object"
},
{
- "name": "535",
+ "name": "538",
"members": [
{
"name": "compat",
@@ -25494,6 +25579,11 @@
"default": null,
"type": "bool"
},
+ {
+ "name": "extended-l2",
+ "default": null,
+ "type": "bool"
+ },
{
"name": "lazy-refcounts",
"default": null,
@@ -25511,22 +25601,22 @@
{
"name": "encrypt",
"default": null,
- "type": "548"
+ "type": "551"
},
{
"name": "bitmaps",
"default": null,
- "type": "[549]"
+ "type": "[552]"
},
{
"name": "compression-type",
- "type": "508"
+ "type": "511"
}
],
"meta-type": "object"
},
{
- "name": "536",
+ "name": "539",
"members": [
{
"name": "create-type",
@@ -25542,34 +25632,34 @@
},
{
"name": "extents",
- "type": "[241]"
+ "type": "[243]"
}
],
"meta-type": "object"
},
{
- "name": "537",
+ "name": "540",
"members": [
{
"name": "cipher-alg",
- "type": "502"
+ "type": "505"
},
{
"name": "cipher-mode",
- "type": "503"
+ "type": "506"
},
{
"name": "ivgen-alg",
- "type": "504"
+ "type": "507"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "505"
+ "type": "508"
},
{
"name": "hash-alg",
- "type": "505"
+ "type": "508"
},
{
"name": "payload-offset",
@@ -25585,13 +25675,13 @@
},
{
"name": "slots",
- "type": "[550]"
+ "type": "[553]"
}
],
"meta-type": "object"
},
{
- "name": "538",
+ "name": "541",
"meta-type": "enum",
"values": [
"md5",
@@ -25599,7 +25689,7 @@
]
},
{
- "name": "539",
+ "name": "542",
"meta-type": "enum",
"values": [
"qcow",
@@ -25607,7 +25697,7 @@
]
},
{
- "name": "540",
+ "name": "543",
"members": [
{
"name": "key-secret",
@@ -25617,27 +25707,27 @@
{
"name": "cipher-alg",
"default": null,
- "type": "502"
+ "type": "505"
},
{
"name": "cipher-mode",
"default": null,
- "type": "503"
+ "type": "506"
},
{
"name": "ivgen-alg",
"default": null,
- "type": "504"
+ "type": "507"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "505"
+ "type": "508"
},
{
"name": "hash-alg",
"default": null,
- "type": "505"
+ "type": "508"
},
{
"name": "iter-time",
@@ -25648,7 +25738,7 @@
"meta-type": "object"
},
{
- "name": "541",
+ "name": "544",
"meta-type": "enum",
"values": [
"full",
@@ -25656,7 +25746,7 @@
]
},
{
- "name": "542",
+ "name": "545",
"members": [
{
"name": "copies",
@@ -25666,7 +25756,7 @@
"meta-type": "object"
},
{
- "name": "543",
+ "name": "546",
"members": [
{
"name": "data-strips",
@@ -25680,11 +25770,11 @@
"meta-type": "object"
},
{
- "name": "544",
+ "name": "547",
"members": [
{
"name": "state",
- "type": "514"
+ "type": "517"
},
{
"name": "new-secret",
@@ -25715,7 +25805,7 @@
"meta-type": "object"
},
{
- "name": "545",
+ "name": "548",
"meta-type": "enum",
"values": [
"left",
@@ -25728,7 +25818,7 @@
]
},
{
- "name": "546",
+ "name": "549",
"meta-type": "enum",
"values": [
"x",
@@ -25736,7 +25826,7 @@
]
},
{
- "name": "547",
+ "name": "550",
"members": [
{
"name": "base",
@@ -25750,12 +25840,12 @@
"meta-type": "object"
},
{
- "name": "548",
+ "name": "551",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "537"
+ "type": "540"
},
{
"case": "aes",
@@ -25765,18 +25855,18 @@
"members": [
{
"name": "format",
- "type": "495"
+ "type": "498"
}
],
"meta-type": "object"
},
{
- "name": "[549]",
- "element-type": "549",
+ "name": "[552]",
+ "element-type": "552",
"meta-type": "array"
},
{
- "name": "549",
+ "name": "552",
"members": [
{
"name": "name",
@@ -25788,23 +25878,23 @@
},
{
"name": "flags",
- "type": "[551]"
+ "type": "[554]"
}
],
"meta-type": "object"
},
{
- "name": "[241]",
- "element-type": "241",
+ "name": "[243]",
+ "element-type": "243",
"meta-type": "array"
},
{
- "name": "[550]",
- "element-type": "550",
+ "name": "[553]",
+ "element-type": "553",
"meta-type": "array"
},
{
- "name": "550",
+ "name": "553",
"members": [
{
"name": "active",
@@ -25828,12 +25918,12 @@
"meta-type": "object"
},
{
- "name": "[551]",
- "element-type": "551",
+ "name": "[554]",
+ "element-type": "554",
"meta-type": "array"
},
{
- "name": "551",
+ "name": "554",
"meta-type": "enum",
"values": [
"in-use",
@@ -29482,6 +29572,14 @@
"deprecated": false,
"default-ram-id": "pc.ram"
},
+ {
+ "hotpluggable-cpus": false,
+ "name": "none",
+ "numa-mem-supported": false,
+ "cpu-max": 1,
+ "deprecated": false,
+ "default-ram-id": "ram"
+ },
{
"hotpluggable-cpus": true,
"name": "pc-1.1",
@@ -29491,14 +29589,6 @@
"deprecated": true,
"default-ram-id": "pc.ram"
},
- {
- "hotpluggable-cpus": false,
- "name": "none",
- "numa-mem-supported": false,
- "cpu-max": 1,
- "deprecated": false,
- "default-ram-id": "ram"
- },
{
"hotpluggable-cpus": true,
"name": "pc-i440fx-2.7",
--
2.26.2
2
1
Hello again,
Hyper-V version numbers are not compatible with the encoding used in virParseVersionString:
https://gitlab.com/libvirt/libvirt/-/blob/master/src/util/virutil.c#L246
For example, the Windows Server 2016 Hyper-V version is 10.0.14393.0, so its “micro” is over 14 times larger than the encoding allows.
My current workaround is to truncate it to something that works (E.G. 10.0.143), but that's clearly less than ideal.
Is the output of virParseVersionString stored on disk at any point? Would changing its output type from unsigned long to unsigned long long cause any compatibility issues? That would allow “minor” and “micro” to be up to 6 digits each and would be a quick, easy change.
Thanks,
Matt
4
6