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
- 19 participants
- 40173 discussions
Test pipeline: https://gitlab.com/abologna/libvirt/-/pipelines/1059558331
Should make it possible to build libvirt on macOS 14, where it
currently fails with
src/rpc/virnetprotocol.c:13:1: error: a function definition without
a prototype is deprecated in all versions of C and is not supported
in C2x [-Werror,-Wdeprecated-non-prototype] xdr_virNetMessageType(xdrs, objp)
Andrea Bolognani (2):
rpc: Drop support for portable-rpcgen
rpc: Make rpcgen produce ANSI C code
meson.build | 12 +-----------
src/rpc/genprotocol.pl | 5 ++---
2 files changed, 3 insertions(+), 14 deletions(-)
--
2.41.0
3
5
The 9.9.0 release of both libvirt and libvirt-python is tagged and
signed tarballs and source RPMs are available at
https://download.libvirt.org/
https://download.libvirt.org/python/
Thanks everybody who helped with this release by sending patches,
reviewing, testing, or providing feedback. Your work is greatly
appreciated.
* New features
* QEMU: implement reverting external snapshots
Reverting external snapshots is now possible using the existing API
``virDomainSnapshotRevert()``. Management application can check host
capabilities for ``<externalSnapshot/>`` element within the list of
guest features to see if the current libvirt supports both deleting
and reverting external snapshots.
* virsh: add ``console --resume`` support
The ``virsh console`` subcommand now accepts a ``--resume`` option. This
will resume a paused guest after connecting to the console.
* Improvements
* virsh: Improve ``virsh start --console`` behavior
The ``virsh start --console`` now tries to connect to the guest console
before starting the vCPUs.
* virsh: Improve ``virsh create --console`` behavior
The ``virsh create --console`` now tries to connect to the guest console
before starting the vCPUs.
Enjoy.
Jirka
4
4
On 02.11.23 14:31, Michael S. Tsirkin wrote:
> On Thu, Oct 05, 2023 at 12:29:22PM +0300, Vladimir Sementsov-Ogievskiy wrote:
>> Hi all!
>>
>> Main thing this series does is DEVICE_ON event - a counter-part to
>> DEVICE_DELETED. A guest-driven event that device is powered-on.
>> Details are in patch 2. The new event is paried with corresponding
>> command query-hotplug.
>
> Several things questionable here:
> 1. depending on guest activity you can get as many
> DEVICE_ON events as you like
No, I've made it so it may be sent only once per device
> 2. it's just for shpc and native pcie - things are
> confusing enough for management, we should make sure
> it can work for all devices
Agree, I'm thinking about it
> 3. what about non hotpluggable devices? do we want the event for them?
>
I think, yes, especially if we make async=true|false flag for device_add, so that successful device_add must be always followed by DEVICE_ON - like device_del is followed by DEVICE_DELETED.
Maybe, to generalize, it should be called not DEVICE_ON (which mostly relate to hotplug controller statuses) but DEVICE_ADDED - a full counterpart for DEVICE_DELETED.
>
> I feel this needs actual motivation so we can judge what's the
> right way to do it.
My first motivation for this series was the fact that successful device_add doesn't guarantee that hard disk successfully hotplugged to the guest. It relates to some problems with shpc/pcie hotplug we had in the past, and they are mostly fixed. But still, for management tool it's good to understand that all actions related to hotplug controller are done and we have "green light".
Recently new motivation come, as I described in my "ping" letter <6bd19a07-5224-464d-b54d-1d738f5ba8f7(a)yandex-team.ru>, that we have a performance degradation because of 7bed89958bfbf40df, which introduces drain_call_rcu() in device_add, to make it more synchronous. So, my suggestion is make it instead more asynchronous (probably with special flag) and rely on DEVICE_ON event.
>
>
>>
>> v8:
>> - improve naming, wording and style
>> - make new QMP interface experimental
>>
>>
>> Vladimir Sementsov-Ogievskiy (4):
>> qapi/qdev.json: unite DEVICE_* event data into single structure
>> qapi: add DEVICE_ON and query-hotplug infrastructure
>> shpc: implement DEVICE_ON event and query-hotplug
>> pcie: implement DEVICE_ON event and query-hotplug
>>
>> hw/core/hotplug.c | 12 +++
>> hw/pci-bridge/pci_bridge_dev.c | 14 +++
>> hw/pci-bridge/pcie_pci_bridge.c | 1 +
>> hw/pci/pcie.c | 83 +++++++++++++++
>> hw/pci/pcie_port.c | 1 +
>> hw/pci/shpc.c | 86 +++++++++++++++
>> include/hw/hotplug.h | 11 ++
>> include/hw/pci/pci_bridge.h | 2 +
>> include/hw/pci/pcie.h | 2 +
>> include/hw/pci/shpc.h | 2 +
>> include/hw/qdev-core.h | 7 ++
>> include/monitor/qdev.h | 6 ++
>> qapi/qdev.json | 178 +++++++++++++++++++++++++++++---
>> softmmu/qdev-monitor.c | 58 +++++++++++
>> 14 files changed, 451 insertions(+), 12 deletions(-)
>>
>> --
>> 2.34.1
>
--
Best regards,
Vladimir
2
4
[cc Peter, Nikolay and libvirt list]
On 02.11.23 11:06, Vladimir Sementsov-Ogievskiy wrote:
> Ping.
>
> And some addition. We have the case, when the commit
>
> commit 7bed89958bfbf40df9ca681cefbdca63abdde39d
> Author: Maxim Levitsky <mlevitsk(a)redhat.com>
> Date: Tue Oct 6 14:38:58 2020 +0200
>
> device_core: use drain_call_rcu in in qmp_device_add
> Soon, a device removal might only happen on RCU callback execution.
> This is okay for device-del which provides a DEVICE_DELETED event,
> but not for the failure case of device-add. To avoid changing
> monitor semantics, just drain all pending RCU callbacks on error.
>
> sensibly slows down vm initialization (several calls to device_add of pc-dimm).
>
> And looking at commit message, I see that what I do in the series is exactly a suggestion to change monitor semantics.
>
> What do you think?
>
> Maybe we need a boolean "async" parameter for device_add, which will turn off drain_call_rcu() call and rely on user to handle DEVICE_ON?
>
> On 05.10.23 12:29, Vladimir Sementsov-Ogievskiy wrote:
>> Hi all!
>>
>> Main thing this series does is DEVICE_ON event - a counter-part to
>> DEVICE_DELETED. A guest-driven event that device is powered-on.
>> Details are in patch 2. The new event is paried with corresponding
>> command query-hotplug.
>>
>>
>> v8:
>> - improve naming, wording and style
>> - make new QMP interface experimental
>>
>>
>> Vladimir Sementsov-Ogievskiy (4):
>> qapi/qdev.json: unite DEVICE_* event data into single structure
>> qapi: add DEVICE_ON and query-hotplug infrastructure
>> shpc: implement DEVICE_ON event and query-hotplug
>> pcie: implement DEVICE_ON event and query-hotplug
>>
>> hw/core/hotplug.c | 12 +++
>> hw/pci-bridge/pci_bridge_dev.c | 14 +++
>> hw/pci-bridge/pcie_pci_bridge.c | 1 +
>> hw/pci/pcie.c | 83 +++++++++++++++
>> hw/pci/pcie_port.c | 1 +
>> hw/pci/shpc.c | 86 +++++++++++++++
>> include/hw/hotplug.h | 11 ++
>> include/hw/pci/pci_bridge.h | 2 +
>> include/hw/pci/pcie.h | 2 +
>> include/hw/pci/shpc.h | 2 +
>> include/hw/qdev-core.h | 7 ++
>> include/monitor/qdev.h | 6 ++
>> qapi/qdev.json | 178 +++++++++++++++++++++++++++++---
>> softmmu/qdev-monitor.c | 58 +++++++++++
>> 14 files changed, 451 insertions(+), 12 deletions(-)
>>
>
--
Best regards,
Vladimir
1
0
This is an announcement to the effect that the mailing list move is now
complete. TL;DR the new list addresses are:
* announce(a)lists.libvirt.org (formerly libvirt-announce(a)redhat.com)
Low volume, announcements of releases and other important info
* users(a)lists.libvirt.org (formerly libvirt-users(a)redhat.com)
End user questions and discussions and collaboration
* devel(a)lists.libvirt.org (formerly libvir-list(a)redhat.com)
Patch submission for development of main project
* security(a)lists.libvirt.org (formerly libvir-security(a)redhat.com)
Submission of security sensitive bug reports
The online archive and membership mgmt interface is
https://lists.libvirt.org
In my original announcement[1] I mentioned that people would need to manually
re-subscribe. Due to a mixup in communications, our IT admins went ahead and
migrated across the existing entire subscriber base for all lists. Thus there
is NO need to re-subscribe to any of the lists. If you were doing filtering
of mail, you may need to update filters for the new list ID matches.
With the new list server, HyperKitty is providing the web interface. Thus
if you wish to interact with the lists entire via the browser this is now
possible. Note that it requires you to register for an account and set a
password, even if you are already a list subscriber.
If you mistakenly send to the old lists you should receive an auto-reply
about the moved destinations.
Note, we had some technical issues on Thursday/Friday, so if you sent
mails on those two days they probably will not have reached any lists,
and so you may wish to re-send them.
With regards,
Daniel
[1] https://listman.redhat.com/archives/libvirt-announce/2023-October/000650.ht…
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
2
2
Since we're just a few months away from the 10.0.0 release, I thought
it would be a good time to bring up this idea.
Can we move to date-based version numbers? I suggest having
libvirt 24.01.0 instead of 10.0.0
24.03.0 10.1.0
24.04.0 10.2.0
...
24.11.0 10.9.0
24.12.0 10.10.0
The big advantage is that, once version numbers are obviously
date-based, any expectation of them being interpreted according to
semver[1] are immediately gone.
Of course semver doesn't make sense for us, given our extremely
strong backwards compatibility guarantees, and that's exactly why
we've left it behind with 2.0.0; however, that's something that's not
immediately obvious to someone who's not very involved with our
development process, and regarless of our intentions libvirt version
numbers *will* be mistakenly assumed to be semver-compliant on
occasion.
People are quite used to date-based version numbers thanks to Ubuntu
having used them for almost two decades, so I don't think anyone is
going to be confused by the move. And since our release schedule is
already date-based, having the versioning scheme match that just
makes perfect sense IMO.
Up until now, one could have argued in favor of the current
versioning scheme because of the single-digit major version
component, but that's going away next year regardless, which makes
this the perfect time to raise the topic :)
Thoughts?
[1] https://semver.org/
--
Andrea Bolognani / Red Hat / Virtualization
5
10
31 Oct '23
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
src/libvirt-domain.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
index 6616294fc1..58e1e5ea8d 100644
--- a/src/libvirt-domain.c
+++ b/src/libvirt-domain.c
@@ -4221,10 +4221,6 @@ virDomainMigrate3(virDomainPtr domain,
VIR_MIGRATE_NON_SHARED_DISK | VIR_MIGRATE_NON_SHARED_INC,
error);
- VIR_REQUIRE_FLAG_GOTO(VIR_MIGRATE_NON_SHARED_SYNCHRONOUS_WRITES,
- VIR_MIGRATE_NON_SHARED_DISK | VIR_MIGRATE_NON_SHARED_INC,
- error);
-
if (flags & VIR_MIGRATE_PEER2PEER) {
virReportInvalidArg(flags, "%s",
_("use virDomainMigrateToURI3 for peer-to-peer migration"));
--
2.41.0
2
1
[libvirt PATCH v4] hypervisor: Move interface mgmt methods to hypervisor
by Praveen K Paladugu 30 Oct '23
by Praveen K Paladugu 30 Oct '23
30 Oct '23
Move guest interface management methods from qemu to hypervisor. These
methods will be shared by networking support in ch driver.
Signed-off-by: Praveen K Paladugu <prapal(a)linux.microsoft.com>
---
v4:
* logging and formatting fixes
v3:
* Moved qemuInterfaceStopDevice/s methods into hypervisor, to keep all the
related methods together.
Signed-off-by: Praveen K Paladugu <prapal(a)linux.microsoft.com>
---
po/POTFILES | 1 +
src/hypervisor/domain_interface.c | 370 ++++++++++++++++++++++++++++++
src/hypervisor/domain_interface.h | 41 ++++
src/hypervisor/meson.build | 1 +
src/libvirt_private.syms | 8 +
src/qemu/qemu_command.c | 6 +-
src/qemu/qemu_hotplug.c | 5 +-
src/qemu/qemu_interface.c | 339 +--------------------------
src/qemu/qemu_interface.h | 11 -
src/qemu/qemu_process.c | 5 +-
10 files changed, 436 insertions(+), 351 deletions(-)
create mode 100644 src/hypervisor/domain_interface.c
create mode 100644 src/hypervisor/domain_interface.h
diff --git a/po/POTFILES b/po/POTFILES
index 3a51aea5cb..023c041f61 100644
--- a/po/POTFILES
+++ b/po/POTFILES
@@ -92,6 +92,7 @@ src/hyperv/hyperv_util.c
src/hyperv/hyperv_wmi.c
src/hypervisor/domain_cgroup.c
src/hypervisor/domain_driver.c
+src/hypervisor/domain_interface.c
src/hypervisor/virhostdev.c
src/interface/interface_backend_netcf.c
src/interface/interface_backend_udev.c
diff --git a/src/hypervisor/domain_interface.c b/src/hypervisor/domain_interface.c
new file mode 100644
index 0000000000..07a83d2034
--- /dev/null
+++ b/src/hypervisor/domain_interface.c
@@ -0,0 +1,370 @@
+/*
+ * Copyright (C) 2015-2016 Red Hat, Inc.
+ * Copyright IBM Corp. 2014
+ *
+ * domain_interface.c: methods to manage guest/domain interfaces
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#include <config.h>
+
+#include "domain_audit.h"
+#include "domain_conf.h"
+#include "domain_interface.h"
+#include "domain_nwfilter.h"
+#include "network_conf.h"
+#include "viralloc.h"
+#include "virconftypes.h"
+#include "virebtables.h"
+#include "virfile.h"
+#include "virlog.h"
+#include "virmacaddr.h"
+#include "virnetdevbridge.h"
+#include "virnetdevtap.h"
+
+#define VIR_FROM_THIS VIR_FROM_DOMAIN
+
+VIR_LOG_INIT("domain.interface");
+
+bool
+virDomainInterfaceIsVnetCompatModel(const virDomainNetDef *net)
+{
+ return (virDomainNetIsVirtioModel(net) ||
+ net->model == VIR_DOMAIN_NET_MODEL_E1000E ||
+ net->model == VIR_DOMAIN_NET_MODEL_IGB ||
+ net->model == VIR_DOMAIN_NET_MODEL_VMXNET3);
+}
+
+/* virDomainInterfaceEthernetConnect:
+ * @def: the definition of the VM
+ * @net: a net definition in the VM
+ * @ebtables: ebtales context
+ * @macFilter: whether driver support mac Filtering
+ * @privileged: whether running as privileged user
+ * @tapfd: array of file descriptor return value for the new device
+ * @tapfdsize: number of file descriptors in @tapfd
+ *
+ * Called *only* called if actualType is VIR_DOMAIN_NET_TYPE_ETHERNET
+ * (i.e. if the connection is made with a tap device)
+ */
+int
+virDomainInterfaceEthernetConnect(virDomainDef *def,
+ virDomainNetDef *net,
+ ebtablesContext *ebtables,
+ bool macFilter,
+ bool privileged,
+ int *tapfd,
+ size_t tapfdSize)
+{
+ virMacAddr tapmac;
+ int ret = -1;
+ unsigned int tap_create_flags = VIR_NETDEV_TAP_CREATE_IFUP;
+ bool template_ifname = false;
+ const char *tunpath = "/dev/net/tun";
+ const char *auditdev = tunpath;
+
+ if (net->backend.tap) {
+ tunpath = net->backend.tap;
+ if (!privileged) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("cannot use custom tap device in session mode"));
+ goto cleanup;
+ }
+ }
+
+ if (virDomainInterfaceIsVnetCompatModel(net))
+ tap_create_flags |= VIR_NETDEV_TAP_CREATE_VNET_HDR;
+
+ if (net->managed_tap == VIR_TRISTATE_BOOL_NO) {
+ if (!net->ifname) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("target dev must be supplied when managed='no'"));
+ goto cleanup;
+ }
+ if (virNetDevExists(net->ifname) != 1) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("target managed='no' but specified dev doesn't exist"));
+ goto cleanup;
+ }
+
+ tap_create_flags |= VIR_NETDEV_TAP_CREATE_ALLOW_EXISTING;
+
+ if (virNetDevMacVLanIsMacvtap(net->ifname)) {
+ auditdev = net->ifname;
+ if (virNetDevMacVLanTapOpen(net->ifname, tapfd, tapfdSize) < 0)
+ goto cleanup;
+ if (virNetDevMacVLanTapSetup(tapfd, tapfdSize,
+ virDomainInterfaceIsVnetCompatModel(net)) < 0) {
+ goto cleanup;
+ }
+ } else {
+ if (virNetDevTapCreate(&net->ifname, tunpath, tapfd, tapfdSize,
+ tap_create_flags) < 0)
+ goto cleanup;
+ }
+ } else {
+
+ if (!net->ifname)
+ template_ifname = true;
+
+ if (virNetDevTapCreate(&net->ifname, tunpath, tapfd, tapfdSize,
+ tap_create_flags) < 0) {
+ goto cleanup;
+ }
+
+ /* The tap device's MAC address cannot match the MAC address
+ * used by the guest. This results in "received packet on
+ * vnetX with own address as source address" error logs from
+ * the kernel.
+ */
+ virMacAddrSet(&tapmac, &net->mac);
+ if (tapmac.addr[0] == 0xFE)
+ tapmac.addr[0] = 0xFA;
+ else
+ tapmac.addr[0] = 0xFE;
+
+ if (virNetDevSetMAC(net->ifname, &tapmac) < 0)
+ goto cleanup;
+
+ if (virNetDevSetOnline(net->ifname, true) < 0)
+ goto cleanup;
+ }
+
+ if (net->script &&
+ virNetDevRunEthernetScript(net->ifname, net->script) < 0)
+ goto cleanup;
+
+ if (macFilter &&
+ ebtablesAddForwardAllowIn(ebtables,
+ net->ifname,
+ &net->mac) < 0)
+ goto cleanup;
+
+ if (net->filter &&
+ virDomainConfNWFilterInstantiate(def->name, def->uuid, net, false) < 0) {
+ goto cleanup;
+ }
+
+ virDomainAuditNetDevice(def, net, auditdev, true);
+
+ ret = 0;
+
+ cleanup:
+ if (ret < 0) {
+ size_t i;
+
+ virDomainAuditNetDevice(def, net, auditdev, false);
+ for (i = 0; i < tapfdSize && tapfd[i] >= 0; i++)
+ VIR_FORCE_CLOSE(tapfd[i]);
+ if (template_ifname)
+ VIR_FREE(net->ifname);
+ }
+
+ return ret;
+}
+
+/**
+ * virDomainInterfaceStartDevice:
+ * @net: net device to start
+ *
+ * Based upon the type of device provided, perform the appropriate
+ * work to completely activate the device and make it reachable from
+ * the rest of the network.
+ */
+int
+virDomainInterfaceStartDevice(virDomainNetDef *net)
+{
+ virDomainNetType actualType = virDomainNetGetActualType(net);
+
+ switch (actualType) {
+ case VIR_DOMAIN_NET_TYPE_BRIDGE:
+ case VIR_DOMAIN_NET_TYPE_NETWORK:
+ if (virDomainNetGetActualBridgeMACTableManager(net)
+ == VIR_NETWORK_BRIDGE_MAC_TABLE_MANAGER_LIBVIRT) {
+ /* libvirt is managing the FDB of the bridge this device
+ * is attaching to, so we have turned off learning and
+ * unicast_flood on the device to prevent the kernel from
+ * adding any FDB entries for it. This means we need to
+ * add an fdb entry ourselves, using the MAC address from
+ * the interface config.
+ */
+ if (virNetDevBridgeFDBAdd(&net->mac, net->ifname,
+ VIR_NETDEVBRIDGE_FDB_FLAG_MASTER |
+ VIR_NETDEVBRIDGE_FDB_FLAG_TEMP) < 0)
+ return -1;
+ }
+ break;
+
+ case VIR_DOMAIN_NET_TYPE_DIRECT: {
+ const char *physdev = virDomainNetGetActualDirectDev(net);
+ bool isOnline = true;
+
+ /* set the physdev online if necessary. It may already be up,
+ * in which case we shouldn't re-up it just in case that causes
+ * some sort of "blip" in the physdev's status.
+ */
+ if (physdev && virNetDevGetOnline(physdev, &isOnline) < 0)
+ return -1;
+ if (!isOnline && virNetDevSetOnline(physdev, true) < 0)
+ return -1;
+
+ /* macvtap devices share their MAC address with the guest
+ * domain, and if they are set online prior to the domain CPUs
+ * being started, the host may send out traffic from this
+ * device that could confuse other entities on the network (in
+ * particular, if this new domain is the destination of a
+ * migration, and the source domain is still running, another
+ * host may mistakenly direct traffic for the guest to the
+ * destination domain rather than source domain). To prevent
+ * this, we create the macvtap device with IFF_UP false
+ * (i.e. "offline") then wait to bring it online until just as
+ * we are starting the domain CPUs.
+ */
+ if (virNetDevSetOnline(net->ifname, true) < 0)
+ return -1;
+ break;
+ }
+
+ case VIR_DOMAIN_NET_TYPE_ETHERNET:
+ if (virNetDevIPInfoAddToDev(net->ifname, &net->hostIP) < 0)
+ return -1;
+
+ break;
+
+ case VIR_DOMAIN_NET_TYPE_USER:
+ case VIR_DOMAIN_NET_TYPE_VHOSTUSER:
+ case VIR_DOMAIN_NET_TYPE_SERVER:
+ case VIR_DOMAIN_NET_TYPE_CLIENT:
+ case VIR_DOMAIN_NET_TYPE_MCAST:
+ case VIR_DOMAIN_NET_TYPE_UDP:
+ case VIR_DOMAIN_NET_TYPE_INTERNAL:
+ case VIR_DOMAIN_NET_TYPE_HOSTDEV:
+ case VIR_DOMAIN_NET_TYPE_VDPA:
+ case VIR_DOMAIN_NET_TYPE_NULL:
+ case VIR_DOMAIN_NET_TYPE_VDS:
+ case VIR_DOMAIN_NET_TYPE_LAST:
+ /* these types all require no action */
+ break;
+ }
+
+ return 0;
+}
+
+/**
+ * virDomainInterfaceStartDevices:
+ * @def: domain definition
+ *
+ * Set all ifaces associated with this domain to the online state.
+ */
+int
+virDomainInterfaceStartDevices(virDomainDef *def)
+{
+ size_t i;
+
+ for (i = 0; i < def->nnets; i++) {
+ if (virDomainInterfaceStartDevice(def->nets[i]) < 0)
+ return -1;
+ }
+ return 0;
+}
+
+/**
+ * virDomainInterfaceStopDevice:
+ * @net: net device to stop
+ *
+ * Based upon the type of device provided, perform the appropriate
+ * work to deactivate the device so that packets aren't forwarded to
+ * it from the rest of the network.
+ */
+int
+virDomainInterfaceStopDevice(virDomainNetDef *net)
+{
+ virDomainNetType actualType = virDomainNetGetActualType(net);
+
+ switch (actualType) {
+ case VIR_DOMAIN_NET_TYPE_BRIDGE:
+ case VIR_DOMAIN_NET_TYPE_NETWORK:
+ if (virDomainNetGetActualBridgeMACTableManager(net)
+ == VIR_NETWORK_BRIDGE_MAC_TABLE_MANAGER_LIBVIRT) {
+ /* remove the FDB entries that were added during
+ * virDomainInterfaceStartDevices()
+ */
+ if (virNetDevBridgeFDBDel(&net->mac, net->ifname,
+ VIR_NETDEVBRIDGE_FDB_FLAG_MASTER |
+ VIR_NETDEVBRIDGE_FDB_FLAG_TEMP) < 0)
+ return -1;
+ }
+ break;
+
+ case VIR_DOMAIN_NET_TYPE_DIRECT: {
+ const char *physdev = virDomainNetGetActualDirectDev(net);
+
+ /* macvtap interfaces need to be marked !IFF_UP (ie "down") to
+ * prevent any host-generated traffic sent from this interface
+ * from putting bad info into the arp caches of other machines
+ * on this network.
+ */
+ if (virNetDevSetOnline(net->ifname, false) < 0)
+ return -1;
+
+ /* also mark the physdev down for passthrough macvtap, as the
+ * physdev has the same MAC address as the macvtap device.
+ */
+ if (virDomainNetGetActualDirectMode(net) ==
+ VIR_NETDEV_MACVLAN_MODE_PASSTHRU &&
+ physdev && virNetDevSetOnline(physdev, false) < 0)
+ return -1;
+ break;
+ }
+
+ case VIR_DOMAIN_NET_TYPE_ETHERNET:
+ case VIR_DOMAIN_NET_TYPE_USER:
+ case VIR_DOMAIN_NET_TYPE_VHOSTUSER:
+ case VIR_DOMAIN_NET_TYPE_SERVER:
+ case VIR_DOMAIN_NET_TYPE_CLIENT:
+ case VIR_DOMAIN_NET_TYPE_MCAST:
+ case VIR_DOMAIN_NET_TYPE_UDP:
+ case VIR_DOMAIN_NET_TYPE_INTERNAL:
+ case VIR_DOMAIN_NET_TYPE_HOSTDEV:
+ case VIR_DOMAIN_NET_TYPE_VDPA:
+ case VIR_DOMAIN_NET_TYPE_NULL:
+ case VIR_DOMAIN_NET_TYPE_VDS:
+ case VIR_DOMAIN_NET_TYPE_LAST:
+ /* these types all require no action */
+ break;
+ }
+
+ return 0;
+}
+
+/**
+ * virDomainInterfaceStopDevices:
+ * @def: domain definition
+ *
+ * Make all interfaces associated with this domain inaccessible from
+ * the rest of the network.
+ */
+int
+virDomainInterfaceStopDevices(virDomainDef *def)
+{
+ size_t i;
+
+ for (i = 0; i < def->nnets; i++) {
+ if (virDomainInterfaceStopDevice(def->nets[i]) < 0)
+ return -1;
+ }
+ return 0;
+}
diff --git a/src/hypervisor/domain_interface.h b/src/hypervisor/domain_interface.h
new file mode 100644
index 0000000000..68bf2ae51d
--- /dev/null
+++ b/src/hypervisor/domain_interface.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2015-2016 Red Hat, Inc.
+ * Copyright IBM Corp. 2014
+ *
+ * domain_interface.h: methods to manage guest/domain interfaces
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include "virebtables.h"
+
+int
+virDomainInterfaceEthernetConnect(virDomainDef *def,
+ virDomainNetDef *net,
+ ebtablesContext *ebtables,
+ bool macFilter,
+ bool privileged,
+ int *tapfd,
+ size_t tapfdSize);
+
+bool
+virDomainInterfaceIsVnetCompatModel(const virDomainNetDef *net);
+
+int virDomainInterfaceStartDevice(virDomainNetDef *net);
+int virDomainInterfaceStartDevices(virDomainDef *def);
+int virDomainInterfaceStopDevice(virDomainNetDef *net);
+int virDomainInterfaceStopDevices(virDomainDef *def);
diff --git a/src/hypervisor/meson.build b/src/hypervisor/meson.build
index f35565b16b..819a9a82a2 100644
--- a/src/hypervisor/meson.build
+++ b/src/hypervisor/meson.build
@@ -1,6 +1,7 @@
hypervisor_sources = [
'domain_cgroup.c',
'domain_driver.c',
+ 'domain_interface.c',
'virclosecallbacks.c',
'virhostdev.c',
]
diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
index 553b01b8c0..b7f329be43 100644
--- a/src/libvirt_private.syms
+++ b/src/libvirt_private.syms
@@ -1630,6 +1630,14 @@ virDomainDriverNodeDeviceReset;
virDomainDriverParseBlkioDeviceStr;
virDomainDriverSetupPersistentDefBlkioParams;
+# hypervisor/domain_interface.h
+virDomainInterfaceEthernetConnect;
+virDomainInterfaceIsVnetCompatModel;
+virDomainInterfaceStartDevice;
+virDomainInterfaceStartDevices;
+virDomainInterfaceStopDevice;
+virDomainInterfaceStopDevices;
+
# hypervisor/virclosecallbacks.h
virCloseCallbacksDomainAdd;
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index fd0f12f304..036f6ba2e5 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -43,6 +43,7 @@
#include "domain_nwfilter.h"
#include "domain_addr.h"
#include "domain_conf.h"
+#include "domain_interface.h"
#include "netdev_bandwidth_conf.h"
#include "virnetdevopenvswitch.h"
#include "device_conf.h"
@@ -8505,7 +8506,10 @@ qemuBuildInterfaceConnect(virDomainObj *vm,
break;
case VIR_DOMAIN_NET_TYPE_ETHERNET:
- if (qemuInterfaceEthernetConnect(vm->def, priv->driver, net,
+ if (virDomainInterfaceEthernetConnect(vm->def, net,
+ priv->driver->ebtables,
+ priv->driver->config->macFilter,
+ priv->driver->privileged,
tapfd, tapfdSize) < 0)
return -1;
vhostfd = true;
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index fec7c4be4e..63a130c201 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -39,6 +39,7 @@
#include "qemu_virtiofs.h"
#include "domain_audit.h"
#include "domain_cgroup.h"
+#include "domain_interface.h"
#include "netdev_bandwidth_conf.h"
#include "domain_nwfilter.h"
#include "virlog.h"
@@ -1272,7 +1273,7 @@ qemuDomainAttachNetDevice(virQEMUDriver *driver,
}
/* Set device online immediately */
- if (qemuInterfaceStartDevice(net) < 0)
+ if (virDomainInterfaceStartDevice(net) < 0)
goto cleanup;
qemuDomainInterfaceSetDefaultQDisc(driver, net);
@@ -4772,7 +4773,7 @@ qemuDomainRemoveNetDevice(virQEMUDriver *driver,
* affect the parent device (e.g. macvtap passthrough mode sets
* the parent device offline)
*/
- ignore_value(qemuInterfaceStopDevice(net));
+ ignore_value(virDomainInterfaceStopDevice(net));
qemuDomainObjEnterMonitor(vm);
if (qemuMonitorRemoveNetdev(priv->mon, hostnet_name) < 0) {
diff --git a/src/qemu/qemu_interface.c b/src/qemu/qemu_interface.c
index 8856bb95a8..c2007c7043 100644
--- a/src/qemu/qemu_interface.c
+++ b/src/qemu/qemu_interface.c
@@ -24,6 +24,7 @@
#include "network_conf.h"
#include "domain_audit.h"
#include "domain_nwfilter.h"
+#include "domain_interface.h"
#include "qemu_interface.h"
#include "viralloc.h"
#include "virlog.h"
@@ -41,211 +42,6 @@
VIR_LOG_INIT("qemu.qemu_interface");
-/**
- * qemuInterfaceStartDevice:
- * @net: net device to start
- *
- * Based upon the type of device provided, perform the appropriate
- * work to completely activate the device and make it reachable from
- * the rest of the network.
- */
-int
-qemuInterfaceStartDevice(virDomainNetDef *net)
-{
- virDomainNetType actualType = virDomainNetGetActualType(net);
-
- switch (actualType) {
- case VIR_DOMAIN_NET_TYPE_BRIDGE:
- case VIR_DOMAIN_NET_TYPE_NETWORK:
- if (virDomainNetGetActualBridgeMACTableManager(net)
- == VIR_NETWORK_BRIDGE_MAC_TABLE_MANAGER_LIBVIRT) {
- /* libvirt is managing the FDB of the bridge this device
- * is attaching to, so we have turned off learning and
- * unicast_flood on the device to prevent the kernel from
- * adding any FDB entries for it. This means we need to
- * add an fdb entry ourselves, using the MAC address from
- * the interface config.
- */
- if (virNetDevBridgeFDBAdd(&net->mac, net->ifname,
- VIR_NETDEVBRIDGE_FDB_FLAG_MASTER |
- VIR_NETDEVBRIDGE_FDB_FLAG_TEMP) < 0)
- return -1;
- }
- break;
-
- case VIR_DOMAIN_NET_TYPE_DIRECT: {
- const char *physdev = virDomainNetGetActualDirectDev(net);
- bool isOnline = true;
-
- /* set the physdev online if necessary. It may already be up,
- * in which case we shouldn't re-up it just in case that causes
- * some sort of "blip" in the physdev's status.
- */
- if (physdev && virNetDevGetOnline(physdev, &isOnline) < 0)
- return -1;
- if (!isOnline && virNetDevSetOnline(physdev, true) < 0)
- return -1;
-
- /* macvtap devices share their MAC address with the guest
- * domain, and if they are set online prior to the domain CPUs
- * being started, the host may send out traffic from this
- * device that could confuse other entities on the network (in
- * particular, if this new domain is the destination of a
- * migration, and the source domain is still running, another
- * host may mistakenly direct traffic for the guest to the
- * destination domain rather than source domain). To prevent
- * this, we create the macvtap device with IFF_UP false
- * (i.e. "offline") then wait to bring it online until just as
- * we are starting the domain CPUs.
- */
- if (virNetDevSetOnline(net->ifname, true) < 0)
- return -1;
- break;
- }
-
- case VIR_DOMAIN_NET_TYPE_ETHERNET:
- if (virNetDevIPInfoAddToDev(net->ifname, &net->hostIP) < 0)
- return -1;
-
- break;
-
- case VIR_DOMAIN_NET_TYPE_USER:
- case VIR_DOMAIN_NET_TYPE_VHOSTUSER:
- case VIR_DOMAIN_NET_TYPE_SERVER:
- case VIR_DOMAIN_NET_TYPE_CLIENT:
- case VIR_DOMAIN_NET_TYPE_MCAST:
- case VIR_DOMAIN_NET_TYPE_UDP:
- case VIR_DOMAIN_NET_TYPE_INTERNAL:
- case VIR_DOMAIN_NET_TYPE_HOSTDEV:
- case VIR_DOMAIN_NET_TYPE_VDPA:
- case VIR_DOMAIN_NET_TYPE_NULL:
- case VIR_DOMAIN_NET_TYPE_VDS:
- case VIR_DOMAIN_NET_TYPE_LAST:
- /* these types all require no action */
- break;
- }
-
- return 0;
-}
-
-/**
- * qemuInterfaceStartDevices:
- * @def: domain definition
- *
- * Set all ifaces associated with this domain to the online state.
- */
-int
-qemuInterfaceStartDevices(virDomainDef *def)
-{
- size_t i;
-
- for (i = 0; i < def->nnets; i++) {
- if (qemuInterfaceStartDevice(def->nets[i]) < 0)
- return -1;
- }
- return 0;
-}
-
-
-/**
- * qemuInterfaceStopDevice:
- * @net: net device to stop
- *
- * Based upon the type of device provided, perform the appropriate
- * work to deactivate the device so that packets aren't forwarded to
- * it from the rest of the network.
- */
-int
-qemuInterfaceStopDevice(virDomainNetDef *net)
-{
- virDomainNetType actualType = virDomainNetGetActualType(net);
-
- switch (actualType) {
- case VIR_DOMAIN_NET_TYPE_BRIDGE:
- case VIR_DOMAIN_NET_TYPE_NETWORK:
- if (virDomainNetGetActualBridgeMACTableManager(net)
- == VIR_NETWORK_BRIDGE_MAC_TABLE_MANAGER_LIBVIRT) {
- /* remove the FDB entries that were added during
- * qemuInterfaceStartDevices()
- */
- if (virNetDevBridgeFDBDel(&net->mac, net->ifname,
- VIR_NETDEVBRIDGE_FDB_FLAG_MASTER |
- VIR_NETDEVBRIDGE_FDB_FLAG_TEMP) < 0)
- return -1;
- }
- break;
-
- case VIR_DOMAIN_NET_TYPE_DIRECT: {
- const char *physdev = virDomainNetGetActualDirectDev(net);
-
- /* macvtap interfaces need to be marked !IFF_UP (ie "down") to
- * prevent any host-generated traffic sent from this interface
- * from putting bad info into the arp caches of other machines
- * on this network.
- */
- if (virNetDevSetOnline(net->ifname, false) < 0)
- return -1;
-
- /* also mark the physdev down for passthrough macvtap, as the
- * physdev has the same MAC address as the macvtap device.
- */
- if (virDomainNetGetActualDirectMode(net) ==
- VIR_NETDEV_MACVLAN_MODE_PASSTHRU &&
- physdev && virNetDevSetOnline(physdev, false) < 0)
- return -1;
- break;
- }
-
- case VIR_DOMAIN_NET_TYPE_ETHERNET:
- case VIR_DOMAIN_NET_TYPE_USER:
- case VIR_DOMAIN_NET_TYPE_VHOSTUSER:
- case VIR_DOMAIN_NET_TYPE_SERVER:
- case VIR_DOMAIN_NET_TYPE_CLIENT:
- case VIR_DOMAIN_NET_TYPE_MCAST:
- case VIR_DOMAIN_NET_TYPE_UDP:
- case VIR_DOMAIN_NET_TYPE_INTERNAL:
- case VIR_DOMAIN_NET_TYPE_HOSTDEV:
- case VIR_DOMAIN_NET_TYPE_VDPA:
- case VIR_DOMAIN_NET_TYPE_NULL:
- case VIR_DOMAIN_NET_TYPE_VDS:
- case VIR_DOMAIN_NET_TYPE_LAST:
- /* these types all require no action */
- break;
- }
-
- return 0;
-}
-
-/**
- * qemuInterfaceStopDevices:
- * @def: domain definition
- *
- * Make all interfaces associated with this domain inaccessible from
- * the rest of the network.
- */
-int
-qemuInterfaceStopDevices(virDomainDef *def)
-{
- size_t i;
-
- for (i = 0; i < def->nnets; i++) {
- if (qemuInterfaceStopDevice(def->nets[i]) < 0)
- return -1;
- }
- return 0;
-}
-
-
-static bool
-qemuInterfaceIsVnetCompatModel(const virDomainNetDef *net)
-{
- return (virDomainNetIsVirtioModel(net) ||
- net->model == VIR_DOMAIN_NET_MODEL_E1000E ||
- net->model == VIR_DOMAIN_NET_MODEL_IGB ||
- net->model == VIR_DOMAIN_NET_MODEL_VMXNET3);
-}
-
-
/**
* qemuInterfaceDirectConnect:
* @def: the definition of the VM (needed by 802.1Qbh and audit)
@@ -271,7 +67,7 @@ qemuInterfaceDirectConnect(virDomainDef *def,
unsigned int macvlan_create_flags = VIR_NETDEV_MACVLAN_CREATE_WITH_TAP;
qemuDomainNetworkPrivate *netpriv = QEMU_DOMAIN_NETWORK_PRIVATE(net);
- if (qemuInterfaceIsVnetCompatModel(net))
+ if (virDomainInterfaceIsVnetCompatModel(net))
macvlan_create_flags |= VIR_NETDEV_MACVLAN_VNET_HDR;
if (virNetDevMacVLanCreateWithVPortProfile(net->ifname,
@@ -409,133 +205,6 @@ qemuCreateInBridgePortWithHelper(virQEMUDriverConfig *cfg,
return *tapfd < 0 ? -1 : 0;
}
-
-/* qemuInterfaceEthernetConnect:
- * @def: the definition of the VM
- * @driver: qemu driver data
- * @net: pointer to the VM's interface description
- * @tapfd: array of file descriptor return value for the new device
- * @tapfdsize: number of file descriptors in @tapfd
- *
- * Called *only* called if actualType is VIR_DOMAIN_NET_TYPE_ETHERNET
- * (i.e. if the connection is made with a tap device)
- */
-int
-qemuInterfaceEthernetConnect(virDomainDef *def,
- virQEMUDriver *driver,
- virDomainNetDef *net,
- int *tapfd,
- size_t tapfdSize)
-{
- virMacAddr tapmac;
- int ret = -1;
- unsigned int tap_create_flags = VIR_NETDEV_TAP_CREATE_IFUP;
- bool template_ifname = false;
- g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver);
- const char *tunpath = "/dev/net/tun";
- const char *auditdev = tunpath;
-
- if (net->backend.tap) {
- tunpath = net->backend.tap;
- if (!driver->privileged) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
- _("cannot use custom tap device in session mode"));
- goto cleanup;
- }
- }
-
- if (qemuInterfaceIsVnetCompatModel(net))
- tap_create_flags |= VIR_NETDEV_TAP_CREATE_VNET_HDR;
-
- if (net->managed_tap == VIR_TRISTATE_BOOL_NO) {
- if (!net->ifname) {
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("target dev must be supplied when managed='no'"));
- goto cleanup;
- }
- if (virNetDevExists(net->ifname) != 1) {
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("target managed='no' but specified dev doesn't exist"));
- goto cleanup;
- }
-
- tap_create_flags |= VIR_NETDEV_TAP_CREATE_ALLOW_EXISTING;
-
- if (virNetDevMacVLanIsMacvtap(net->ifname)) {
- auditdev = net->ifname;
- if (virNetDevMacVLanTapOpen(net->ifname, tapfd, tapfdSize) < 0)
- goto cleanup;
- if (virNetDevMacVLanTapSetup(tapfd, tapfdSize,
- qemuInterfaceIsVnetCompatModel(net)) < 0) {
- goto cleanup;
- }
- } else {
- if (virNetDevTapCreate(&net->ifname, tunpath, tapfd, tapfdSize,
- tap_create_flags) < 0)
- goto cleanup;
- }
- } else {
-
- if (!net->ifname)
- template_ifname = true;
-
- if (virNetDevTapCreate(&net->ifname, tunpath, tapfd, tapfdSize,
- tap_create_flags) < 0) {
- goto cleanup;
- }
-
- /* The tap device's MAC address cannot match the MAC address
- * used by the guest. This results in "received packet on
- * vnetX with own address as source address" error logs from
- * the kernel.
- */
- virMacAddrSet(&tapmac, &net->mac);
- if (tapmac.addr[0] == 0xFE)
- tapmac.addr[0] = 0xFA;
- else
- tapmac.addr[0] = 0xFE;
-
- if (virNetDevSetMAC(net->ifname, &tapmac) < 0)
- goto cleanup;
-
- if (virNetDevSetOnline(net->ifname, true) < 0)
- goto cleanup;
- }
-
- if (net->script &&
- virNetDevRunEthernetScript(net->ifname, net->script) < 0)
- goto cleanup;
-
- if (cfg->macFilter &&
- ebtablesAddForwardAllowIn(driver->ebtables,
- net->ifname,
- &net->mac) < 0)
- goto cleanup;
-
- if (net->filter &&
- virDomainConfNWFilterInstantiate(def->name, def->uuid, net, false) < 0) {
- goto cleanup;
- }
-
- virDomainAuditNetDevice(def, net, auditdev, true);
-
- ret = 0;
-
- cleanup:
- if (ret < 0) {
- size_t i;
-
- virDomainAuditNetDevice(def, net, auditdev, false);
- for (i = 0; i < tapfdSize && tapfd[i] >= 0; i++)
- VIR_FORCE_CLOSE(tapfd[i]);
- if (template_ifname)
- VIR_FREE(net->ifname);
- }
-
- return ret;
-}
-
-
/* qemuInterfaceBridgeConnect:
* @def: the definition of the VM
* @driver: qemu driver data
@@ -578,7 +247,7 @@ qemuInterfaceBridgeConnect(virDomainDef *def,
if (!net->ifname)
template_ifname = true;
- if (qemuInterfaceIsVnetCompatModel(net))
+ if (virDomainInterfaceIsVnetCompatModel(net))
tap_create_flags |= VIR_NETDEV_TAP_CREATE_VNET_HDR;
if (driver->privileged) {
@@ -598,7 +267,7 @@ qemuInterfaceBridgeConnect(virDomainDef *def,
* is attaching to, so we need to turn off learning and
* unicast_flood on the device to prevent the kernel from
* adding any FDB entries for it. We will add an fdb
- * entry ourselves (during qemuInterfaceStartDevices(),
+ * entry ourselves (during virDomainInterfaceStartDevices(),
* using the MAC address from the interface config.
*/
if (virNetDevBridgePortSetLearning(brname, net->ifname, false) < 0)
diff --git a/src/qemu/qemu_interface.h b/src/qemu/qemu_interface.h
index 6eed3e6bd7..47d7ec03fd 100644
--- a/src/qemu/qemu_interface.h
+++ b/src/qemu/qemu_interface.h
@@ -25,11 +25,6 @@
#include "qemu_domain.h"
#include "qemu_slirp.h"
-int qemuInterfaceStartDevice(virDomainNetDef *net);
-int qemuInterfaceStartDevices(virDomainDef *def);
-int qemuInterfaceStopDevice(virDomainNetDef *net);
-int qemuInterfaceStopDevices(virDomainDef *def);
-
int qemuInterfaceDirectConnect(virDomainDef *def,
virQEMUDriver *driver,
virDomainNetDef *net,
@@ -37,12 +32,6 @@ int qemuInterfaceDirectConnect(virDomainDef *def,
size_t tapfdSize,
virNetDevVPortProfileOp vmop);
-int qemuInterfaceEthernetConnect(virDomainDef *def,
- virQEMUDriver *driver,
- virDomainNetDef *net,
- int *tapfd,
- size_t tapfdSize);
-
int qemuInterfaceBridgeConnect(virDomainDef *def,
virQEMUDriver *driver,
virDomainNetDef *net,
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index 1ef032dbd2..1626f368bd 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -74,6 +74,7 @@
#include "virhostcpu.h"
#include "domain_audit.h"
#include "domain_cgroup.h"
+#include "domain_interface.h"
#include "domain_nwfilter.h"
#include "domain_postparse.h"
#include "domain_validate.h"
@@ -3121,7 +3122,7 @@ qemuProcessStartCPUs(virQEMUDriver *driver, virDomainObj *vm,
g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver);
/* Bring up netdevs before starting CPUs */
- if (qemuInterfaceStartDevices(vm->def) < 0)
+ if (virDomainInterfaceStartDevices(vm->def) < 0)
return -1;
VIR_DEBUG("Using lock state '%s'", NULLSTR(priv->lockState));
@@ -3184,7 +3185,7 @@ int qemuProcessStopCPUs(virQEMUDriver *driver,
goto cleanup;
/* de-activate netdevs after stopping CPUs */
- ignore_value(qemuInterfaceStopDevices(vm->def));
+ ignore_value(virDomainInterfaceStopDevices(vm->def));
if (vm->job->current)
ignore_value(virTimeMillisNow(&vm->job->current->stopped));
--
2.41.0
1
0
Signed-off-by: Thanos Makatos <thanos.makatos(a)nutanix.com>
---
src/test/test_driver.c | 59 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/src/test/test_driver.c b/src/test/test_driver.c
index e87d7cfd44..80ef1b3cbb 100644
--- a/src/test/test_driver.c
+++ b/src/test/test_driver.c
@@ -10035,6 +10035,62 @@ testConnectGetDomainCapabilities(virConnectPtr conn G_GNUC_UNUSED,
return virDomainCapsFormat(domCaps);
}
+static int
+testVirDomainAttachDeviceFlags(virDomainPtr domain,
+ const char *xml,
+ unsigned int flags G_GNUC_UNUSED) {
+
+ int ret = -1;
+ virDomainObj *vm;
+ testDriver *driver;
+ virDomainDeviceDef *devConf;
+
+ if (!(vm = testDomObjFromDomain(domain)))
+ return -1;
+
+ driver = domain->conn->privateData;
+
+ if (!(devConf = virDomainDeviceDefParse(xml, vm->def, driver->xmlopt,
+ NULL, 0)))
+ goto out;
+
+ VIR_APPEND_ELEMENT(vm->def->hostdevs, vm->def->nhostdevs,
+ devConf->data.hostdev);
+ virDomainDeviceDefFree(devConf);
+ ret = 0;
+out:
+ virDomainObjEndAPI(&vm);
+ return ret;
+}
+
+static int
+testVirDomainAttachDevice(virDomainPtr domain, const char *xml)
+{
+ return testVirDomainAttachDeviceFlags(domain, xml, 0);
+}
+
+static int
+testVirDomainDetachDeviceAlias(virDomainPtr domain,
+ const char *alias,
+ unsigned int flags G_GNUC_UNUSED)
+{
+ virDomainObj *vm;
+ int size_t;
+ bool found = false;
+
+ if (!(vm = testDomObjFromDomain(domain)))
+ return -1;
+
+ for (i = 0; i < vm->def->nhostdevs && !found; i++) {
+ if (!strcmp(vm->def->hostdevs[i]->info->alias, alias)) {
+ virDomainHostdevDefFree(vm->def->hostdevs[i]);
+ VIR_DELETE_ELEMENT(vm->def->hostdevs, i, vm->def->nhostdevs);
+ found = true;
+ }
+ }
+ virDomainObjEndAPI(&vm);
+ return found ? 0 : -1;
+}
/*
* Test driver
@@ -10058,6 +10114,9 @@ static virHypervisorDriver testHypervisorDriver = {
.connectListDomains = testConnectListDomains, /* 0.1.1 */
.connectNumOfDomains = testConnectNumOfDomains, /* 0.1.1 */
.connectListAllDomains = testConnectListAllDomains, /* 0.9.13 */
+ .domainAttachDevice = testVirDomainAttachDevice, /* 9.9.0 */
+ .domainAttachDeviceFlags = testVirDomainAttachDeviceFlags, /* 9.9.0 */
+ .domainDetachDeviceAlias = testVirDomainDetachDeviceAlias, /* 9.9.0 */
.domainCreateXML = testDomainCreateXML, /* 0.1.4 */
.domainCreateXMLWithFiles = testDomainCreateXMLWithFiles, /* 5.7.0 */
.domainLookupByID = testDomainLookupByID, /* 0.1.1 */
--
2.27.0
2
2
30 Oct '23
> -----Original Message-----
> From: Daniel P. Berrangé <berrange(a)redhat.com>
> Sent: Friday, October 27, 2023 6:13 PM
> To: Thanos Makatos <thanos.makatos(a)nutanix.com>
> Cc: devel(a)lists.libvirt.org
> Subject: Re: [PATCH] support for hotplug/hotunplug in test hypervisor
>
> On Fri, Oct 27, 2023 at 03:44:13PM +0000, Thanos Makatos wrote:
> > Signed-off-by: Thanos Makatos <thanos.makatos(a)nutanix.com>
> > ---
> > src/test/test_driver.c | 61
> ++++++++++++++++++++++++++++++++++++++++--
> > 1 file changed, 59 insertions(+), 2 deletions(-)
> >
> > diff --git a/src/test/test_driver.c b/src/test/test_driver.c
> > index e87d7cfd44..6eda0dcc01 100644
> > --- a/src/test/test_driver.c
> > +++ b/src/test/test_driver.c
> > @@ -26,8 +26,6 @@
> > #include <unistd.h>
> > #include <sys/stat.h>
> > #include <libxml/xmlsave.h>
> > -
> > -
>
> Unrelated whitespace change.
Ack
>
> > #include "virerror.h"
> > #include "datatypes.h"
> > #include "test_driver.h"
> > @@ -10035,6 +10033,62 @@
> testConnectGetDomainCapabilities(virConnectPtr conn G_GNUC_UNUSED,
> > return virDomainCapsFormat(domCaps);
> > }
> >
> > +static int
> > +testVirDomainAttachDeviceFlags(virDomainPtr domain,
> > + const char *xml,
> > + unsigned int flags G_GNUC_UNUSED) {
> > +
> > + int ret = -1;
> > + virDomainObj *vm;
> > + testDriver *driver;
> > + virDomainDeviceDef *devConf;
> > +
> > + if (!(vm = testDomObjFromDomain(domain)))
> > + return -1;
> > +
> > + driver = domain->conn->privateData;
> > +
> > + if (!(devConf = virDomainDeviceDefParse(xml, vm->def, driver->xmlopt,
> > + NULL, 0)))
> > + goto out;
> > +
> > + VIR_APPEND_ELEMENT(vm->def->hostdevs, vm->def->nhostdevs,
> > + devConf->data.hostdev);
>
> Aling 'devConf' with the '(' above it
Ack
>
> > + virDomainDeviceDefFree(devConf);
> > + ret = 0;
> > +out:
> > + virDomainObjEndAPI(&vm);
> > + return ret;
> > +}
> > +
> > +static int
> > +testVirDomainAttachDevice(virDomainPtr domain, const char *xml)
> > +{
> > + return testVirDomainAttachDeviceFlags(domain, xml, 0);
> > +}
> > +
> > +static int
> > +testVirDomainDetachDeviceAlias(virDomainPtr domain,
> > + const char *alias,
> > + unsigned int flags __attribute__((unused)))
>
> Horizontal alignemtn is off, and also needs to be G_GNUC_UNUSED
> like the earlier method.
Ack
>
> > +{
> > + virDomainObj *vm;
> > + int i;
>
> size_t for loop iterators please.
Ack
>
> > + bool found = false;
> > +
> > + if (!(vm = testDomObjFromDomain(domain)))
> > + return -1;
> > +
> > + for (i = 0; i < vm->def->nhostdevs && !found; i++) {
> > + if (!strcmp(vm->def->hostdevs[i]->info->alias, alias)) {
> > + virDomainHostdevDefFree(vm->def->hostdevs[i]);
> > + VIR_DELETE_ELEMENT(vm->def->hostdevs, i, vm->def->nhostdevs);
> > + found = true;
> > + }
> > + }
> > + virDomainObjEndAPI(&vm);
> > + return found ? 0 : -1;
> > +}
> >
> > /*
> > * Test driver
> > @@ -10058,6 +10112,9 @@ static virHypervisorDriver testHypervisorDriver =
> {
> > .connectListDomains = testConnectListDomains, /* 0.1.1 */
> > .connectNumOfDomains = testConnectNumOfDomains, /* 0.1.1 */
> > .connectListAllDomains = testConnectListAllDomains, /* 0.9.13 */
> > + .domainAttachDevice = testVirDomainAttachDevice, /* 9.9.0 */
> > + .domainAttachDeviceFlags = testVirDomainAttachDeviceFlags, /* 9.9.0 */
> > + .domainDetachDeviceAlias = testVirDomainDetachDeviceAlias, /* 9.9.0 */
> > .domainCreateXML = testDomainCreateXML, /* 0.1.4 */
> > .domainCreateXMLWithFiles = testDomainCreateXMLWithFiles, /* 5.7.0 */
> > .domainLookupByID = testDomainLookupByID, /* 0.1.1 */
> > --
> > 2.27.0
> >
>
> With regards,
> Daniel
> --
> |: https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__berrange.com&d=DwIBaQ&c=s883GpUCOChKOHiocYtGcg&r=XTpYsh5Ps2zJ
> vtw6ogtti46atk736SI4vgsJiUKIyDE&m=7tOGBG0mrTLgztzu23pWZjCQpfdKbv7cV
> ilnYobvnzJSHk-
> m3fVMonE71FEjfJUc&s=MKxz2dbrxpoqVQEKrR1rIHTDNh3TQzk6j9ILpLJO4eI&e
> = -o- https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__www.flickr.com_photos_dberrange&d=DwIBaQ&c=s883GpUCOChKOHiocYt
> Gcg&r=XTpYsh5Ps2zJvtw6ogtti46atk736SI4vgsJiUKIyDE&m=7tOGBG0mrTLgztzu
> 23pWZjCQpfdKbv7cVilnYobvnzJSHk-m3fVMonE71FEjfJUc&s=yYyWxbabM-
> x_RY69yLXObz2p8wo1OAy4DioA0YScDYc&e= :|
> |: https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__libvirt.org&d=DwIBaQ&c=s883GpUCOChKOHiocYtGcg&r=XTpYsh5Ps2zJvtw
> 6ogtti46atk736SI4vgsJiUKIyDE&m=7tOGBG0mrTLgztzu23pWZjCQpfdKbv7cVilnY
> obvnzJSHk-
> m3fVMonE71FEjfJUc&s=YVwYpdMFSWcMfQ2sM9QgKFheo9Dxq8s4_sFI0KfGqu
> o&e= -o- https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__fstop138.berrange.com&d=DwIBaQ&c=s883GpUCOChKOHiocYtGcg&r=XTp
> Ysh5Ps2zJvtw6ogtti46atk736SI4vgsJiUKIyDE&m=7tOGBG0mrTLgztzu23pWZjCQ
> pfdKbv7cVilnYobvnzJSHk-m3fVMonE71FEjfJUc&s=-
> C8ZIdR8IJmdjdVJljDjhjVC4UiJcAeuiWQ-B_dV4wM&e= :|
> |: https://urldefense.proofpoint.com/v2/url?u=https-3A__entangle-
> 2Dphoto.org&d=DwIBaQ&c=s883GpUCOChKOHiocYtGcg&r=XTpYsh5Ps2zJvtw6o
> gtti46atk736SI4vgsJiUKIyDE&m=7tOGBG0mrTLgztzu23pWZjCQpfdKbv7cVilnYob
> vnzJSHk-
> m3fVMonE71FEjfJUc&s=BgvlBMRgX56LJG0ZSE02GviPHpVTcQ_Nx1N3aEWk9d4
> &e= -o- https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__www.instagram.com_dberrange&d=DwIBaQ&c=s883GpUCOChKOHiocYtGc
> g&r=XTpYsh5Ps2zJvtw6ogtti46atk736SI4vgsJiUKIyDE&m=7tOGBG0mrTLgztzu23
> pWZjCQpfdKbv7cVilnYobvnzJSHk-m3fVMonE71FEjfJUc&s=g23VsTOOhoOdgm-
> cJyiOixKvywYEQXh-L7sRK8YPm90&e= :|
1
0
I have just tagged v9.9.0-rc1 in the repository and pushed signed
tarballs and source RPMs to https://download.libvirt.org/
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
1
1
A surprising number of places mention the mailing lists
Daniel P. Berrangé (4):
src: update log/error messages pointing to old mailing list addr
docs: update docs pointing to old mailing list addrs
gitpublish: update for new devel mailing list address
docs: update search form to use hyperkitty search
.gitpublish | 2 +-
README.rst | 4 +--
docs/bindings.rst | 2 +-
docs/contact.rst | 18 ++++++-------
docs/downloads.rst | 2 +-
docs/js/main.js | 37 +++++++++++++++++----------
docs/newreposetup.rst | 2 +-
docs/securityprocess.rst | 2 +-
docs/submitting-patches.rst | 10 ++++----
docs/testapi.rst | 4 +--
src/conf/domain_capabilities.c | 2 +-
src/storage_file/storage_file_probe.c | 2 +-
src/util/virarch.c | 4 +--
13 files changed, 51 insertions(+), 40 deletions(-)
--
2.41.0
2
7
Signed-off-by: Thanos Makatos <thanos.makatos(a)nutanix.com>
---
src/test/test_driver.c | 61 ++++++++++++++++++++++++++++++++++++++++--
1 file changed, 59 insertions(+), 2 deletions(-)
diff --git a/src/test/test_driver.c b/src/test/test_driver.c
index e87d7cfd44..6eda0dcc01 100644
--- a/src/test/test_driver.c
+++ b/src/test/test_driver.c
@@ -26,8 +26,6 @@
#include <unistd.h>
#include <sys/stat.h>
#include <libxml/xmlsave.h>
-
-
#include "virerror.h"
#include "datatypes.h"
#include "test_driver.h"
@@ -10035,6 +10033,62 @@ testConnectGetDomainCapabilities(virConnectPtr conn G_GNUC_UNUSED,
return virDomainCapsFormat(domCaps);
}
+static int
+testVirDomainAttachDeviceFlags(virDomainPtr domain,
+ const char *xml,
+ unsigned int flags G_GNUC_UNUSED) {
+
+ int ret = -1;
+ virDomainObj *vm;
+ testDriver *driver;
+ virDomainDeviceDef *devConf;
+
+ if (!(vm = testDomObjFromDomain(domain)))
+ return -1;
+
+ driver = domain->conn->privateData;
+
+ if (!(devConf = virDomainDeviceDefParse(xml, vm->def, driver->xmlopt,
+ NULL, 0)))
+ goto out;
+
+ VIR_APPEND_ELEMENT(vm->def->hostdevs, vm->def->nhostdevs,
+ devConf->data.hostdev);
+ virDomainDeviceDefFree(devConf);
+ ret = 0;
+out:
+ virDomainObjEndAPI(&vm);
+ return ret;
+}
+
+static int
+testVirDomainAttachDevice(virDomainPtr domain, const char *xml)
+{
+ return testVirDomainAttachDeviceFlags(domain, xml, 0);
+}
+
+static int
+testVirDomainDetachDeviceAlias(virDomainPtr domain,
+ const char *alias,
+ unsigned int flags __attribute__((unused)))
+{
+ virDomainObj *vm;
+ int i;
+ bool found = false;
+
+ if (!(vm = testDomObjFromDomain(domain)))
+ return -1;
+
+ for (i = 0; i < vm->def->nhostdevs && !found; i++) {
+ if (!strcmp(vm->def->hostdevs[i]->info->alias, alias)) {
+ virDomainHostdevDefFree(vm->def->hostdevs[i]);
+ VIR_DELETE_ELEMENT(vm->def->hostdevs, i, vm->def->nhostdevs);
+ found = true;
+ }
+ }
+ virDomainObjEndAPI(&vm);
+ return found ? 0 : -1;
+}
/*
* Test driver
@@ -10058,6 +10112,9 @@ static virHypervisorDriver testHypervisorDriver = {
.connectListDomains = testConnectListDomains, /* 0.1.1 */
.connectNumOfDomains = testConnectNumOfDomains, /* 0.1.1 */
.connectListAllDomains = testConnectListAllDomains, /* 0.9.13 */
+ .domainAttachDevice = testVirDomainAttachDevice, /* 9.9.0 */
+ .domainAttachDeviceFlags = testVirDomainAttachDeviceFlags, /* 9.9.0 */
+ .domainDetachDeviceAlias = testVirDomainDetachDeviceAlias, /* 9.9.0 */
.domainCreateXML = testDomainCreateXML, /* 0.1.4 */
.domainCreateXMLWithFiles = testDomainCreateXMLWithFiles, /* 5.7.0 */
.domainLookupByID = testDomainLookupByID, /* 0.1.1 */
--
2.27.0
1
0
Re: [libvirt] [Qemu-devel] Qemu migration with vhost-user-blk on top of local storage
by Stefan Hajnoczi 27 Oct '23
by Stefan Hajnoczi 27 Oct '23
27 Oct '23
On Wed, Jan 09, 2019 at 06:23:42PM +0800, wuzhouhui wrote:
> Hi everyone,
>
> I'm working qemu with vhost target (e.g. spdk), and I attempt to migrate VM with
> 2 local storages. One local storage is a regular file, e.g. /tmp/c74.qcow2, and
> the other is a malloc bdev that spdk created. This malloc bdev will exported to
> VM via vhost-user-blk. When I execute following command:
>
> virsh migrate --live --persistent --unsafe --undefinesource --copy-storage-all \
> --p2p --auto-converge --verbose --desturi qemu+tcp://<uri>/system vm0
>
> The libvirt reports:
>
> qemu-2.12.1: error: internal error: unable to execute QEMU command \
> 'nbd-server-add': Cannot find device=drive-virtio-disk1 nor \
> node_name=drive-virtio-disk1
Please post your libvirt domain XML.
> Does it means that qemu with spdk on top of local storage don't support migration?
>
> QEMU: 2.12.1
> SPDK: 18.10
vhost-user-blk bypasses the QEMU block layer, so NBD storage migration
at the QEMU level will not work for the vhost-user-blk disk.
Stefan
4
4
[libvirt] [PATCH v3] openvswitch: Add new port VLAN mode "dot1q-tunnel"
by luzhipeng@uniudc.com 27 Oct '23
by luzhipeng@uniudc.com 27 Oct '23
27 Oct '23
From: ZhiPeng Lu <luzhipeng(a)uniudc.com>
Signed-off-by: ZhiPeng Lu <luzhipeng(a)uniudc.com>
---
v1->v2:
1. Fix "make syntax-check" failure
v2->v3:
1. remove other_config when updating vlan
docs/formatnetwork.html.in | 17 +++++++++--------
docs/schemas/networkcommon.rng | 1 +
src/conf/netdev_vlan_conf.c | 2 +-
src/util/virnetdevopenvswitch.c | 7 +++++++
src/util/virnetdevvlan.h | 1 +
5 files changed, 19 insertions(+), 9 deletions(-)
diff --git a/docs/formatnetwork.html.in b/docs/formatnetwork.html.in
index 363a72b..3c1ae62 100644
--- a/docs/formatnetwork.html.in
+++ b/docs/formatnetwork.html.in
@@ -688,16 +688,17 @@
</p>
<p>
For network connections using Open vSwitch it is also possible
- to configure 'native-tagged' and 'native-untagged' VLAN modes
+ to configure 'native-tagged' and 'native-untagged' and 'dot1q-tunnel'
+ VLAN modes.
<span class="since">Since 1.1.0.</span> This is done with the
- optional <code>nativeMode</code> attribute on
- the <code><tag></code> subelement: <code>nativeMode</code>
- may be set to 'tagged' or 'untagged'. The <code>id</code>
- attribute of the <code><tag></code> subelement
- containing <code>nativeMode</code> sets which VLAN is considered
- to be the "native" VLAN for this interface, and
+ optional <code>nativeMode</code> attribute on the
+ <code><tag></code> subelement: <code>nativeMode</code>
+ may be set to 'tagged' or 'untagged' or 'dot1q-tunnel'.
+ The <code>id</code> attribute of the <code><tag></code>
+ subelement containing <code>nativeMode</code> sets which VLAN is
+ considered to be the "native" VLAN for this interface, and
the <code>nativeMode</code> attribute determines whether or not
- traffic for that VLAN will be tagged.
+ traffic for that VLAN will be tagged or QinQ.
</p>
<p>
<code><vlan></code> elements can also be specified in
diff --git a/docs/schemas/networkcommon.rng b/docs/schemas/networkcommon.rng
index 2699555..11c48ff 100644
--- a/docs/schemas/networkcommon.rng
+++ b/docs/schemas/networkcommon.rng
@@ -223,6 +223,7 @@
<choice>
<value>tagged</value>
<value>untagged</value>
+ <value>dot1q-tunnel</value>
</choice>
</attribute>
</optional>
diff --git a/src/conf/netdev_vlan_conf.c b/src/conf/netdev_vlan_conf.c
index dff49c6..79710d9 100644
--- a/src/conf/netdev_vlan_conf.c
+++ b/src/conf/netdev_vlan_conf.c
@@ -29,7 +29,7 @@
#define VIR_FROM_THIS VIR_FROM_NONE
VIR_ENUM_IMPL(virNativeVlanMode, VIR_NATIVE_VLAN_MODE_LAST,
- "default", "tagged", "untagged")
+ "default", "tagged", "untagged", "dot1q-tunnel")
int
virNetDevVlanParse(xmlNodePtr node, xmlXPathContextPtr ctxt, virNetDevVlanPtr def)
diff --git a/src/util/virnetdevopenvswitch.c b/src/util/virnetdevopenvswitch.c
index 8fe06fd..9fec30b 100644
--- a/src/util/virnetdevopenvswitch.c
+++ b/src/util/virnetdevopenvswitch.c
@@ -91,6 +91,11 @@ virNetDevOpenvswitchConstructVlans(virCommandPtr cmd, virNetDevVlanPtr virtVlan)
virCommandAddArg(cmd, "vlan_mode=native-untagged");
virCommandAddArgFormat(cmd, "tag=%d", virtVlan->nativeTag);
break;
+ case VIR_NATIVE_VLAN_MODE_DOT1Q_TUNNEL:
+ virCommandAddArg(cmd, "vlan_mode=dot1q-tunnel");
+ virCommandAddArg(cmd, "other_config:qinq-ethtype=802.1q");
+ virCommandAddArgFormat(cmd, "tag=%d", virtVlan->nativeTag);
+ break;
case VIR_NATIVE_VLAN_MODE_DEFAULT:
default:
break;
@@ -504,6 +509,8 @@ int virNetDevOpenvswitchUpdateVlan(const char *ifname,
"--", "--if-exists", "clear", "Port", ifname, "tag",
"--", "--if-exists", "clear", "Port", ifname, "trunk",
"--", "--if-exists", "clear", "Port", ifname, "vlan_mode",
+ "--", "--if-exists", "remove", "Port", ifname, "other_config",
+ "qinq-ethtype", NULL,
"--", "--if-exists", "set", "Port", ifname, NULL);
if (virNetDevOpenvswitchConstructVlans(cmd, virtVlan) < 0)
diff --git a/src/util/virnetdevvlan.h b/src/util/virnetdevvlan.h
index be85f59..0667f9d 100644
--- a/src/util/virnetdevvlan.h
+++ b/src/util/virnetdevvlan.h
@@ -29,6 +29,7 @@ typedef enum {
VIR_NATIVE_VLAN_MODE_DEFAULT = 0,
VIR_NATIVE_VLAN_MODE_TAGGED,
VIR_NATIVE_VLAN_MODE_UNTAGGED,
+ VIR_NATIVE_VLAN_MODE_DOT1Q_TUNNEL,
VIR_NATIVE_VLAN_MODE_LAST
} virNativeVlanMode;
--
1.8.3.1
3
2
Seems a backport miss. An extra member is passed to struct
virLXCBasicMountInfo.
Signed-off-by: Yang hongyang <hongyang.yang(a)easystack.cn>
---
src/lxc/lxc_container.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c
index 28dabec..1c65fa9 100644
--- a/src/lxc/lxc_container.c
+++ b/src/lxc/lxc_container.c
@@ -760,7 +760,7 @@ typedef struct {
static const virLXCBasicMountInfo lxcBasicMounts[] = {
{ "proc", "/proc", "proc", MS_NOSUID|MS_NOEXEC|MS_NODEV, false, false },
- { "/proc/sys", "/proc/sys", NULL, MS_BIND|MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_RDONLY, false, false, false },
+ { "/proc/sys", "/proc/sys", NULL, MS_BIND|MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_RDONLY, false, false },
{ "sysfs", "/sys", "sysfs", MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_RDONLY, false, false },
{ "securityfs", "/sys/kernel/security", "securityfs", MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_RDONLY, true, true },
#if WITH_SELINUX
--
1.7.1
3
2
This adds more information about the different macvtap device modes.
Regards,
Stefan
3
2
27 Oct '23
Disclaimer: I am neither an SR-IOV nor a vhost-net expert, but I've CC'd
people that are who can throw tomatoes at me for getting bits wrong :-)
I wanted to start a discussion about supporting vhost-net in libvirt.
vhost-net has not yet been merged into qemu but I expect it will be soon
so it's a good time to start this discussion.
There are two modes worth supporting for vhost-net in libvirt. The
first mode is where vhost-net backs to a tun/tap device. This is
behaves in very much the same way that -net tap behaves in qemu today.
Basically, the difference is that the virtio backend is in the kernel
instead of in qemu so there should be some performance improvement.
Current, libvirt invokes qemu with -net tap,fd=X where X is an already
open fd to a tun/tap device. I suspect that after we merge vhost-net,
libvirt could support vhost-net in this mode by just doing -net
vhost,fd=X. I think the only real question for libvirt is whether to
provide a user visible switch to use vhost or to just always use vhost
when it's available and it makes sense. Personally, I think the later
makes sense.
The more interesting invocation of vhost-net though is one where the
vhost-net device backs directly to a physical network card. In this
mode, vhost should get considerably better performance than the current
implementation. I don't know the syntax yet, but I think it's
reasonable to assume that it will look something like -net
tap,dev=eth0. The effect will be that eth0 is dedicated to the guest.
On most modern systems, there is a small number of network devices so
this model is not all that useful except when dealing with SR-IOV
adapters. In that case, each physical device can be exposed as many
virtual devices (VFs). There are a few restrictions here though. The
biggest is that currently, you can only change the number of VFs by
reloading a kernel module so it's really a parameter that must be set at
startup time.
I think there are a few ways libvirt could support vhost-net in this
second mode. The simplest would be to introduce a new tag similar to
<source network='br0'>. In fact, if you probed the device type for the
network parameter, you could probably do something like <source
network='eth0'> and have it Just Work.
Another model would be to have libvirt see an SR-IOV adapter as a
network pool whereas it handled all of the VF management. Considering
how inflexible SR-IOV is today, I'm not sure whether this is the best model.
Has anyone put any more thought into this problem or how this should be
modeled in libvirt? Michael, could you share your current thinking for
-net syntax?
--
Regards,
Anthony Liguori
8
26
The following changes since commit a95260486aa7e78d7c7194eba65cf03311ad94ad:
Merge tag 'pull-tcg-20231023' of https://gitlab.com/rth7680/qemu into staging (2023-10-23 14:45:46 -0700)
are available in the Git repository at:
https://gitlab.com/juan.quintela/qemu.git tags/migration-20231024-pull-request
for you to fetch changes up to 088f7f03da3f5b3487091302b795c22b1bfe56fb:
migration: Deprecate old compression method (2023-10-24 13:48:24 +0200)
----------------------------------------------------------------
Migration Pull request (20231024)
Hi
In this PULL:
- vmstate registration fixes (thomas, juan)
- start merging vmstate_section_needed changes (marc)
- migration depreactions (juan)
- migration documentation for backwards compatibility (juan)
Please apply.
----------------------------------------------------------------
Juan Quintela (31):
migration/doc: Add contents
migration/doc: Add documentation for backwards compatiblity
migration/doc: How to migrate when hosts have different features
migration/doc: We broke backwards compatibility
migration: Receiving a zero page non zero is an error
migration: Rename ram_handle_compressed() to ram_handle_zero()
migration: Give one error if trying to set MULTIFD and XBZRLE
migration: Give one error if trying to set COMPRESSION and XBZRLE
migration: Remove save_page_use_compression()
migration: Make compress_data_with_multithreads return bool
migration: Simplify compress_page_with_multithread()
migration: Move busy++ to migrate_with_multithread
migration: Create compress_update_rates()
migration: Export send_queued_data()
migration: Move ram_flush_compressed_data() to ram-compress.c
migration: Merge flush_compressed_data() and compress_flush_data()
migration: Rename ram_compressed_pages() to compress_ram_pages()
migration: Create vmstate_register_any()
migration: Use vmstate_register_any()
migration: Use vmstate_register_any() for isa-ide
migration: Use VMSTATE_INSTANCE_ID_ANY for slirp
migration: Hack to maintain backwards compatibility for ppc
migration: Improve example and documentation of vmstate_register()
migration: Use vmstate_register_any() for audio
migration: Use vmstate_register_any() for eeprom93xx
migration: Use vmstate_register_any() for vmware_vga
qemu-iotests: Filter warnings about block migration being deprecated
migration: migrate 'inc' command option is deprecated.
migration: migrate 'blk' command option is deprecated.
migration: Deprecate block migration
migration: Deprecate old compression method
Marc-André Lureau (2):
migration: rename vmstate_save_needed->vmstate_section_needed
migration: set file error on subsection loading
Peter Xu (1):
migration: Check in savevm_state_handler_insert for dups
Thomas Huth (5):
hw/ipmi: Don't call vmstate_register() from instance_init() functions
hw/s390x/s390-skeys: Don't call register_savevm_live() during
instance_init()
hw/s390x/s390-stattrib: Simplify handling of the "migration-enabled"
property
hw/s390x/s390-stattrib: Don't call register_savevm_live() during
instance_init()
migration/ram: Fix compilation with -Wshadow=local
docs/about/deprecated.rst | 35 ++
docs/devel/migration.rst | 532 ++++++++++++++++++++++++++++++-
qapi/migration.json | 93 ++++--
include/migration/vmstate.h | 30 +-
migration/ram-compress.h | 10 +-
migration/ram.h | 3 +-
audio/audio.c | 2 +-
backends/dbus-vmstate.c | 3 +-
backends/tpm/tpm_emulator.c | 3 +-
hw/display/vmware_vga.c | 2 +-
hw/i2c/core.c | 2 +-
hw/ide/isa.c | 2 +-
hw/input/adb.c | 2 +-
hw/input/ads7846.c | 2 +-
hw/input/stellaris_input.c | 3 +-
hw/intc/xics.c | 18 +-
hw/ipmi/ipmi_bmc_extern.c | 29 +-
hw/ipmi/isa_ipmi_bt.c | 34 +-
hw/ipmi/isa_ipmi_kcs.c | 50 +--
hw/net/eepro100.c | 3 +-
hw/nvram/eeprom93xx.c | 2 +-
hw/pci/pci.c | 2 +-
hw/ppc/spapr.c | 25 +-
hw/ppc/spapr_nvdimm.c | 3 +-
hw/s390x/s390-skeys.c | 35 +-
hw/s390x/s390-stattrib.c | 71 ++---
hw/timer/arm_timer.c | 2 +-
hw/virtio/virtio-mem.c | 4 +-
migration/block.c | 3 +
migration/migration-hmp-cmds.c | 10 +
migration/migration.c | 10 +
migration/options.c | 36 ++-
migration/ram-compress.c | 112 +++++--
migration/ram.c | 114 ++-----
migration/rdma.c | 8 +-
migration/savevm.c | 34 +-
migration/vmstate.c | 5 +-
net/slirp.c | 5 +-
tests/qemu-iotests/183 | 2 +-
tests/qemu-iotests/common.filter | 7 +
40 files changed, 1041 insertions(+), 307 deletions(-)
--
2.41.0
3
43
Content-type: text/plain
v2:
- also deal with blockcopy (requires more helpers)
Peter Krempa (3):
qemu: process: Extract host setup of disk device into helpers
qemu: hotplug: Setup host side of VDPA device for disk hotplug
qemu: Setup host side of VDPA device for block copy
src/qemu/qemu_block.c | 4 +++
src/qemu/qemu_driver.c | 12 +++++++
src/qemu/qemu_hotplug.c | 3 ++
src/qemu/qemu_process.c | 76 ++++++++++++++++++++++++++++++++++++-----
src/qemu/qemu_process.h | 7 ++++
5 files changed, 93 insertions(+), 9 deletions(-)
--
2.41.0
1
3
[PATCH 00/22] qemu: Refactor blockdev protocol JSON generators ('raw' driver removal part 2)
by Peter Krempa 26 Oct '23
by Peter Krempa 26 Oct '23
26 Oct '23
Second part cleans up tests and various bits and refactors the protocol
blockdev JSON configuration generator to be reusable.
This still doesn't change the configuration of the blockdevs, just
reorders some arguments.
Peter Krempa (22):
qemuxml2(argv|xml)test: Add network backed disk type='sd'
qemu: migration: No longer avoid 'auto-read-only' option for migration
qemuBuildDriveSourceStr: Absorb only use of qemuDiskSourceGetProps
qemuBlockStorageSourceGetBackendProps: Remove unnecessary indent for
non-nbdkit code path
conf: Move definition of some disk type enums to a common header
virStorageSource: Use proper type for shadow copies of
iomode/cachemode/discard/detect_zeroes
qemuDomainDiskCachemodeFlags: Simplify usage
qemuBlockStorageSourceGetBlockdevGetCacheProps: Return the cache
object rather than appending it
qemublocktest: Use "target only" mode in 'testJSONtoJSON' and
'testBackingXMLjsonXML'
qemublocktest: Drop 'sheepdog' and 'vxhs' test cases
qemublocktest: Fix logical bug in TEST_JSON_FORMAT macro
qemublocktest: testBackingXMLjsonXML: Drop 'legacy' mode
qemuBlockStorageSourceGetBackendProps: Unify cases for '!onlytarget'
and '!legacy'
virDomainDiskGetDetectZeroesMode: Return proper type
qemuBlockStorageSourceGetBackendProps: Unify ordering of fields
qemu: block: Add helper to add common properties for -blockdev
configuration
qemu: block: Use qemuBlockStorageSourceAddBlockdevCommonProps for
storage slice
qemuBlockStorageSourceGetBackendProps: Introduce
QEMU_BLOCK_STORAGE_SOURCE_BACKEND_PROPS_EFFECTIVE_NODE
qemuBuildHostdevSCSIAttachPrepare: Use "effective node" mode for
getting blockdev props
qemuBlockStorageSourceGetBackendProps: Use
qemuBlockStorageSourceAddBlockdevCommonProps
qemuBlockStorageSourceGetBackendProps: Remove unused logic for
(auto-)read-only flags
qemu: block: Remove unused flags
QEMU_BLOCK_STORAGE_SOURCE_BACKEND_PROPS_ flags
src/conf/domain_conf.c | 2 +-
src/conf/domain_conf.h | 39 +-
src/conf/storage_source_conf.h | 8 +-
src/conf/virconftypes.h | 39 +-
src/qemu/qemu_block.c | 349 +++++++++---------
src/qemu/qemu_block.h | 6 +-
src/qemu/qemu_command.c | 63 ++--
src/qemu/qemu_domain.c | 33 +-
src/qemu/qemu_domain.h | 4 +-
src/qemu/qemu_migration.c | 5 +-
tests/qemublocktest.c | 41 +-
.../jsontojson/curl-libguestfs-out.json | 5 +-
.../ssh-passthrough-libguestfs-out.json | 4 +-
.../xml2json/dir-fat-cache.json | 6 +-
.../file-backing_basic-cache-directsync.json | 24 +-
.../file-backing_basic-cache-none.json | 24 +-
.../file-backing_basic-cache-unsafe.json | 24 +-
.../file-backing_basic-cache-writeback.json | 24 +-
...file-backing_basic-cache-writethrough.json | 24 +-
.../xml2json/file-raw-aio_native.json | 6 +-
...work-qcow2-backing-chain-cache-unsafe.json | 12 +-
.../blkdeviotune-group-num.x86_64-latest.args | 4 +-
...blkdeviotune-max-length.x86_64-latest.args | 4 +-
.../blkdeviotune-max.x86_64-latest.args | 4 +-
.../blkdeviotune.x86_64-latest.args | 4 +-
.../controller-order.x86_64-latest.args | 2 +-
.../disk-aio.x86_64-latest.args | 2 +-
.../disk-arm-virtio-sd.aarch64-latest.args | 2 +
tests/qemuxml2argvdata/disk-arm-virtio-sd.xml | 16 +
.../disk-cache.x86_64-latest.args | 10 +-
.../disk-error-policy-s390x.s390x-latest.args | 6 +-
.../disk-error-policy.x86_64-latest.args | 6 +-
.../disk-metadata-cache.x86_64-latest.args | 6 +-
.../disk-network-nfs.x86_64-latest.args | 2 +-
...rk-tlsx509-nbd-hostname.x86_64-latest.args | 2 +-
...disk-network-tlsx509-nbd.x86_64-5.2.0.args | 2 +-
...isk-network-tlsx509-nbd.x86_64-latest.args | 2 +-
...isk-network-tlsx509-vxhs.x86_64-5.0.0.args | 6 +-
.../disk-nvme.x86_64-latest.args | 2 +-
.../disk-shared.x86_64-latest.args | 6 +-
.../disk-slices.x86_64-latest.args | 8 +-
.../disk-snapshot.x86_64-latest.args | 4 +-
.../disk-transient.x86_64-latest.args | 2 +-
.../disk-vhostvdpa.x86_64-latest.args | 2 +-
.../name-escape.x86_64-latest.args | 2 +-
.../user-aliases.x86_64-latest.args | 4 +-
...eo-bochs-display-device.x86_64-latest.args | 2 +-
...-device-pciaddr-default.x86_64-latest.args | 2 +-
...video-qxl-device-vgamem.x86_64-latest.args | 2 +-
.../video-qxl-device.x86_64-latest.args | 2 +-
...o-qxl-sec-device-vgamem.x86_64-latest.args | 2 +-
.../video-qxl-sec-device.x86_64-latest.args | 2 +-
...eo-ramfb-display-device.x86_64-latest.args | 2 +-
...video-vga-device-vgamem.x86_64-latest.args | 2 +-
.../video-vga-device.x86_64-latest.args | 2 +-
.../video-virtio-blob-off.x86_64-latest.args | 2 +-
.../video-virtio-blob-on.x86_64-latest.args | 2 +-
...video-virtio-gpu-device.x86_64-latest.args | 2 +-
...video-virtio-gpu-sdl-gl.x86_64-latest.args | 2 +-
...deo-virtio-gpu-spice-gl.x86_64-latest.args | 2 +-
.../video-virtio-gpu-virgl.x86_64-latest.args | 2 +-
.../video-virtio-vga.x86_64-latest.args | 2 +-
.../disk-arm-virtio-sd.aarch64-latest.xml | 16 +
63 files changed, 438 insertions(+), 462 deletions(-)
--
2.41.0
2
26
Peter Krempa (2):
qemu: process: Extract host setup of disk device into a helper
qemu: hotplug: Setup host side of VDPA device for disk hotplug
src/qemu/qemu_hotplug.c | 3 +++
src/qemu/qemu_process.c | 42 ++++++++++++++++++++++++++++++++---------
src/qemu/qemu_process.h | 3 +++
3 files changed, 39 insertions(+), 9 deletions(-)
--
2.41.0
1
3
[PATCH] docs: formatdomain: Clarify that the SLIC ACPI table config is available for all modes
by Peter Krempa 26 Oct '23
by Peter Krempa 26 Oct '23
26 Oct '23
Move the docs for the <acpi><table> element under a common section as
it's not specific for direct kernel boot. In fact the original use was
for Windows activation.
Fixes: 72f652da63255c7f1a9914625cce617dde9128d0
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
docs/formatdomain.rst | 29 +++++++++++++++++++++--------
1 file changed, 21 insertions(+), 8 deletions(-)
diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst
index 03735e4593..459815d2b5 100644
--- a/docs/formatdomain.rst
+++ b/docs/formatdomain.rst
@@ -387,9 +387,6 @@ and full virtualized guests.
<initrd>/root/f8-i386-initrd</initrd>
<cmdline>console=ttyS0 ks=http://example.com/f8-i386/os/</cmdline>
<dtb>/root/ppc.dtb</dtb>
- <acpi>
- <table type='slic'>/path/to/slic.dat</table>
- </acpi>
</os>
...
@@ -413,11 +410,6 @@ and full virtualized guests.
The contents of this element specify the fully-qualified path to the
(optional) device tree binary (dtb) image in the host OS. :since:`Since
1.0.4`
-``acpi``
- The ``table`` element contains a fully-qualified path to the ACPI table. The
- ``type`` attribute contains the ACPI table type (currently only ``slic`` is
- supported) :since:`Since 1.3.5 (QEMU)` :since:`Since 5.9.0 (Xen)`
-
Container boot
~~~~~~~~~~~~~~
@@ -470,6 +462,27 @@ If you want to enable user namespace, set the ``idmap`` element. The ``uid`` and
<gid start='0' target='1000' count='10'/>
</idmap>
+Common ``<os>`` element configuration
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+These options apply to any form of booting of the guest OS.
+
+::
+
+ ...
+ <os>
+ ...
+ <acpi>
+ <table type='slic'>/path/to/slic.dat</table>
+ </acpi>
+ </os>
+ ...
+
+``acpi``
+ The ``table`` element contains a fully-qualified path to the ACPI table. The
+ ``type`` attribute contains the ACPI table type (currently only ``slic`` is
+ supported) :since:`Since 1.3.5 (QEMU)` :since:`Since 5.9.0 (Xen)`
+
SMBIOS System Information
-------------------------
--
2.41.0
2
1
[PATCH] qemucapabilitiestest: Update capabilities data for 8.2 dev cycle on x86_64
by Peter Krempa 26 Oct '23
by Peter Krempa 26 Oct '23
26 Oct '23
Update to v8.1.0-2161-ga95260486a
Notable changes:
- new CPU topology parameters: 'books', 'drawers'
- new migration parameter 'avail-switchover-bandwidth'
- new s390x CPU properties: 'dedicated', 'entitlement'
- new 'hostmem' parameter for 'virtio-gpu'
- new device 'piix4-isa'
- new property 'dynamic-memslots' of 'virtio-mem' device
- new 'gsi*' parameters of 'ICH9-LPC'
- new experimental 'x-south-bridge' machine option
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
.../caps_8.2.0_x86_64.replies | 3168 +++++++++--------
.../caps_8.2.0_x86_64.xml | 2 +-
2 files changed, 1681 insertions(+), 1489 deletions(-)
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
index 9d947917e3..14736e6558 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.replies
@@ -21,7 +21,7 @@
"minor": 1,
"major": 8
},
- "package": "v8.1.0-1639-g63011373ad"
+ "package": "v8.1.0-2161-ga95260486a"
},
"id": "libvirt-2"
}
@@ -1435,7 +1435,7 @@
},
{
"name": "query-replay",
- "ret-type": "220",
+ "ret-type": "223",
"meta-type": "command",
"arg-type": "0"
},
@@ -1443,7 +1443,7 @@
"name": "replay-break",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "221"
+ "arg-type": "224"
},
{
"name": "replay-delete-break",
@@ -1455,18 +1455,18 @@
"name": "replay-seek",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "222"
+ "arg-type": "225"
},
{
"name": "yank",
"ret-type": "0",
"allow-oob": true,
"meta-type": "command",
- "arg-type": "223"
+ "arg-type": "226"
},
{
"name": "query-yank",
- "ret-type": "[224]",
+ "ret-type": "[227]",
"allow-oob": true,
"meta-type": "command",
"arg-type": "0"
@@ -1475,17 +1475,17 @@
"name": "add_client",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "225"
+ "arg-type": "228"
},
{
"name": "query-name",
- "ret-type": "226",
+ "ret-type": "229",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-iothreads",
- "ret-type": "[227]",
+ "ret-type": "[230]",
"meta-type": "command",
"arg-type": "0"
},
@@ -1514,7 +1514,7 @@
"name": "human-monitor-command",
"ret-type": "str",
"meta-type": "command",
- "arg-type": "228",
+ "arg-type": "231",
"features": [
"savevm-monitor-nodes"
]
@@ -1523,47 +1523,47 @@
"name": "getfd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "229"
+ "arg-type": "232"
},
{
"name": "closefd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "231"
+ "arg-type": "234"
},
{
"name": "add-fd",
- "ret-type": "233",
+ "ret-type": "236",
"meta-type": "command",
- "arg-type": "232"
+ "arg-type": "235"
},
{
"name": "remove-fd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "234"
+ "arg-type": "237"
},
{
"name": "query-fdsets",
- "ret-type": "[235]",
+ "ret-type": "[238]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-command-line-options",
- "ret-type": "[237]",
+ "ret-type": "[240]",
"meta-type": "command",
- "arg-type": "236"
+ "arg-type": "239"
},
{
"name": "RTC_CHANGE",
"meta-type": "event",
- "arg-type": "238"
+ "arg-type": "241"
},
{
"name": "VFU_CLIENT_HANGUP",
"meta-type": "event",
- "arg-type": "239"
+ "arg-type": "242"
},
{
"name": "rtc-reset-reinjection",
@@ -1573,19 +1573,19 @@
},
{
"name": "query-sev",
- "ret-type": "240",
+ "ret-type": "243",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sev-launch-measure",
- "ret-type": "241",
+ "ret-type": "244",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sev-capabilities",
- "ret-type": "242",
+ "ret-type": "245",
"meta-type": "command",
"arg-type": "0"
},
@@ -1593,29 +1593,29 @@
"name": "sev-inject-launch-secret",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "243"
+ "arg-type": "246"
},
{
"name": "query-sev-attestation-report",
- "ret-type": "245",
+ "ret-type": "248",
"meta-type": "command",
- "arg-type": "244"
+ "arg-type": "247"
},
{
"name": "query-sgx",
- "ret-type": "248",
+ "ret-type": "251",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sgx-capabilities",
- "ret-type": "248",
+ "ret-type": "251",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "xen-event-list",
- "ret-type": "[249]",
+ "ret-type": "[252]",
"meta-type": "command",
"arg-type": "0"
},
@@ -1623,46 +1623,46 @@
"name": "xen-event-inject",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "250"
+ "arg-type": "253"
},
{
"name": "query-audiodevs",
- "ret-type": "[251]",
+ "ret-type": "[254]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-acpi-ospm-status",
- "ret-type": "[252]",
+ "ret-type": "[255]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "ACPI_DEVICE_OST",
"meta-type": "event",
- "arg-type": "253"
+ "arg-type": "256"
},
{
"name": "query-pci",
- "ret-type": "[254]",
+ "ret-type": "[257]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-stats",
- "ret-type": "[256]",
+ "ret-type": "[259]",
"meta-type": "command",
- "arg-type": "255"
+ "arg-type": "258"
},
{
"name": "query-stats-schemas",
- "ret-type": "[258]",
+ "ret-type": "[261]",
"meta-type": "command",
- "arg-type": "257"
+ "arg-type": "260"
},
{
"name": "x-query-virtio",
- "ret-type": "[259]",
+ "ret-type": "[262]",
"meta-type": "command",
"arg-type": "0",
"features": [
@@ -1671,43 +1671,43 @@
},
{
"name": "x-query-virtio-status",
- "ret-type": "261",
+ "ret-type": "264",
"meta-type": "command",
- "arg-type": "260",
+ "arg-type": "263",
"features": [
"unstable"
]
},
{
"name": "x-query-virtio-queue-status",
- "ret-type": "263",
+ "ret-type": "266",
"meta-type": "command",
- "arg-type": "262",
+ "arg-type": "265",
"features": [
"unstable"
]
},
{
"name": "x-query-virtio-vhost-queue-status",
- "ret-type": "265",
+ "ret-type": "268",
"meta-type": "command",
- "arg-type": "264",
+ "arg-type": "267",
"features": [
"unstable"
]
},
{
"name": "x-query-virtio-queue-element",
- "ret-type": "267",
+ "ret-type": "270",
"meta-type": "command",
- "arg-type": "266",
+ "arg-type": "269",
"features": [
"unstable"
]
},
{
"name": "query-cryptodev",
- "ret-type": "[268]",
+ "ret-type": "[271]",
"meta-type": "command",
"arg-type": "0"
},
@@ -1715,37 +1715,37 @@
"name": "cxl-inject-general-media-event",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "269"
+ "arg-type": "272"
},
{
"name": "cxl-inject-dram-event",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "270"
+ "arg-type": "273"
},
{
"name": "cxl-inject-memory-module-event",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "271"
+ "arg-type": "274"
},
{
"name": "cxl-inject-poison",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "272"
+ "arg-type": "275"
},
{
"name": "cxl-inject-uncorrectable-errors",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "273"
+ "arg-type": "276"
},
{
"name": "cxl-inject-correctable-error",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "274"
+ "arg-type": "277"
},
{
"name": "0",
@@ -1769,7 +1769,7 @@
},
{
"name": "status",
- "type": "275"
+ "type": "278"
}
],
"meta-type": "object"
@@ -1783,7 +1783,7 @@
},
{
"name": "reason",
- "type": "276"
+ "type": "279"
}
],
"meta-type": "object"
@@ -1797,7 +1797,7 @@
},
{
"name": "reason",
- "type": "276"
+ "type": "279"
}
],
"meta-type": "object"
@@ -1807,7 +1807,7 @@
"members": [
{
"name": "action",
- "type": "277"
+ "type": "280"
}
],
"meta-type": "object"
@@ -1817,7 +1817,7 @@
"members": [
{
"name": "action",
- "type": "277"
+ "type": "280"
}
],
"meta-type": "object"
@@ -1828,22 +1828,22 @@
{
"name": "reboot",
"default": null,
- "type": "278"
+ "type": "281"
},
{
"name": "shutdown",
"default": null,
- "type": "279"
+ "type": "282"
},
{
"name": "panic",
"default": null,
- "type": "280"
+ "type": "283"
},
{
"name": "watchdog",
"default": null,
- "type": "277"
+ "type": "280"
}
],
"meta-type": "object"
@@ -1853,12 +1853,12 @@
"members": [
{
"name": "action",
- "type": "281"
+ "type": "284"
},
{
"name": "info",
"default": null,
- "type": "282"
+ "type": "285"
}
],
"meta-type": "object"
@@ -1868,12 +1868,12 @@
"members": [
{
"name": "action",
- "type": "281"
+ "type": "284"
},
{
"name": "info",
"default": null,
- "type": "282"
+ "type": "285"
}
],
"meta-type": "object"
@@ -1883,15 +1883,15 @@
"members": [
{
"name": "recipient",
- "type": "283"
+ "type": "286"
},
{
"name": "action",
- "type": "284"
+ "type": "287"
},
{
"name": "flags",
- "type": "285"
+ "type": "288"
}
],
"meta-type": "object"
@@ -1905,7 +1905,7 @@
},
{
"name": "status",
- "type": "286"
+ "type": "289"
}
],
"meta-type": "object"
@@ -1984,11 +1984,11 @@
},
{
"name": "type",
- "type": "287"
+ "type": "290"
},
{
"name": "status",
- "type": "286"
+ "type": "289"
},
{
"name": "current-progress",
@@ -2149,7 +2149,7 @@
{
"name": "read-only-mode",
"default": null,
- "type": "288"
+ "type": "291"
}
],
"meta-type": "object"
@@ -2376,7 +2376,7 @@
{
"name": "io-status",
"default": null,
- "type": "289"
+ "type": "292"
}
],
"meta-type": "object"
@@ -2417,12 +2417,12 @@
},
{
"name": "stats",
- "type": "290"
+ "type": "293"
},
{
"name": "driver-specific",
"default": null,
- "type": "291"
+ "type": "294"
},
{
"name": "parent",
@@ -2475,7 +2475,7 @@
},
{
"name": "io-status",
- "type": "289"
+ "type": "292"
},
{
"name": "ready",
@@ -2483,7 +2483,7 @@
},
{
"name": "status",
- "type": "286"
+ "type": "289"
},
{
"name": "auto-finalize",
@@ -2551,7 +2551,7 @@
{
"name": "mode",
"default": null,
- "type": "292"
+ "type": "295"
}
],
"meta-type": "object"
@@ -2639,7 +2639,7 @@
{
"name": "on-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "filter-node-name",
@@ -2673,7 +2673,7 @@
},
{
"name": "sync",
- "type": "294"
+ "type": "297"
},
{
"name": "speed",
@@ -2688,7 +2688,7 @@
{
"name": "bitmap-mode",
"default": null,
- "type": "295"
+ "type": "298"
},
{
"name": "compress",
@@ -2698,12 +2698,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "on-target-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "auto-finalize",
@@ -2723,7 +2723,7 @@
{
"name": "x-perf",
"default": null,
- "type": "296",
+ "type": "299",
"features": [
"unstable"
]
@@ -2740,7 +2740,7 @@
{
"name": "mode",
"default": null,
- "type": "292"
+ "type": "295"
}
],
"meta-type": "object"
@@ -2759,7 +2759,7 @@
},
{
"name": "sync",
- "type": "294"
+ "type": "297"
},
{
"name": "speed",
@@ -2774,7 +2774,7 @@
{
"name": "bitmap-mode",
"default": null,
- "type": "295"
+ "type": "298"
},
{
"name": "compress",
@@ -2784,12 +2784,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "on-target-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "auto-finalize",
@@ -2809,7 +2809,7 @@
{
"name": "x-perf",
"default": null,
- "type": "296",
+ "type": "299",
"features": [
"unstable"
]
@@ -2872,7 +2872,7 @@
},
{
"name": "detect_zeroes",
- "type": "297"
+ "type": "300"
},
{
"name": "bps",
@@ -2900,7 +2900,7 @@
},
{
"name": "image",
- "type": "298"
+ "type": "301"
},
{
"name": "bps_max",
@@ -2974,7 +2974,7 @@
},
{
"name": "cache",
- "type": "299"
+ "type": "302"
},
{
"name": "write_threshold",
@@ -2983,7 +2983,7 @@
{
"name": "dirty-bitmaps",
"default": null,
- "type": "[300]"
+ "type": "[303]"
}
],
"meta-type": "object"
@@ -2993,11 +2993,11 @@
"members": [
{
"name": "nodes",
- "type": "[301]"
+ "type": "[304]"
},
{
"name": "edges",
- "type": "[302]"
+ "type": "[305]"
}
],
"meta-type": "object"
@@ -3035,12 +3035,12 @@
},
{
"name": "sync",
- "type": "294"
+ "type": "297"
},
{
"name": "mode",
"default": null,
- "type": "292"
+ "type": "295"
},
{
"name": "speed",
@@ -3060,12 +3060,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "on-target-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "unmap",
@@ -3075,7 +3075,7 @@
{
"name": "copy-mode",
"default": null,
- "type": "303"
+ "type": "306"
},
{
"name": "auto-finalize",
@@ -3146,7 +3146,7 @@
},
{
"name": "bitmaps",
- "type": "[304]"
+ "type": "[307]"
}
],
"meta-type": "object"
@@ -3184,7 +3184,7 @@
},
{
"name": "sync",
- "type": "294"
+ "type": "297"
},
{
"name": "speed",
@@ -3204,12 +3204,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "on-target-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "filter-node-name",
@@ -3219,7 +3219,7 @@
{
"name": "copy-mode",
"default": null,
- "type": "303"
+ "type": "306"
},
{
"name": "auto-finalize",
@@ -3274,7 +3274,7 @@
{
"name": "on-error",
"default": null,
- "type": "293"
+ "type": "296"
},
{
"name": "filter-node-name",
@@ -3379,197 +3379,197 @@
"variants": [
{
"case": "blkdebug",
- "type": "308"
+ "type": "311"
},
{
"case": "blklogwrites",
- "type": "309"
+ "type": "312"
},
{
"case": "blkverify",
- "type": "310"
+ "type": "313"
},
{
"case": "blkreplay",
- "type": "311"
+ "type": "314"
},
{
"case": "bochs",
- "type": "312"
+ "type": "315"
},
{
"case": "cloop",
- "type": "312"
+ "type": "315"
},
{
"case": "compress",
- "type": "312"
+ "type": "315"
},
{
"case": "copy-before-write",
- "type": "313"
+ "type": "316"
},
{
"case": "copy-on-read",
- "type": "314"
+ "type": "317"
},
{
"case": "dmg",
- "type": "312"
+ "type": "315"
},
{
"case": "file",
- "type": "315"
+ "type": "318"
},
{
"case": "ftp",
- "type": "316"
+ "type": "319"
},
{
"case": "ftps",
- "type": "317"
+ "type": "320"
},
{
"case": "gluster",
- "type": "318"
+ "type": "321"
},
{
"case": "host_cdrom",
- "type": "315"
+ "type": "318"
},
{
"case": "host_device",
- "type": "315"
+ "type": "318"
},
{
"case": "http",
- "type": "319"
+ "type": "322"
},
{
"case": "https",
- "type": "320"
+ "type": "323"
},
{
"case": "io_uring",
- "type": "321"
+ "type": "324"
},
{
"case": "iscsi",
- "type": "322"
+ "type": "325"
},
{
"case": "luks",
- "type": "323"
+ "type": "326"
},
{
"case": "nbd",
- "type": "324"
+ "type": "327"
},
{
"case": "nfs",
- "type": "325"
+ "type": "328"
},
{
"case": "null-aio",
- "type": "326"
+ "type": "329"
},
{
"case": "null-co",
- "type": "326"
+ "type": "329"
},
{
"case": "nvme",
- "type": "327"
+ "type": "330"
},
{
"case": "nvme-io_uring",
- "type": "328"
+ "type": "331"
},
{
"case": "parallels",
- "type": "312"
+ "type": "315"
},
{
"case": "preallocate",
- "type": "329"
+ "type": "332"
},
{
"case": "qcow2",
- "type": "330"
+ "type": "333"
},
{
"case": "qcow",
- "type": "331"
+ "type": "334"
},
{
"case": "qed",
- "type": "332"
+ "type": "335"
},
{
"case": "quorum",
- "type": "333"
+ "type": "336"
},
{
"case": "raw",
- "type": "334"
+ "type": "337"
},
{
"case": "rbd",
- "type": "335"
+ "type": "338"
},
{
"case": "replication",
- "type": "336"
+ "type": "339"
},
{
"case": "snapshot-access",
- "type": "312"
+ "type": "315"
},
{
"case": "ssh",
- "type": "337"
+ "type": "340"
},
{
"case": "throttle",
- "type": "338"
+ "type": "341"
},
{
"case": "vdi",
- "type": "312"
+ "type": "315"
},
{
"case": "vhdx",
- "type": "312"
+ "type": "315"
},
{
"case": "virtio-blk-vfio-pci",
- "type": "339"
+ "type": "342"
},
{
"case": "virtio-blk-vhost-user",
- "type": "340"
+ "type": "343"
},
{
"case": "virtio-blk-vhost-vdpa",
- "type": "341"
+ "type": "344"
},
{
"case": "vmdk",
- "type": "332"
+ "type": "335"
},
{
"case": "vpc",
- "type": "312"
+ "type": "315"
},
{
"case": "vvfat",
- "type": "342"
+ "type": "345"
}
],
"members": [
{
"name": "driver",
- "type": "305"
+ "type": "308"
},
{
"name": "node-name",
@@ -3579,12 +3579,12 @@
{
"name": "discard",
"default": null,
- "type": "306"
+ "type": "309"
},
{
"name": "cache",
"default": null,
- "type": "307"
+ "type": "310"
},
{
"name": "read-only",
@@ -3604,7 +3604,7 @@
{
"name": "detect-zeroes",
"default": null,
- "type": "297"
+ "type": "300"
}
],
"meta-type": "object"
@@ -3638,7 +3638,7 @@
},
{
"name": "options",
- "type": "343"
+ "type": "346"
}
],
"meta-type": "object"
@@ -3656,7 +3656,7 @@
},
{
"name": "options",
- "type": "344"
+ "type": "347"
},
{
"name": "force",
@@ -3713,11 +3713,11 @@
},
{
"name": "operation",
- "type": "345"
+ "type": "348"
},
{
"name": "action",
- "type": "346"
+ "type": "349"
},
{
"name": "nospace",
@@ -3736,7 +3736,7 @@
"members": [
{
"name": "type",
- "type": "287"
+ "type": "290"
},
{
"name": "device",
@@ -3767,7 +3767,7 @@
"members": [
{
"name": "type",
- "type": "287"
+ "type": "290"
},
{
"name": "device",
@@ -3797,11 +3797,11 @@
},
{
"name": "operation",
- "type": "345"
+ "type": "348"
},
{
"name": "action",
- "type": "346"
+ "type": "349"
}
],
"meta-type": "object"
@@ -3811,7 +3811,7 @@
"members": [
{
"name": "type",
- "type": "287"
+ "type": "290"
},
{
"name": "device",
@@ -3837,7 +3837,7 @@
"members": [
{
"name": "type",
- "type": "287"
+ "type": "290"
},
{
"name": "id",
@@ -3907,7 +3907,7 @@
},
{
"name": "iothread",
- "type": "347"
+ "type": "350"
},
{
"name": "force",
@@ -3940,7 +3940,7 @@
"members": [
{
"name": "type",
- "type": "348"
+ "type": "351"
},
{
"name": "error",
@@ -4040,7 +4040,7 @@
"members": [
{
"name": "addr",
- "type": "349"
+ "type": "352"
},
{
"name": "tls-creds",
@@ -4100,7 +4100,7 @@
{
"name": "mode",
"default": null,
- "type": "350"
+ "type": "353"
}
],
"meta-type": "object"
@@ -4111,25 +4111,25 @@
"variants": [
{
"case": "nbd",
- "type": "352"
+ "type": "355"
},
{
"case": "vhost-user-blk",
- "type": "353"
+ "type": "356"
},
{
"case": "fuse",
- "type": "354"
+ "type": "357"
},
{
"case": "vduse-blk",
- "type": "355"
+ "type": "358"
}
],
"members": [
{
"name": "type",
- "type": "351"
+ "type": "354"
},
{
"name": "id",
@@ -4172,7 +4172,7 @@
{
"name": "mode",
"default": null,
- "type": "350"
+ "type": "353"
}
],
"meta-type": "object"
@@ -4201,7 +4201,7 @@
},
{
"name": "type",
- "type": "351"
+ "type": "354"
},
{
"name": "node-name",
@@ -4266,7 +4266,7 @@
{
"name": "format",
"default": null,
- "type": "356"
+ "type": "359"
}
],
"meta-type": "object"
@@ -4285,7 +4285,7 @@
{
"name": "format",
"default": null,
- "type": "356"
+ "type": "359"
}
],
"meta-type": "object"
@@ -4304,7 +4304,7 @@
},
{
"name": "backend",
- "type": "357"
+ "type": "360"
}
],
"meta-type": "object"
@@ -4329,7 +4329,7 @@
},
{
"name": "backend",
- "type": "357"
+ "type": "360"
}
],
"meta-type": "object"
@@ -4397,7 +4397,7 @@
{
"name": "format",
"default": null,
- "type": "358"
+ "type": "361"
}
],
"meta-type": "object"
@@ -4407,7 +4407,7 @@
"members": [
{
"name": "status",
- "type": "359"
+ "type": "362"
},
{
"name": "completed",
@@ -4440,7 +4440,7 @@
"members": [
{
"name": "formats",
- "type": "[358]"
+ "type": "[361]"
}
],
"meta-type": "object"
@@ -4465,55 +4465,55 @@
"variants": [
{
"case": "nic",
- "type": "361"
+ "type": "364"
},
{
"case": "user",
- "type": "362"
+ "type": "365"
},
{
"case": "tap",
- "type": "363"
+ "type": "366"
},
{
"case": "l2tpv3",
- "type": "364"
+ "type": "367"
},
{
"case": "socket",
- "type": "365"
+ "type": "368"
},
{
"case": "stream",
- "type": "366"
+ "type": "369"
},
{
"case": "dgram",
- "type": "367"
+ "type": "370"
},
{
"case": "vde",
- "type": "368"
+ "type": "371"
},
{
"case": "bridge",
- "type": "369"
+ "type": "372"
},
{
"case": "hubport",
- "type": "370"
+ "type": "373"
},
{
"case": "netmap",
- "type": "371"
+ "type": "374"
},
{
"case": "vhost-user",
- "type": "373"
+ "type": "376"
},
{
"case": "vhost-vdpa",
- "type": "374"
+ "type": "377"
},
{
"case": "none",
@@ -4527,7 +4527,7 @@
},
{
"name": "type",
- "type": "360"
+ "type": "363"
}
],
"meta-type": "object"
@@ -4571,15 +4571,15 @@
},
{
"name": "multicast",
- "type": "378"
+ "type": "381"
},
{
"name": "unicast",
- "type": "378"
+ "type": "381"
},
{
"name": "vlan",
- "type": "378"
+ "type": "381"
},
{
"name": "broadcast-allowed",
@@ -4678,7 +4678,7 @@
},
{
"name": "addr",
- "type": "379"
+ "type": "382"
}
],
"meta-type": "object"
@@ -4779,11 +4779,11 @@
},
{
"name": "duplex",
- "type": "380"
+ "type": "383"
},
{
"name": "autoneg",
- "type": "381"
+ "type": "384"
}
],
"meta-type": "object"
@@ -4821,15 +4821,15 @@
},
{
"name": "key",
- "type": "382"
+ "type": "385"
},
{
"name": "mask",
- "type": "383"
+ "type": "386"
},
{
"name": "action",
- "type": "384"
+ "type": "387"
}
],
"meta-type": "object"
@@ -4987,7 +4987,7 @@
},
{
"name": "options",
- "type": "385"
+ "type": "388"
}
],
"meta-type": "object"
@@ -4998,7 +4998,7 @@
"variants": [
{
"case": "vnc",
- "type": "388"
+ "type": "391"
},
{
"case": "spice",
@@ -5008,7 +5008,7 @@
"members": [
{
"name": "protocol",
- "type": "386"
+ "type": "389"
},
{
"name": "password",
@@ -5017,7 +5017,7 @@
{
"name": "connected",
"default": null,
- "type": "387"
+ "type": "390"
}
],
"meta-type": "object"
@@ -5028,7 +5028,7 @@
"variants": [
{
"case": "vnc",
- "type": "389"
+ "type": "392"
},
{
"case": "spice",
@@ -5038,7 +5038,7 @@
"members": [
{
"name": "protocol",
- "type": "386"
+ "type": "389"
},
{
"name": "time",
@@ -5067,7 +5067,7 @@
{
"name": "format",
"default": null,
- "type": "390"
+ "type": "393"
}
],
"meta-type": "object"
@@ -5110,12 +5110,12 @@
},
{
"name": "mouse-mode",
- "type": "391"
+ "type": "394"
},
{
"name": "channels",
"default": null,
- "type": "[392]"
+ "type": "[395]"
}
],
"meta-type": "object"
@@ -5125,11 +5125,11 @@
"members": [
{
"name": "server",
- "type": "393"
+ "type": "396"
},
{
"name": "client",
- "type": "393"
+ "type": "396"
}
],
"meta-type": "object"
@@ -5139,11 +5139,11 @@
"members": [
{
"name": "server",
- "type": "394"
+ "type": "397"
},
{
"name": "client",
- "type": "392"
+ "type": "395"
}
],
"meta-type": "object"
@@ -5153,11 +5153,11 @@
"members": [
{
"name": "server",
- "type": "393"
+ "type": "396"
},
{
"name": "client",
- "type": "393"
+ "type": "396"
}
],
"meta-type": "object"
@@ -5177,7 +5177,7 @@
{
"name": "family",
"default": null,
- "type": "395"
+ "type": "398"
},
{
"name": "service",
@@ -5192,7 +5192,7 @@
{
"name": "clients",
"default": null,
- "type": "[396]"
+ "type": "[399]"
}
],
"meta-type": "object"
@@ -5211,20 +5211,20 @@
},
{
"name": "server",
- "type": "[397]"
+ "type": "[400]"
},
{
"name": "clients",
- "type": "[396]"
+ "type": "[399]"
},
{
"name": "auth",
- "type": "398"
+ "type": "401"
},
{
"name": "vencrypt",
"default": null,
- "type": "399"
+ "type": "402"
},
{
"name": "display",
@@ -5249,11 +5249,11 @@
"members": [
{
"name": "server",
- "type": "400"
+ "type": "403"
},
{
"name": "client",
- "type": "401"
+ "type": "404"
}
],
"meta-type": "object"
@@ -5263,11 +5263,11 @@
"members": [
{
"name": "server",
- "type": "400"
+ "type": "403"
},
{
"name": "client",
- "type": "396"
+ "type": "399"
}
],
"meta-type": "object"
@@ -5277,11 +5277,11 @@
"members": [
{
"name": "server",
- "type": "400"
+ "type": "403"
},
{
"name": "client",
- "type": "396"
+ "type": "399"
}
],
"meta-type": "object"
@@ -5318,7 +5318,7 @@
"members": [
{
"name": "keys",
- "type": "[402]"
+ "type": "[405]"
},
{
"name": "hold-time",
@@ -5343,7 +5343,7 @@
},
{
"name": "events",
- "type": "[403]"
+ "type": "[406]"
}
],
"meta-type": "object"
@@ -5354,19 +5354,19 @@
"variants": [
{
"case": "curses",
- "type": "408"
+ "type": "411"
},
{
"case": "egl-headless",
- "type": "409"
+ "type": "412"
},
{
"case": "dbus",
- "type": "410"
+ "type": "413"
},
{
"case": "sdl",
- "type": "411"
+ "type": "414"
},
{
"case": "default",
@@ -5384,7 +5384,7 @@
"members": [
{
"name": "type",
- "type": "404"
+ "type": "407"
},
{
"name": "full-screen",
@@ -5404,7 +5404,7 @@
{
"name": "gl",
"default": null,
- "type": "405"
+ "type": "408"
}
],
"meta-type": "object"
@@ -5415,13 +5415,13 @@
"variants": [
{
"case": "vnc",
- "type": "413"
+ "type": "416"
}
],
"members": [
{
"name": "type",
- "type": "412"
+ "type": "415"
}
],
"meta-type": "object"
@@ -5432,13 +5432,13 @@
"variants": [
{
"case": "vnc",
- "type": "415"
+ "type": "418"
}
],
"members": [
{
"name": "type",
- "type": "414"
+ "type": "417"
}
],
"meta-type": "object"
@@ -5478,27 +5478,27 @@
{
"name": "status",
"default": null,
- "type": "416"
+ "type": "419"
},
{
"name": "ram",
"default": null,
- "type": "417"
+ "type": "420"
},
{
"name": "disk",
"default": null,
- "type": "417"
+ "type": "420"
},
{
"name": "vfio",
"default": null,
- "type": "418"
+ "type": "421"
},
{
"name": "xbzrle-cache",
"default": null,
- "type": "419"
+ "type": "422"
},
{
"name": "total-time",
@@ -5548,12 +5548,12 @@
{
"name": "compression",
"default": null,
- "type": "420"
+ "type": "423"
},
{
"name": "socket-address",
"default": null,
- "type": "[379]"
+ "type": "[382]"
},
{
"name": "dirty-limit-throttle-time-per-round",
@@ -5588,7 +5588,7 @@
"members": [
{
"name": "capability",
- "type": "421"
+ "type": "424"
},
{
"name": "state",
@@ -5663,23 +5663,28 @@
{
"name": "tls-creds",
"default": null,
- "type": "347"
+ "type": "350"
},
{
"name": "tls-hostname",
"default": null,
- "type": "347"
+ "type": "350"
},
{
"name": "tls-authz",
"default": null,
- "type": "347"
+ "type": "350"
},
{
"name": "max-bandwidth",
"default": null,
"type": "int"
},
+ {
+ "name": "avail-switchover-bandwidth",
+ "default": null,
+ "type": "int"
+ },
{
"name": "downtime-limit",
"default": null,
@@ -5721,7 +5726,7 @@
{
"name": "multifd-compression",
"default": null,
- "type": "422"
+ "type": "425"
},
{
"name": "multifd-zlib-level",
@@ -5736,7 +5741,7 @@
{
"name": "block-bitmap-mapping",
"default": null,
- "type": "[423]"
+ "type": "[426]"
},
{
"name": "x-vcpu-dirty-limit-period",
@@ -5837,6 +5842,11 @@
"default": null,
"type": "int"
},
+ {
+ "name": "avail-switchover-bandwidth",
+ "default": null,
+ "type": "int"
+ },
{
"name": "downtime-limit",
"default": null,
@@ -5878,7 +5888,7 @@
{
"name": "multifd-compression",
"default": null,
- "type": "422"
+ "type": "425"
},
{
"name": "multifd-zlib-level",
@@ -5893,7 +5903,7 @@
{
"name": "block-bitmap-mapping",
"default": null,
- "type": "[423]"
+ "type": "[426]"
},
{
"name": "x-vcpu-dirty-limit-period",
@@ -5916,7 +5926,7 @@
"members": [
{
"name": "status",
- "type": "416"
+ "type": "419"
}
],
"meta-type": "object"
@@ -5936,11 +5946,11 @@
"members": [
{
"name": "mode",
- "type": "424"
+ "type": "427"
},
{
"name": "reason",
- "type": "425"
+ "type": "428"
}
],
"meta-type": "object"
@@ -5950,7 +5960,7 @@
"members": [
{
"name": "state",
- "type": "416"
+ "type": "419"
}
],
"meta-type": "object"
@@ -6069,15 +6079,15 @@
"members": [
{
"name": "mode",
- "type": "424"
+ "type": "427"
},
{
"name": "last-mode",
- "type": "424"
+ "type": "427"
},
{
"name": "reason",
- "type": "425"
+ "type": "428"
}
],
"meta-type": "object"
@@ -6112,7 +6122,7 @@
{
"name": "calc-time-unit",
"default": null,
- "type": "426"
+ "type": "429"
},
{
"name": "sample-pages",
@@ -6122,7 +6132,7 @@
{
"name": "mode",
"default": null,
- "type": "427"
+ "type": "430"
}
],
"meta-type": "object"
@@ -6133,7 +6143,7 @@
{
"name": "calc-time-unit",
"default": null,
- "type": "426"
+ "type": "429"
}
],
"meta-type": "object"
@@ -6148,7 +6158,7 @@
},
{
"name": "status",
- "type": "428"
+ "type": "431"
},
{
"name": "start-time",
@@ -6160,7 +6170,7 @@
},
{
"name": "calc-time-unit",
- "type": "426"
+ "type": "429"
},
{
"name": "sample-pages",
@@ -6168,12 +6178,12 @@
},
{
"name": "mode",
- "type": "427"
+ "type": "430"
},
{
"name": "vcpu-dirty-rate",
"default": null,
- "type": "[429]"
+ "type": "[432]"
}
],
"meta-type": "object"
@@ -6313,12 +6323,12 @@
"members": [
{
"name": "actions",
- "type": "[430]"
+ "type": "[433]"
},
{
"name": "properties",
"default": null,
- "type": "431"
+ "type": "434"
}
],
"meta-type": "object"
@@ -6355,7 +6365,7 @@
},
{
"name": "state",
- "type": "432"
+ "type": "435"
},
{
"name": "vcpu",
@@ -6400,7 +6410,7 @@
{
"name": "enable",
"default": null,
- "type": "[433]"
+ "type": "[436]"
}
],
"meta-type": "object"
@@ -6410,7 +6420,7 @@
"members": [
{
"name": "qemu",
- "type": "434"
+ "type": "437"
},
{
"name": "package",
@@ -6445,31 +6455,31 @@
"variants": [
{
"case": "builtin",
- "type": "436"
+ "type": "439"
},
{
"case": "enum",
- "type": "437"
+ "type": "440"
},
{
"case": "array",
- "type": "438"
+ "type": "441"
},
{
"case": "object",
- "type": "439"
+ "type": "442"
},
{
"case": "alternate",
- "type": "440"
+ "type": "443"
},
{
"case": "command",
- "type": "441"
+ "type": "444"
},
{
"case": "event",
- "type": "442"
+ "type": "445"
}
],
"members": [
@@ -6479,7 +6489,7 @@
},
{
"name": "meta-type",
- "type": "435"
+ "type": "438"
},
{
"name": "features",
@@ -6622,167 +6632,167 @@
"variants": [
{
"case": "authz-list",
- "type": "444"
+ "type": "447"
},
{
"case": "authz-listfile",
- "type": "445"
+ "type": "448"
},
{
"case": "authz-pam",
- "type": "446"
+ "type": "449"
},
{
"case": "authz-simple",
- "type": "447"
+ "type": "450"
},
{
"case": "can-host-socketcan",
- "type": "448"
+ "type": "451"
},
{
"case": "colo-compare",
- "type": "449"
+ "type": "452"
},
{
"case": "cryptodev-backend",
- "type": "450"
+ "type": "453"
},
{
"case": "cryptodev-backend-builtin",
- "type": "450"
+ "type": "453"
},
{
"case": "cryptodev-backend-lkcf",
- "type": "450"
+ "type": "453"
},
{
"case": "cryptodev-vhost-user",
- "type": "451"
+ "type": "454"
},
{
"case": "dbus-vmstate",
- "type": "452"
+ "type": "455"
},
{
"case": "filter-buffer",
- "type": "453"
+ "type": "456"
},
{
"case": "filter-dump",
- "type": "454"
+ "type": "457"
},
{
"case": "filter-mirror",
- "type": "455"
+ "type": "458"
},
{
"case": "filter-redirector",
- "type": "456"
+ "type": "459"
},
{
"case": "filter-replay",
- "type": "457"
+ "type": "460"
},
{
"case": "filter-rewriter",
- "type": "458"
+ "type": "461"
},
{
"case": "input-barrier",
- "type": "459"
+ "type": "462"
},
{
"case": "input-linux",
- "type": "460"
+ "type": "463"
},
{
"case": "iothread",
- "type": "461"
+ "type": "464"
},
{
"case": "main-loop",
- "type": "462"
+ "type": "465"
},
{
"case": "memory-backend-epc",
- "type": "463"
+ "type": "466"
},
{
"case": "memory-backend-file",
- "type": "464"
+ "type": "467"
},
{
"case": "memory-backend-memfd",
- "type": "465"
+ "type": "468"
},
{
"case": "memory-backend-ram",
- "type": "466"
+ "type": "469"
},
{
"case": "pr-manager-helper",
- "type": "467"
+ "type": "470"
},
{
"case": "qtest",
- "type": "468"
+ "type": "471"
},
{
"case": "rng-builtin",
- "type": "469"
+ "type": "472"
},
{
"case": "rng-egd",
- "type": "470"
+ "type": "473"
},
{
"case": "rng-random",
- "type": "471"
+ "type": "474"
},
{
"case": "secret",
- "type": "472"
+ "type": "475"
},
{
"case": "secret_keyring",
- "type": "473"
+ "type": "476"
},
{
"case": "sev-guest",
- "type": "474"
+ "type": "477"
},
{
"case": "thread-context",
- "type": "475"
+ "type": "478"
},
{
"case": "throttle-group",
- "type": "476"
+ "type": "479"
},
{
"case": "tls-creds-anon",
- "type": "477"
+ "type": "480"
},
{
"case": "tls-creds-psk",
- "type": "478"
+ "type": "481"
},
{
"case": "tls-creds-x509",
- "type": "479"
+ "type": "482"
},
{
"case": "tls-cipher-suites",
- "type": "480"
+ "type": "483"
},
{
"case": "x-remote-object",
- "type": "481"
+ "type": "484"
},
{
"case": "x-vfio-user-server",
- "type": "482"
+ "type": "485"
},
{
"case": "can-bus",
@@ -6800,7 +6810,7 @@
"members": [
{
"name": "qom-type",
- "type": "443"
+ "type": "446"
},
{
"name": "id",
@@ -6900,7 +6910,7 @@
"variants": [
{
"case": "s390x",
- "type": "485"
+ "type": "488"
},
{
"case": "aarch64",
@@ -7039,11 +7049,11 @@
{
"name": "props",
"default": null,
- "type": "483"
+ "type": "486"
},
{
"name": "target",
- "type": "484"
+ "type": "487"
}
],
"meta-type": "object"
@@ -7118,7 +7128,7 @@
"members": [
{
"name": "arch",
- "type": "484"
+ "type": "487"
}
],
"meta-type": "object"
@@ -7242,7 +7252,7 @@
},
{
"name": "policy",
- "type": "486"
+ "type": "489"
}
],
"meta-type": "object"
@@ -7265,7 +7275,7 @@
},
{
"name": "props",
- "type": "483"
+ "type": "486"
},
{
"name": "qom-path",
@@ -7281,29 +7291,29 @@
"variants": [
{
"case": "node",
- "type": "488"
+ "type": "491"
},
{
"case": "dist",
- "type": "489"
+ "type": "492"
},
{
"case": "cpu",
- "type": "490"
+ "type": "493"
},
{
"case": "hmat-lb",
- "type": "491"
+ "type": "494"
},
{
"case": "hmat-cache",
- "type": "492"
+ "type": "495"
}
],
"members": [
{
"name": "type",
- "type": "487"
+ "type": "490"
}
],
"meta-type": "object"
@@ -7364,29 +7374,29 @@
"variants": [
{
"case": "dimm",
- "type": "494"
+ "type": "497"
},
{
"case": "nvdimm",
- "type": "494"
+ "type": "497"
},
{
"case": "virtio-pmem",
- "type": "495"
+ "type": "498"
},
{
"case": "virtio-mem",
- "type": "496"
+ "type": "499"
},
{
"case": "sgx-epc",
- "type": "497"
+ "type": "500"
}
],
"members": [
{
"name": "type",
- "type": "493"
+ "type": "496"
}
],
"meta-type": "object"
@@ -7449,11 +7459,11 @@
"members": [
{
"name": "type",
- "type": "500"
+ "type": "503"
},
{
"name": "model",
- "type": "498"
+ "type": "501"
}
],
"meta-type": "object"
@@ -7463,7 +7473,7 @@
"members": [
{
"name": "model",
- "type": "498"
+ "type": "501"
}
],
"meta-type": "object"
@@ -7511,11 +7521,11 @@
"meta-type": "object"
},
{
- "name": "220",
+ "name": "223",
"members": [
{
"name": "mode",
- "type": "501"
+ "type": "506"
},
{
"name": "filename",
@@ -7530,7 +7540,7 @@
"meta-type": "object"
},
{
- "name": "221",
+ "name": "224",
"members": [
{
"name": "icount",
@@ -7540,7 +7550,7 @@
"meta-type": "object"
},
{
- "name": "222",
+ "name": "225",
"members": [
{
"name": "icount",
@@ -7550,31 +7560,31 @@
"meta-type": "object"
},
{
- "name": "223",
+ "name": "226",
"members": [
{
"name": "instances",
- "type": "[224]"
+ "type": "[227]"
}
],
"meta-type": "object"
},
{
- "name": "[224]",
- "element-type": "224",
+ "name": "[227]",
+ "element-type": "227",
"meta-type": "array"
},
{
- "name": "224",
+ "name": "227",
"tag": "type",
"variants": [
{
"case": "block-node",
- "type": "503"
+ "type": "508"
},
{
"case": "chardev",
- "type": "504"
+ "type": "509"
},
{
"case": "migration",
@@ -7584,13 +7594,13 @@
"members": [
{
"name": "type",
- "type": "502"
+ "type": "507"
}
],
"meta-type": "object"
},
{
- "name": "225",
+ "name": "228",
"members": [
{
"name": "protocol",
@@ -7614,7 +7624,7 @@
"meta-type": "object"
},
{
- "name": "226",
+ "name": "229",
"members": [
{
"name": "name",
@@ -7625,12 +7635,12 @@
"meta-type": "object"
},
{
- "name": "[227]",
- "element-type": "227",
+ "name": "[230]",
+ "element-type": "230",
"meta-type": "array"
},
{
- "name": "227",
+ "name": "230",
"members": [
{
"name": "id",
@@ -7660,7 +7670,7 @@
"meta-type": "object"
},
{
- "name": "228",
+ "name": "231",
"members": [
{
"name": "command-line",
@@ -7675,7 +7685,7 @@
"meta-type": "object"
},
{
- "name": "229",
+ "name": "232",
"members": [
{
"name": "fdname",
@@ -7685,7 +7695,7 @@
"meta-type": "object"
},
{
- "name": "231",
+ "name": "234",
"members": [
{
"name": "fdname",
@@ -7695,7 +7705,7 @@
"meta-type": "object"
},
{
- "name": "232",
+ "name": "235",
"members": [
{
"name": "fdset-id",
@@ -7711,7 +7721,7 @@
"meta-type": "object"
},
{
- "name": "233",
+ "name": "236",
"members": [
{
"name": "fdset-id",
@@ -7725,7 +7735,7 @@
"meta-type": "object"
},
{
- "name": "234",
+ "name": "237",
"members": [
{
"name": "fdset-id",
@@ -7740,12 +7750,12 @@
"meta-type": "object"
},
{
- "name": "[235]",
- "element-type": "235",
+ "name": "[238]",
+ "element-type": "238",
"meta-type": "array"
},
{
- "name": "235",
+ "name": "238",
"members": [
{
"name": "fdset-id",
@@ -7753,13 +7763,13 @@
},
{
"name": "fds",
- "type": "[505]"
+ "type": "[510]"
}
],
"meta-type": "object"
},
{
- "name": "236",
+ "name": "239",
"members": [
{
"name": "option",
@@ -7770,12 +7780,12 @@
"meta-type": "object"
},
{
- "name": "[237]",
- "element-type": "237",
+ "name": "[240]",
+ "element-type": "240",
"meta-type": "array"
},
{
- "name": "237",
+ "name": "240",
"members": [
{
"name": "option",
@@ -7783,13 +7793,13 @@
},
{
"name": "parameters",
- "type": "[506]"
+ "type": "[511]"
}
],
"meta-type": "object"
},
{
- "name": "238",
+ "name": "241",
"members": [
{
"name": "offset",
@@ -7803,7 +7813,7 @@
"meta-type": "object"
},
{
- "name": "239",
+ "name": "242",
"members": [
{
"name": "vfu-id",
@@ -7825,7 +7835,7 @@
"meta-type": "object"
},
{
- "name": "240",
+ "name": "243",
"members": [
{
"name": "enabled",
@@ -7849,7 +7859,7 @@
},
{
"name": "state",
- "type": "507"
+ "type": "512"
},
{
"name": "handle",
@@ -7859,7 +7869,7 @@
"meta-type": "object"
},
{
- "name": "241",
+ "name": "244",
"members": [
{
"name": "data",
@@ -7869,7 +7879,7 @@
"meta-type": "object"
},
{
- "name": "242",
+ "name": "245",
"members": [
{
"name": "pdh",
@@ -7895,7 +7905,7 @@
"meta-type": "object"
},
{
- "name": "243",
+ "name": "246",
"members": [
{
"name": "packet-header",
@@ -7914,7 +7924,7 @@
"meta-type": "object"
},
{
- "name": "244",
+ "name": "247",
"members": [
{
"name": "mnonce",
@@ -7924,7 +7934,7 @@
"meta-type": "object"
},
{
- "name": "245",
+ "name": "248",
"members": [
{
"name": "data",
@@ -7934,7 +7944,7 @@
"meta-type": "object"
},
{
- "name": "248",
+ "name": "251",
"members": [
{
"name": "sgx",
@@ -7954,18 +7964,18 @@
},
{
"name": "sections",
- "type": "[508]"
+ "type": "[513]"
}
],
"meta-type": "object"
},
{
- "name": "[249]",
- "element-type": "249",
+ "name": "[252]",
+ "element-type": "252",
"meta-type": "array"
},
{
- "name": "249",
+ "name": "252",
"members": [
{
"name": "port",
@@ -7977,7 +7987,7 @@
},
{
"name": "type",
- "type": "509"
+ "type": "514"
},
{
"name": "remote-domain",
@@ -7999,7 +8009,7 @@
"meta-type": "object"
},
{
- "name": "250",
+ "name": "253",
"members": [
{
"name": "port",
@@ -8009,45 +8019,45 @@
"meta-type": "object"
},
{
- "name": "[251]",
- "element-type": "251",
+ "name": "[254]",
+ "element-type": "254",
"meta-type": "array"
},
{
- "name": "251",
+ "name": "254",
"tag": "driver",
"variants": [
{
"case": "none",
- "type": "511"
+ "type": "516"
},
{
"case": "alsa",
- "type": "512"
+ "type": "517"
},
{
"case": "dbus",
- "type": "511"
+ "type": "516"
},
{
"case": "oss",
- "type": "516"
+ "type": "521"
},
{
"case": "pa",
- "type": "517"
+ "type": "522"
},
{
"case": "sdl",
- "type": "519"
+ "type": "524"
},
{
"case": "spice",
- "type": "511"
+ "type": "516"
},
{
"case": "wav",
- "type": "521"
+ "type": "526"
}
],
"members": [
@@ -8057,7 +8067,7 @@
},
{
"name": "driver",
- "type": "510"
+ "type": "515"
},
{
"name": "timer-period",
@@ -8068,12 +8078,12 @@
"meta-type": "object"
},
{
- "name": "[252]",
- "element-type": "252",
+ "name": "[255]",
+ "element-type": "255",
"meta-type": "array"
},
{
- "name": "252",
+ "name": "255",
"members": [
{
"name": "device",
@@ -8086,7 +8096,7 @@
},
{
"name": "slot-type",
- "type": "522"
+ "type": "527"
},
{
"name": "source",
@@ -8100,22 +8110,22 @@
"meta-type": "object"
},
{
- "name": "253",
+ "name": "256",
"members": [
{
"name": "info",
- "type": "252"
+ "type": "255"
}
],
"meta-type": "object"
},
{
- "name": "[254]",
- "element-type": "254",
+ "name": "[257]",
+ "element-type": "257",
"meta-type": "array"
},
{
- "name": "254",
+ "name": "257",
"members": [
{
"name": "bus",
@@ -8123,18 +8133,18 @@
},
{
"name": "devices",
- "type": "[523]"
+ "type": "[528]"
}
],
"meta-type": "object"
},
{
- "name": "255",
+ "name": "258",
"tag": "target",
"variants": [
{
"case": "vcpu",
- "type": "526"
+ "type": "531"
},
{
"case": "vm",
@@ -8148,27 +8158,27 @@
"members": [
{
"name": "target",
- "type": "524"
+ "type": "529"
},
{
"name": "providers",
"default": null,
- "type": "[525]"
+ "type": "[530]"
}
],
"meta-type": "object"
},
{
- "name": "[256]",
- "element-type": "256",
+ "name": "[259]",
+ "element-type": "259",
"meta-type": "array"
},
{
- "name": "256",
+ "name": "259",
"members": [
{
"name": "provider",
- "type": "527"
+ "type": "532"
},
{
"name": "qom-path",
@@ -8177,52 +8187,52 @@
},
{
"name": "stats",
- "type": "[528]"
+ "type": "[533]"
}
],
"meta-type": "object"
},
{
- "name": "257",
+ "name": "260",
"members": [
{
"name": "provider",
"default": null,
- "type": "527"
+ "type": "532"
}
],
"meta-type": "object"
},
{
- "name": "[258]",
- "element-type": "258",
+ "name": "[261]",
+ "element-type": "261",
"meta-type": "array"
},
{
- "name": "258",
+ "name": "261",
"members": [
{
"name": "provider",
- "type": "527"
+ "type": "532"
},
{
"name": "target",
- "type": "524"
+ "type": "529"
},
{
"name": "stats",
- "type": "[529]"
+ "type": "[534]"
}
],
"meta-type": "object"
},
{
- "name": "[259]",
- "element-type": "259",
+ "name": "[262]",
+ "element-type": "262",
"meta-type": "array"
},
{
- "name": "259",
+ "name": "262",
"members": [
{
"name": "path",
@@ -8236,7 +8246,7 @@
"meta-type": "object"
},
{
- "name": "260",
+ "name": "263",
"members": [
{
"name": "path",
@@ -8246,7 +8256,7 @@
"meta-type": "object"
},
{
- "name": "261",
+ "name": "264",
"members": [
{
"name": "name",
@@ -8266,15 +8276,15 @@
},
{
"name": "guest-features",
- "type": "530"
+ "type": "535"
},
{
"name": "host-features",
- "type": "530"
+ "type": "535"
},
{
"name": "backend-features",
- "type": "530"
+ "type": "535"
},
{
"name": "num-vqs",
@@ -8282,7 +8292,7 @@
},
{
"name": "status",
- "type": "531"
+ "type": "536"
},
{
"name": "isr",
@@ -8331,13 +8341,13 @@
{
"name": "vhost-dev",
"default": null,
- "type": "532"
+ "type": "537"
}
],
"meta-type": "object"
},
{
- "name": "262",
+ "name": "265",
"members": [
{
"name": "path",
@@ -8351,7 +8361,7 @@
"meta-type": "object"
},
{
- "name": "263",
+ "name": "266",
"members": [
{
"name": "name",
@@ -8415,7 +8425,7 @@
"meta-type": "object"
},
{
- "name": "264",
+ "name": "267",
"members": [
{
"name": "path",
@@ -8429,7 +8439,7 @@
"meta-type": "object"
},
{
- "name": "265",
+ "name": "268",
"members": [
{
"name": "name",
@@ -8487,7 +8497,7 @@
"meta-type": "object"
},
{
- "name": "266",
+ "name": "269",
"members": [
{
"name": "path",
@@ -8506,7 +8516,7 @@
"meta-type": "object"
},
{
- "name": "267",
+ "name": "270",
"members": [
{
"name": "name",
@@ -8518,26 +8528,26 @@
},
{
"name": "descs",
- "type": "[533]"
+ "type": "[538]"
},
{
"name": "avail",
- "type": "534"
+ "type": "539"
},
{
"name": "used",
- "type": "535"
+ "type": "540"
}
],
"meta-type": "object"
},
{
- "name": "[268]",
- "element-type": "268",
+ "name": "[271]",
+ "element-type": "271",
"meta-type": "array"
},
{
- "name": "268",
+ "name": "271",
"members": [
{
"name": "id",
@@ -8545,17 +8555,17 @@
},
{
"name": "service",
- "type": "[536]"
+ "type": "[541]"
},
{
"name": "client",
- "type": "[537]"
+ "type": "[542]"
}
],
"meta-type": "object"
},
{
- "name": "269",
+ "name": "272",
"members": [
{
"name": "path",
@@ -8563,7 +8573,7 @@
},
{
"name": "log",
- "type": "538"
+ "type": "543"
},
{
"name": "flags",
@@ -8609,7 +8619,7 @@
"meta-type": "object"
},
{
- "name": "270",
+ "name": "273",
"members": [
{
"name": "path",
@@ -8617,7 +8627,7 @@
},
{
"name": "log",
- "type": "538"
+ "type": "543"
},
{
"name": "flags",
@@ -8683,7 +8693,7 @@
"meta-type": "object"
},
{
- "name": "271",
+ "name": "274",
"members": [
{
"name": "path",
@@ -8691,7 +8701,7 @@
},
{
"name": "log",
- "type": "538"
+ "type": "543"
},
{
"name": "flags",
@@ -8737,7 +8747,7 @@
"meta-type": "object"
},
{
- "name": "272",
+ "name": "275",
"members": [
{
"name": "path",
@@ -8755,7 +8765,7 @@
"meta-type": "object"
},
{
- "name": "273",
+ "name": "276",
"members": [
{
"name": "path",
@@ -8763,13 +8773,13 @@
},
{
"name": "errors",
- "type": "[539]"
+ "type": "[544]"
}
],
"meta-type": "object"
},
{
- "name": "274",
+ "name": "277",
"members": [
{
"name": "path",
@@ -8777,7 +8787,7 @@
},
{
"name": "type",
- "type": "540"
+ "type": "545"
}
],
"meta-type": "object"
@@ -8788,7 +8798,7 @@
"meta-type": "builtin"
},
{
- "name": "275",
+ "name": "278",
"members": [
{
"name": "debug"
@@ -8860,7 +8870,7 @@
]
},
{
- "name": "276",
+ "name": "279",
"members": [
{
"name": "none"
@@ -8912,7 +8922,7 @@
]
},
{
- "name": "277",
+ "name": "280",
"members": [
{
"name": "reset"
@@ -8948,7 +8958,7 @@
]
},
{
- "name": "278",
+ "name": "281",
"members": [
{
"name": "reset"
@@ -8964,7 +8974,7 @@
]
},
{
- "name": "279",
+ "name": "282",
"members": [
{
"name": "poweroff"
@@ -8980,7 +8990,7 @@
]
},
{
- "name": "280",
+ "name": "283",
"members": [
{
"name": "pause"
@@ -9004,7 +9014,7 @@
]
},
{
- "name": "281",
+ "name": "284",
"members": [
{
"name": "pause"
@@ -9024,28 +9034,28 @@
]
},
{
- "name": "282",
+ "name": "285",
"tag": "type",
"variants": [
{
"case": "hyper-v",
- "type": "542"
+ "type": "547"
},
{
"case": "s390",
- "type": "543"
+ "type": "548"
}
],
"members": [
{
"name": "type",
- "type": "541"
+ "type": "546"
}
],
"meta-type": "object"
},
{
- "name": "283",
+ "name": "286",
"members": [
{
"name": "hypervisor"
@@ -9061,7 +9071,7 @@
]
},
{
- "name": "284",
+ "name": "287",
"members": [
{
"name": "ignore"
@@ -9085,7 +9095,7 @@
]
},
{
- "name": "285",
+ "name": "288",
"members": [
{
"name": "action-required",
@@ -9099,7 +9109,7 @@
"meta-type": "object"
},
{
- "name": "286",
+ "name": "289",
"members": [
{
"name": "undefined"
@@ -9151,7 +9161,7 @@
]
},
{
- "name": "287",
+ "name": "290",
"members": [
{
"name": "commit"
@@ -9200,7 +9210,7 @@
"meta-type": "builtin"
},
{
- "name": "288",
+ "name": "291",
"members": [
{
"name": "retain"
@@ -9225,7 +9235,7 @@
"meta-type": "array"
},
{
- "name": "289",
+ "name": "292",
"members": [
{
"name": "ok"
@@ -9245,7 +9255,7 @@
]
},
{
- "name": "290",
+ "name": "293",
"members": [
{
"name": "rd_bytes",
@@ -9378,46 +9388,46 @@
},
{
"name": "timed_stats",
- "type": "[544]"
+ "type": "[549]"
},
{
"name": "rd_latency_histogram",
"default": null,
- "type": "545"
+ "type": "550"
},
{
"name": "wr_latency_histogram",
"default": null,
- "type": "545"
+ "type": "550"
},
{
"name": "zone_append_latency_histogram",
"default": null,
- "type": "545"
+ "type": "550"
},
{
"name": "flush_latency_histogram",
"default": null,
- "type": "545"
+ "type": "550"
}
],
"meta-type": "object"
},
{
- "name": "291",
+ "name": "294",
"tag": "driver",
"variants": [
{
"case": "file",
- "type": "546"
+ "type": "551"
},
{
"case": "host_device",
- "type": "546"
+ "type": "551"
},
{
"case": "nvme",
- "type": "547"
+ "type": "552"
},
{
"case": "blkdebug",
@@ -9599,13 +9609,13 @@
"members": [
{
"name": "driver",
- "type": "305"
+ "type": "308"
}
],
"meta-type": "object"
},
{
- "name": "292",
+ "name": "295",
"members": [
{
"name": "existing"
@@ -9621,7 +9631,7 @@
]
},
{
- "name": "293",
+ "name": "296",
"members": [
{
"name": "report"
@@ -9649,7 +9659,7 @@
]
},
{
- "name": "294",
+ "name": "297",
"members": [
{
"name": "top"
@@ -9677,7 +9687,7 @@
]
},
{
- "name": "295",
+ "name": "298",
"members": [
{
"name": "on-success"
@@ -9697,7 +9707,7 @@
]
},
{
- "name": "296",
+ "name": "299",
"members": [
{
"name": "use-copy-range",
@@ -9718,7 +9728,7 @@
"meta-type": "object"
},
{
- "name": "297",
+ "name": "300",
"members": [
{
"name": "off"
@@ -9738,7 +9748,7 @@
]
},
{
- "name": "298",
+ "name": "301",
"members": [
{
"name": "filename",
@@ -9800,18 +9810,18 @@
{
"name": "format-specific",
"default": null,
- "type": "548"
+ "type": "553"
},
{
"name": "backing-image",
"default": null,
- "type": "298"
+ "type": "301"
}
],
"meta-type": "object"
},
{
- "name": "299",
+ "name": "302",
"members": [
{
"name": "writeback",
@@ -9829,12 +9839,12 @@
"meta-type": "object"
},
{
- "name": "[300]",
- "element-type": "300",
+ "name": "[303]",
+ "element-type": "303",
"meta-type": "array"
},
{
- "name": "300",
+ "name": "303",
"members": [
{
"name": "name",
@@ -9870,12 +9880,12 @@
"meta-type": "object"
},
{
- "name": "[301]",
- "element-type": "301",
+ "name": "[304]",
+ "element-type": "304",
"meta-type": "array"
},
{
- "name": "301",
+ "name": "304",
"members": [
{
"name": "id",
@@ -9883,7 +9893,7 @@
},
{
"name": "type",
- "type": "549"
+ "type": "554"
},
{
"name": "name",
@@ -9893,12 +9903,12 @@
"meta-type": "object"
},
{
- "name": "[302]",
- "element-type": "302",
+ "name": "[305]",
+ "element-type": "305",
"meta-type": "array"
},
{
- "name": "302",
+ "name": "305",
"members": [
{
"name": "parent",
@@ -9914,17 +9924,17 @@
},
{
"name": "perm",
- "type": "[550]"
+ "type": "[555]"
},
{
"name": "shared-perm",
- "type": "[550]"
+ "type": "[555]"
}
],
"meta-type": "object"
},
{
- "name": "303",
+ "name": "306",
"members": [
{
"name": "background"
@@ -9940,12 +9950,12 @@
]
},
{
- "name": "[304]",
- "element-type": "304",
+ "name": "[307]",
+ "element-type": "307",
"meta-type": "array"
},
{
- "name": "304",
+ "name": "307",
"members": [
{
"type": "str"
@@ -9957,7 +9967,7 @@
"meta-type": "alternate"
},
{
- "name": "305",
+ "name": "308",
"members": [
{
"name": "blkdebug"
@@ -10153,7 +10163,7 @@
]
},
{
- "name": "306",
+ "name": "309",
"members": [
{
"name": "ignore"
@@ -10169,7 +10179,7 @@
]
},
{
- "name": "307",
+ "name": "310",
"members": [
{
"name": "direct",
@@ -10185,11 +10195,11 @@
"meta-type": "object"
},
{
- "name": "308",
+ "name": "311",
"members": [
{
"name": "image",
- "type": "551"
+ "type": "556"
},
{
"name": "config",
@@ -10229,36 +10239,36 @@
{
"name": "inject-error",
"default": null,
- "type": "[552]"
+ "type": "[557]"
},
{
"name": "set-state",
"default": null,
- "type": "[553]"
+ "type": "[558]"
},
{
"name": "take-child-perms",
"default": null,
- "type": "[550]"
+ "type": "[555]"
},
{
"name": "unshare-child-perms",
"default": null,
- "type": "[550]"
+ "type": "[555]"
}
],
"meta-type": "object"
},
{
- "name": "309",
+ "name": "312",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "log",
- "type": "551"
+ "type": "556"
},
{
"name": "log-sector-size",
@@ -10279,49 +10289,49 @@
"meta-type": "object"
},
{
- "name": "310",
+ "name": "313",
"members": [
{
"name": "test",
- "type": "551"
+ "type": "556"
},
{
"name": "raw",
- "type": "551"
+ "type": "556"
}
],
"meta-type": "object"
},
{
- "name": "311",
+ "name": "314",
"members": [
{
"name": "image",
- "type": "551"
+ "type": "556"
}
],
"meta-type": "object"
},
{
- "name": "312",
+ "name": "315",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
}
],
"meta-type": "object"
},
{
- "name": "313",
+ "name": "316",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "target",
- "type": "551"
+ "type": "556"
},
{
"name": "bitmap",
@@ -10331,7 +10341,7 @@
{
"name": "on-cbw-error",
"default": null,
- "type": "554"
+ "type": "559"
},
{
"name": "cbw-timeout",
@@ -10342,11 +10352,11 @@
"meta-type": "object"
},
{
- "name": "314",
+ "name": "317",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "bottom",
@@ -10357,7 +10367,7 @@
"meta-type": "object"
},
{
- "name": "315",
+ "name": "318",
"members": [
{
"name": "filename",
@@ -10371,12 +10381,12 @@
{
"name": "locking",
"default": null,
- "type": "555"
+ "type": "560"
},
{
"name": "aio",
"default": null,
- "type": "556"
+ "type": "561"
},
{
"name": "aio-max-batch",
@@ -10403,7 +10413,7 @@
]
},
{
- "name": "316",
+ "name": "319",
"members": [
{
"name": "url",
@@ -10443,7 +10453,7 @@
"meta-type": "object"
},
{
- "name": "317",
+ "name": "320",
"members": [
{
"name": "url",
@@ -10488,7 +10498,7 @@
"meta-type": "object"
},
{
- "name": "318",
+ "name": "321",
"members": [
{
"name": "volume",
@@ -10500,7 +10510,7 @@
},
{
"name": "server",
- "type": "[379]"
+ "type": "[382]"
},
{
"name": "debug",
@@ -10516,7 +10526,7 @@
"meta-type": "object"
},
{
- "name": "319",
+ "name": "322",
"members": [
{
"name": "url",
@@ -10566,7 +10576,7 @@
"meta-type": "object"
},
{
- "name": "320",
+ "name": "323",
"members": [
{
"name": "url",
@@ -10621,7 +10631,7 @@
"meta-type": "object"
},
{
- "name": "321",
+ "name": "324",
"members": [
{
"name": "filename",
@@ -10631,11 +10641,11 @@
"meta-type": "object"
},
{
- "name": "322",
+ "name": "325",
"members": [
{
"name": "transport",
- "type": "557"
+ "type": "562"
},
{
"name": "portal",
@@ -10668,7 +10678,7 @@
{
"name": "header-digest",
"default": null,
- "type": "558"
+ "type": "563"
},
{
"name": "timeout",
@@ -10679,11 +10689,11 @@
"meta-type": "object"
},
{
- "name": "323",
+ "name": "326",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "key-secret",
@@ -10694,11 +10704,11 @@
"meta-type": "object"
},
{
- "name": "324",
+ "name": "327",
"members": [
{
"name": "server",
- "type": "379"
+ "type": "382"
},
{
"name": "export",
@@ -10737,11 +10747,11 @@
"meta-type": "object"
},
{
- "name": "325",
+ "name": "328",
"members": [
{
"name": "server",
- "type": "559"
+ "type": "564"
},
{
"name": "path",
@@ -10781,7 +10791,7 @@
"meta-type": "object"
},
{
- "name": "326",
+ "name": "329",
"members": [
{
"name": "size",
@@ -10802,7 +10812,7 @@
"meta-type": "object"
},
{
- "name": "327",
+ "name": "330",
"members": [
{
"name": "device",
@@ -10816,7 +10826,7 @@
"meta-type": "object"
},
{
- "name": "328",
+ "name": "331",
"members": [
{
"name": "path",
@@ -10826,11 +10836,11 @@
"meta-type": "object"
},
{
- "name": "329",
+ "name": "332",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "prealloc-align",
@@ -10846,16 +10856,16 @@
"meta-type": "object"
},
{
- "name": "330",
+ "name": "333",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "backing",
"default": null,
- "type": "560"
+ "type": "565"
},
{
"name": "lazy-refcounts",
@@ -10885,7 +10895,7 @@
{
"name": "overlap-check",
"default": null,
- "type": "561"
+ "type": "566"
},
{
"name": "cache-size",
@@ -10915,53 +10925,53 @@
{
"name": "encrypt",
"default": null,
- "type": "562"
+ "type": "567"
},
{
"name": "data-file",
"default": null,
- "type": "551"
+ "type": "556"
}
],
"meta-type": "object"
},
{
- "name": "331",
+ "name": "334",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "backing",
"default": null,
- "type": "560"
+ "type": "565"
},
{
"name": "encrypt",
"default": null,
- "type": "563"
+ "type": "568"
}
],
"meta-type": "object"
},
{
- "name": "332",
+ "name": "335",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "backing",
"default": null,
- "type": "560"
+ "type": "565"
}
],
"meta-type": "object"
},
{
- "name": "333",
+ "name": "336",
"members": [
{
"name": "blkverify",
@@ -10970,7 +10980,7 @@
},
{
"name": "children",
- "type": "[551]"
+ "type": "[556]"
},
{
"name": "vote-threshold",
@@ -10984,17 +10994,17 @@
{
"name": "read-pattern",
"default": null,
- "type": "564"
+ "type": "569"
}
],
"meta-type": "object"
},
{
- "name": "334",
+ "name": "337",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "offset",
@@ -11010,7 +11020,7 @@
"meta-type": "object"
},
{
- "name": "335",
+ "name": "338",
"members": [
{
"name": "pool",
@@ -11038,7 +11048,7 @@
{
"name": "encrypt",
"default": null,
- "type": "565"
+ "type": "570"
},
{
"name": "user",
@@ -11048,7 +11058,7 @@
{
"name": "auth-client-required",
"default": null,
- "type": "[566]"
+ "type": "[571]"
},
{
"name": "key-secret",
@@ -11058,21 +11068,21 @@
{
"name": "server",
"default": null,
- "type": "[567]"
+ "type": "[572]"
}
],
"meta-type": "object"
},
{
- "name": "336",
+ "name": "339",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "mode",
- "type": "568"
+ "type": "573"
},
{
"name": "top-id",
@@ -11083,11 +11093,11 @@
"meta-type": "object"
},
{
- "name": "337",
+ "name": "340",
"members": [
{
"name": "server",
- "type": "569"
+ "type": "574"
},
{
"name": "path",
@@ -11101,13 +11111,13 @@
{
"name": "host-key-check",
"default": null,
- "type": "570"
+ "type": "575"
}
],
"meta-type": "object"
},
{
- "name": "338",
+ "name": "341",
"members": [
{
"name": "throttle-group",
@@ -11115,13 +11125,13 @@
},
{
"name": "file",
- "type": "551"
+ "type": "556"
}
],
"meta-type": "object"
},
{
- "name": "339",
+ "name": "342",
"members": [
{
"name": "path",
@@ -11131,7 +11141,7 @@
"meta-type": "object"
},
{
- "name": "340",
+ "name": "343",
"members": [
{
"name": "path",
@@ -11141,7 +11151,7 @@
"meta-type": "object"
},
{
- "name": "341",
+ "name": "344",
"members": [
{
"name": "path",
@@ -11154,7 +11164,7 @@
]
},
{
- "name": "342",
+ "name": "345",
"members": [
{
"name": "dir",
@@ -11189,64 +11199,64 @@
"meta-type": "array"
},
{
- "name": "343",
+ "name": "346",
"tag": "driver",
"variants": [
{
"case": "file",
- "type": "571"
+ "type": "576"
},
{
"case": "gluster",
- "type": "572"
+ "type": "577"
},
{
"case": "luks",
- "type": "573"
+ "type": "578"
},
{
"case": "nfs",
- "type": "574"
+ "type": "579"
},
{
"case": "parallels",
- "type": "575"
+ "type": "580"
},
{
"case": "qcow",
- "type": "576"
+ "type": "581"
},
{
"case": "qcow2",
- "type": "577"
+ "type": "582"
},
{
"case": "qed",
- "type": "578"
+ "type": "583"
},
{
"case": "rbd",
- "type": "579"
+ "type": "584"
},
{
"case": "ssh",
- "type": "580"
+ "type": "585"
},
{
"case": "vdi",
- "type": "581"
+ "type": "586"
},
{
"case": "vhdx",
- "type": "582"
+ "type": "587"
},
{
"case": "vmdk",
- "type": "583"
+ "type": "588"
},
{
"case": "vpc",
- "type": "584"
+ "type": "589"
},
{
"case": "blkdebug",
@@ -11384,22 +11394,22 @@
"members": [
{
"name": "driver",
- "type": "305"
+ "type": "308"
}
],
"meta-type": "object"
},
{
- "name": "344",
+ "name": "347",
"tag": "driver",
"variants": [
{
"case": "luks",
- "type": "585"
+ "type": "590"
},
{
"case": "qcow2",
- "type": "586"
+ "type": "591"
},
{
"case": "blkdebug",
@@ -11585,13 +11595,13 @@
"members": [
{
"name": "driver",
- "type": "305"
+ "type": "308"
}
],
"meta-type": "object"
},
{
- "name": "345",
+ "name": "348",
"members": [
{
"name": "read"
@@ -11607,7 +11617,7 @@
]
},
{
- "name": "346",
+ "name": "349",
"members": [
{
"name": "ignore"
@@ -11627,7 +11637,7 @@
]
},
{
- "name": "347",
+ "name": "350",
"members": [
{
"type": "str"
@@ -11639,7 +11649,7 @@
"meta-type": "alternate"
},
{
- "name": "348",
+ "name": "351",
"members": [
{
"name": "read"
@@ -11659,36 +11669,36 @@
]
},
{
- "name": "349",
+ "name": "352",
"tag": "type",
"variants": [
{
"case": "inet",
- "type": "588"
+ "type": "593"
},
{
"case": "unix",
- "type": "589"
+ "type": "594"
},
{
"case": "vsock",
- "type": "590"
+ "type": "595"
},
{
"case": "fd",
- "type": "591"
+ "type": "596"
}
],
"members": [
{
"name": "type",
- "type": "587"
+ "type": "592"
}
],
"meta-type": "object"
},
{
- "name": "350",
+ "name": "353",
"members": [
{
"name": "safe"
@@ -11704,7 +11714,7 @@
]
},
{
- "name": "351",
+ "name": "354",
"members": [
{
"name": "nbd"
@@ -11728,7 +11738,7 @@
]
},
{
- "name": "352",
+ "name": "355",
"members": [
{
"name": "name",
@@ -11743,7 +11753,7 @@
{
"name": "bitmaps",
"default": null,
- "type": "[304]"
+ "type": "[307]"
},
{
"name": "allocation-depth",
@@ -11754,11 +11764,11 @@
"meta-type": "object"
},
{
- "name": "353",
+ "name": "356",
"members": [
{
"name": "addr",
- "type": "379"
+ "type": "382"
},
{
"name": "logical-block-size",
@@ -11774,7 +11784,7 @@
"meta-type": "object"
},
{
- "name": "354",
+ "name": "357",
"members": [
{
"name": "mountpoint",
@@ -11788,13 +11798,13 @@
{
"name": "allow-other",
"default": null,
- "type": "592"
+ "type": "597"
}
],
"meta-type": "object"
},
{
- "name": "355",
+ "name": "358",
"members": [
{
"name": "name",
@@ -11824,7 +11834,7 @@
"meta-type": "object"
},
{
- "name": "356",
+ "name": "359",
"members": [
{
"name": "utf8"
@@ -11840,108 +11850,108 @@
]
},
{
- "name": "357",
+ "name": "360",
"tag": "type",
"variants": [
{
"case": "file",
- "type": "594"
+ "type": "599"
},
{
"case": "serial",
- "type": "595"
+ "type": "600"
},
{
"case": "parallel",
- "type": "595"
+ "type": "600"
},
{
"case": "pipe",
- "type": "595"
+ "type": "600"
},
{
"case": "socket",
- "type": "596"
+ "type": "601"
},
{
"case": "udp",
- "type": "597"
+ "type": "602"
},
{
"case": "pty",
- "type": "598"
+ "type": "603"
},
{
"case": "null",
- "type": "598"
+ "type": "603"
},
{
"case": "mux",
- "type": "599"
+ "type": "604"
},
{
"case": "msmouse",
- "type": "598"
+ "type": "603"
},
{
"case": "wctablet",
- "type": "598"
+ "type": "603"
},
{
"case": "braille",
- "type": "598"
+ "type": "603"
},
{
"case": "testdev",
- "type": "598"
+ "type": "603"
},
{
"case": "stdio",
- "type": "600"
+ "type": "605"
},
{
"case": "console",
- "type": "598"
+ "type": "603"
},
{
"case": "spicevmc",
- "type": "601"
+ "type": "606"
},
{
"case": "spiceport",
- "type": "602"
+ "type": "607"
},
{
"case": "qemu-vdagent",
- "type": "603"
+ "type": "608"
},
{
"case": "dbus",
- "type": "604"
+ "type": "609"
},
{
"case": "vc",
- "type": "605"
+ "type": "610"
},
{
"case": "ringbuf",
- "type": "606"
+ "type": "611"
},
{
"case": "memory",
- "type": "606"
+ "type": "611"
}
],
"members": [
{
"name": "type",
- "type": "593"
+ "type": "598"
}
],
"meta-type": "object"
},
{
- "name": "358",
+ "name": "361",
"members": [
{
"name": "elf"
@@ -11969,7 +11979,7 @@
]
},
{
- "name": "359",
+ "name": "362",
"members": [
{
"name": "none"
@@ -11993,12 +12003,12 @@
]
},
{
- "name": "[358]",
- "element-type": "358",
+ "name": "[361]",
+ "element-type": "361",
"meta-type": "array"
},
{
- "name": "360",
+ "name": "363",
"members": [
{
"name": "none"
@@ -12062,7 +12072,7 @@
]
},
{
- "name": "361",
+ "name": "364",
"members": [
{
"name": "netdev",
@@ -12093,7 +12103,7 @@
"meta-type": "object"
},
{
- "name": "362",
+ "name": "365",
"members": [
{
"name": "hostname",
@@ -12153,7 +12163,7 @@
{
"name": "dnssearch",
"default": null,
- "type": "[607]"
+ "type": "[612]"
},
{
"name": "domainname",
@@ -12193,12 +12203,12 @@
{
"name": "hostfwd",
"default": null,
- "type": "[607]"
+ "type": "[612]"
},
{
"name": "guestfwd",
"default": null,
- "type": "[607]"
+ "type": "[612]"
},
{
"name": "tftp-server-name",
@@ -12209,7 +12219,7 @@
"meta-type": "object"
},
{
- "name": "363",
+ "name": "366",
"members": [
{
"name": "ifname",
@@ -12290,7 +12300,7 @@
"meta-type": "object"
},
{
- "name": "364",
+ "name": "367",
"members": [
{
"name": "src",
@@ -12363,7 +12373,7 @@
"meta-type": "object"
},
{
- "name": "365",
+ "name": "368",
"members": [
{
"name": "fd",
@@ -12399,11 +12409,11 @@
"meta-type": "object"
},
{
- "name": "366",
+ "name": "369",
"members": [
{
"name": "addr",
- "type": "379"
+ "type": "382"
},
{
"name": "server",
@@ -12419,23 +12429,23 @@
"meta-type": "object"
},
{
- "name": "367",
+ "name": "370",
"members": [
{
"name": "local",
"default": null,
- "type": "379"
+ "type": "382"
},
{
"name": "remote",
"default": null,
- "type": "379"
+ "type": "382"
}
],
"meta-type": "object"
},
{
- "name": "368",
+ "name": "371",
"members": [
{
"name": "sock",
@@ -12461,7 +12471,7 @@
"meta-type": "object"
},
{
- "name": "369",
+ "name": "372",
"members": [
{
"name": "br",
@@ -12477,7 +12487,7 @@
"meta-type": "object"
},
{
- "name": "370",
+ "name": "373",
"members": [
{
"name": "hubid",
@@ -12492,7 +12502,7 @@
"meta-type": "object"
},
{
- "name": "371",
+ "name": "374",
"members": [
{
"name": "ifname",
@@ -12507,7 +12517,7 @@
"meta-type": "object"
},
{
- "name": "373",
+ "name": "376",
"members": [
{
"name": "chardev",
@@ -12527,7 +12537,7 @@
"meta-type": "object"
},
{
- "name": "374",
+ "name": "377",
"members": [
{
"name": "vhostdev",
@@ -12556,7 +12566,7 @@
"meta-type": "object"
},
{
- "name": "378",
+ "name": "381",
"members": [
{
"name": "normal"
@@ -12581,36 +12591,36 @@
"meta-type": "array"
},
{
- "name": "379",
+ "name": "382",
"tag": "type",
"variants": [
{
"case": "inet",
- "type": "569"
+ "type": "574"
},
{
"case": "unix",
- "type": "609"
+ "type": "614"
},
{
"case": "vsock",
- "type": "610"
+ "type": "615"
},
{
"case": "fd",
- "type": "607"
+ "type": "612"
}
],
"members": [
{
"name": "type",
- "type": "587"
+ "type": "592"
}
],
"meta-type": "object"
},
{
- "name": "380",
+ "name": "383",
"members": [
{
"name": "half"
@@ -12626,7 +12636,7 @@
]
},
{
- "name": "381",
+ "name": "384",
"members": [
{
"name": "off"
@@ -12642,7 +12652,7 @@
]
},
{
- "name": "382",
+ "name": "385",
"members": [
{
"name": "priority",
@@ -12701,7 +12711,7 @@
"meta-type": "object"
},
{
- "name": "383",
+ "name": "386",
"members": [
{
"name": "in-pport",
@@ -12742,7 +12752,7 @@
"meta-type": "object"
},
{
- "name": "384",
+ "name": "387",
"members": [
{
"name": "goto-tbl",
@@ -12778,16 +12788,16 @@
"meta-type": "object"
},
{
- "name": "385",
+ "name": "388",
"tag": "type",
"variants": [
{
"case": "passthrough",
- "type": "611"
+ "type": "616"
},
{
"case": "emulator",
- "type": "612"
+ "type": "617"
}
],
"members": [
@@ -12799,7 +12809,7 @@
"meta-type": "object"
},
{
- "name": "386",
+ "name": "389",
"members": [
{
"name": "vnc"
@@ -12815,7 +12825,7 @@
]
},
{
- "name": "387",
+ "name": "390",
"members": [
{
"name": "keep"
@@ -12835,7 +12845,7 @@
]
},
{
- "name": "388",
+ "name": "391",
"members": [
{
"name": "display",
@@ -12846,7 +12856,7 @@
"meta-type": "object"
},
{
- "name": "389",
+ "name": "392",
"members": [
{
"name": "display",
@@ -12857,7 +12867,7 @@
"meta-type": "object"
},
{
- "name": "390",
+ "name": "393",
"members": [
{
"name": "ppm"
@@ -12873,7 +12883,7 @@
]
},
{
- "name": "391",
+ "name": "394",
"members": [
{
"name": "client"
@@ -12893,12 +12903,12 @@
]
},
{
- "name": "[392]",
- "element-type": "392",
+ "name": "[395]",
+ "element-type": "395",
"meta-type": "array"
},
{
- "name": "392",
+ "name": "395",
"members": [
{
"name": "host",
@@ -12910,7 +12920,7 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
},
{
"name": "connection-id",
@@ -12932,7 +12942,7 @@
"meta-type": "object"
},
{
- "name": "393",
+ "name": "396",
"members": [
{
"name": "host",
@@ -12944,13 +12954,13 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
}
],
"meta-type": "object"
},
{
- "name": "394",
+ "name": "397",
"members": [
{
"name": "host",
@@ -12962,7 +12972,7 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
},
{
"name": "auth",
@@ -12973,7 +12983,7 @@
"meta-type": "object"
},
{
- "name": "395",
+ "name": "398",
"members": [
{
"name": "ipv4"
@@ -13001,12 +13011,12 @@
]
},
{
- "name": "[396]",
- "element-type": "396",
+ "name": "[399]",
+ "element-type": "399",
"meta-type": "array"
},
{
- "name": "396",
+ "name": "399",
"members": [
{
"name": "host",
@@ -13018,7 +13028,7 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
},
{
"name": "websocket",
@@ -13038,12 +13048,12 @@
"meta-type": "object"
},
{
- "name": "[397]",
- "element-type": "397",
+ "name": "[400]",
+ "element-type": "400",
"meta-type": "array"
},
{
- "name": "397",
+ "name": "400",
"members": [
{
"name": "host",
@@ -13055,7 +13065,7 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
},
{
"name": "websocket",
@@ -13063,18 +13073,18 @@
},
{
"name": "auth",
- "type": "398"
+ "type": "401"
},
{
"name": "vencrypt",
"default": null,
- "type": "399"
+ "type": "402"
}
],
"meta-type": "object"
},
{
- "name": "398",
+ "name": "401",
"members": [
{
"name": "none"
@@ -13118,7 +13128,7 @@
]
},
{
- "name": "399",
+ "name": "402",
"members": [
{
"name": "plain"
@@ -13162,7 +13172,7 @@
]
},
{
- "name": "400",
+ "name": "403",
"members": [
{
"name": "host",
@@ -13174,7 +13184,7 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
},
{
"name": "websocket",
@@ -13189,7 +13199,7 @@
"meta-type": "object"
},
{
- "name": "401",
+ "name": "404",
"members": [
{
"name": "host",
@@ -13201,7 +13211,7 @@
},
{
"name": "family",
- "type": "395"
+ "type": "398"
},
{
"name": "websocket",
@@ -13211,71 +13221,71 @@
"meta-type": "object"
},
{
- "name": "[402]",
- "element-type": "402",
+ "name": "[405]",
+ "element-type": "405",
"meta-type": "array"
},
{
- "name": "402",
+ "name": "405",
"tag": "type",
"variants": [
{
"case": "number",
- "type": "614"
+ "type": "619"
},
{
"case": "qcode",
- "type": "615"
+ "type": "620"
}
],
"members": [
{
"name": "type",
- "type": "613"
+ "type": "618"
}
],
"meta-type": "object"
},
{
- "name": "[403]",
- "element-type": "403",
+ "name": "[406]",
+ "element-type": "406",
"meta-type": "array"
},
{
- "name": "403",
+ "name": "406",
"tag": "type",
"variants": [
{
"case": "key",
- "type": "617"
+ "type": "622"
},
{
"case": "btn",
- "type": "618"
+ "type": "623"
},
{
"case": "rel",
- "type": "619"
+ "type": "624"
},
{
"case": "abs",
- "type": "619"
+ "type": "624"
},
{
"case": "mtt",
- "type": "620"
+ "type": "625"
}
],
"members": [
{
"name": "type",
- "type": "616"
+ "type": "621"
}
],
"meta-type": "object"
},
{
- "name": "404",
+ "name": "407",
"members": [
{
"name": "default"
@@ -13311,7 +13321,7 @@
]
},
{
- "name": "405",
+ "name": "408",
"members": [
{
"name": "off"
@@ -13335,7 +13345,7 @@
]
},
{
- "name": "406",
+ "name": "409",
"members": [
{
"name": "grab-on-hover",
@@ -13361,7 +13371,7 @@
"meta-type": "object"
},
{
- "name": "407",
+ "name": "410",
"members": [
{
"name": "left-command-key",
@@ -13382,7 +13392,7 @@
"meta-type": "object"
},
{
- "name": "408",
+ "name": "411",
"members": [
{
"name": "charset",
@@ -13393,7 +13403,7 @@
"meta-type": "object"
},
{
- "name": "409",
+ "name": "412",
"members": [
{
"name": "rendernode",
@@ -13404,7 +13414,7 @@
"meta-type": "object"
},
{
- "name": "410",
+ "name": "413",
"members": [
{
"name": "rendernode",
@@ -13430,18 +13440,18 @@
"meta-type": "object"
},
{
- "name": "411",
+ "name": "414",
"members": [
{
"name": "grab-mod",
"default": null,
- "type": "621"
+ "type": "626"
}
],
"meta-type": "object"
},
{
- "name": "412",
+ "name": "415",
"members": [
{
"name": "vnc"
@@ -13453,7 +13463,7 @@
]
},
{
- "name": "413",
+ "name": "416",
"members": [
{
"name": "tls-certs",
@@ -13464,7 +13474,7 @@
"meta-type": "object"
},
{
- "name": "414",
+ "name": "417",
"members": [
{
"name": "vnc"
@@ -13476,18 +13486,18 @@
]
},
{
- "name": "415",
+ "name": "418",
"members": [
{
"name": "addresses",
"default": null,
- "type": "[379]"
+ "type": "[382]"
}
],
"meta-type": "object"
},
{
- "name": "416",
+ "name": "419",
"members": [
{
"name": "none"
@@ -13551,7 +13561,7 @@
]
},
{
- "name": "417",
+ "name": "420",
"members": [
{
"name": "transferred",
@@ -13632,7 +13642,7 @@
"meta-type": "object"
},
{
- "name": "418",
+ "name": "421",
"members": [
{
"name": "transferred",
@@ -13642,7 +13652,7 @@
"meta-type": "object"
},
{
- "name": "419",
+ "name": "422",
"members": [
{
"name": "cache-size",
@@ -13676,7 +13686,7 @@
"meta-type": "object"
},
{
- "name": "420",
+ "name": "423",
"members": [
{
"name": "pages",
@@ -13702,12 +13712,12 @@
"meta-type": "object"
},
{
- "name": "[379]",
- "element-type": "379",
+ "name": "[382]",
+ "element-type": "382",
"meta-type": "array"
},
{
- "name": "421",
+ "name": "424",
"members": [
{
"name": "xbzrle"
@@ -13813,7 +13823,7 @@
]
},
{
- "name": "422",
+ "name": "425",
"members": [
{
"name": "none"
@@ -13833,12 +13843,12 @@
]
},
{
- "name": "[423]",
- "element-type": "423",
+ "name": "[426]",
+ "element-type": "426",
"meta-type": "array"
},
{
- "name": "423",
+ "name": "426",
"members": [
{
"name": "node-name",
@@ -13850,13 +13860,13 @@
},
{
"name": "bitmaps",
- "type": "[622]"
+ "type": "[627]"
}
],
"meta-type": "object"
},
{
- "name": "424",
+ "name": "427",
"members": [
{
"name": "none"
@@ -13876,7 +13886,7 @@
]
},
{
- "name": "425",
+ "name": "428",
"members": [
{
"name": "none"
@@ -13900,7 +13910,7 @@
]
},
{
- "name": "426",
+ "name": "429",
"members": [
{
"name": "second"
@@ -13916,7 +13926,7 @@
]
},
{
- "name": "427",
+ "name": "430",
"members": [
{
"name": "page-sampling"
@@ -13936,7 +13946,7 @@
]
},
{
- "name": "428",
+ "name": "431",
"members": [
{
"name": "unstarted"
@@ -13956,12 +13966,12 @@
]
},
{
- "name": "[429]",
- "element-type": "429",
+ "name": "[432]",
+ "element-type": "432",
"meta-type": "array"
},
{
- "name": "429",
+ "name": "432",
"members": [
{
"name": "id",
@@ -13975,84 +13985,84 @@
"meta-type": "object"
},
{
- "name": "[430]",
- "element-type": "430",
+ "name": "[433]",
+ "element-type": "433",
"meta-type": "array"
},
{
- "name": "430",
+ "name": "433",
"tag": "type",
"variants": [
{
"case": "abort",
- "type": "624"
+ "type": "629"
},
{
"case": "block-dirty-bitmap-add",
- "type": "625"
+ "type": "630"
},
{
"case": "block-dirty-bitmap-remove",
- "type": "626"
+ "type": "631"
},
{
"case": "block-dirty-bitmap-clear",
- "type": "626"
+ "type": "631"
},
{
"case": "block-dirty-bitmap-enable",
- "type": "626"
+ "type": "631"
},
{
"case": "block-dirty-bitmap-disable",
- "type": "626"
+ "type": "631"
},
{
"case": "block-dirty-bitmap-merge",
- "type": "627"
+ "type": "632"
},
{
"case": "blockdev-backup",
- "type": "628"
+ "type": "633"
},
{
"case": "blockdev-snapshot",
- "type": "629"
+ "type": "634"
},
{
"case": "blockdev-snapshot-internal-sync",
- "type": "630"
+ "type": "635"
},
{
"case": "blockdev-snapshot-sync",
- "type": "631"
+ "type": "636"
},
{
"case": "drive-backup",
- "type": "632"
+ "type": "637"
}
],
"members": [
{
"name": "type",
- "type": "623"
+ "type": "628"
}
],
"meta-type": "object"
},
{
- "name": "431",
+ "name": "434",
"members": [
{
"name": "completion-mode",
"default": null,
- "type": "633"
+ "type": "638"
}
],
"meta-type": "object"
},
{
- "name": "432",
+ "name": "435",
"members": [
{
"name": "unavailable"
@@ -14072,12 +14082,12 @@
]
},
{
- "name": "[433]",
- "element-type": "433",
+ "name": "[436]",
+ "element-type": "436",
"meta-type": "array"
},
{
- "name": "433",
+ "name": "436",
"members": [
{
"name": "oob"
@@ -14089,7 +14099,7 @@
]
},
{
- "name": "434",
+ "name": "437",
"members": [
{
"name": "major",
@@ -14107,7 +14117,7 @@
"meta-type": "object"
},
{
- "name": "435",
+ "name": "438",
"members": [
{
"name": "builtin"
@@ -14143,21 +14153,21 @@
]
},
{
- "name": "436",
+ "name": "439",
"members": [
{
"name": "json-type",
- "type": "634"
+ "type": "639"
}
],
"meta-type": "object"
},
{
- "name": "437",
+ "name": "440",
"members": [
{
"name": "members",
- "type": "[635]"
+ "type": "[640]"
},
{
"name": "values",
@@ -14170,7 +14180,7 @@
"meta-type": "object"
},
{
- "name": "438",
+ "name": "441",
"members": [
{
"name": "element-type",
@@ -14180,11 +14190,11 @@
"meta-type": "object"
},
{
- "name": "439",
+ "name": "442",
"members": [
{
"name": "members",
- "type": "[636]"
+ "type": "[641]"
},
{
"name": "tag",
@@ -14194,23 +14204,23 @@
{
"name": "variants",
"default": null,
- "type": "[637]"
+ "type": "[642]"
}
],
"meta-type": "object"
},
{
- "name": "440",
+ "name": "443",
"members": [
{
"name": "members",
- "type": "[638]"
+ "type": "[643]"
}
],
"meta-type": "object"
},
{
- "name": "441",
+ "name": "444",
"members": [
{
"name": "arg-type",
@@ -14229,7 +14239,7 @@
"meta-type": "object"
},
{
- "name": "442",
+ "name": "445",
"members": [
{
"name": "arg-type",
@@ -14239,7 +14249,7 @@
"meta-type": "object"
},
{
- "name": "443",
+ "name": "446",
"members": [
{
"name": "authz-list"
@@ -14429,23 +14439,23 @@
]
},
{
- "name": "444",
+ "name": "447",
"members": [
{
"name": "policy",
"default": null,
- "type": "639"
+ "type": "644"
},
{
"name": "rules",
"default": null,
- "type": "[640]"
+ "type": "[645]"
}
],
"meta-type": "object"
},
{
- "name": "445",
+ "name": "448",
"members": [
{
"name": "filename",
@@ -14460,7 +14470,7 @@
"meta-type": "object"
},
{
- "name": "446",
+ "name": "449",
"members": [
{
"name": "service",
@@ -14470,7 +14480,7 @@
"meta-type": "object"
},
{
- "name": "447",
+ "name": "450",
"members": [
{
"name": "identity",
@@ -14480,7 +14490,7 @@
"meta-type": "object"
},
{
- "name": "448",
+ "name": "451",
"members": [
{
"name": "if",
@@ -14494,7 +14504,7 @@
"meta-type": "object"
},
{
- "name": "449",
+ "name": "452",
"members": [
{
"name": "primary_in",
@@ -14541,7 +14551,7 @@
"meta-type": "object"
},
{
- "name": "450",
+ "name": "453",
"members": [
{
"name": "queues",
@@ -14562,7 +14572,7 @@
"meta-type": "object"
},
{
- "name": "451",
+ "name": "454",
"members": [
{
"name": "queues",
@@ -14587,7 +14597,7 @@
"meta-type": "object"
},
{
- "name": "452",
+ "name": "455",
"members": [
{
"name": "addr",
@@ -14602,7 +14612,7 @@
"meta-type": "object"
},
{
- "name": "453",
+ "name": "456",
"members": [
{
"name": "netdev",
@@ -14611,7 +14621,7 @@
{
"name": "queue",
"default": null,
- "type": "641"
+ "type": "646"
},
{
"name": "status",
@@ -14626,7 +14636,7 @@
{
"name": "insert",
"default": null,
- "type": "642"
+ "type": "647"
},
{
"name": "interval",
@@ -14636,7 +14646,7 @@
"meta-type": "object"
},
{
- "name": "454",
+ "name": "457",
"members": [
{
"name": "netdev",
@@ -14645,7 +14655,7 @@
{
"name": "queue",
"default": null,
- "type": "641"
+ "type": "646"
},
{
"name": "status",
@@ -14660,7 +14670,7 @@
{
"name": "insert",
"default": null,
- "type": "642"
+ "type": "647"
},
{
"name": "file",
@@ -14675,7 +14685,7 @@
"meta-type": "object"
},
{
- "name": "455",
+ "name": "458",
"members": [
{
"name": "netdev",
@@ -14684,7 +14694,7 @@
{
"name": "queue",
"default": null,
- "type": "641"
+ "type": "646"
},
{
"name": "status",
@@ -14699,7 +14709,7 @@
{
"name": "insert",
"default": null,
- "type": "642"
+ "type": "647"
},
{
"name": "outdev",
@@ -14714,7 +14724,7 @@
"meta-type": "object"
},
{
- "name": "456",
+ "name": "459",
"members": [
{
"name": "netdev",
@@ -14723,7 +14733,7 @@
{
"name": "queue",
"default": null,
- "type": "641"
+ "type": "646"
},
{
"name": "status",
@@ -14738,7 +14748,7 @@
{
"name": "insert",
"default": null,
- "type": "642"
+ "type": "647"
},
{
"name": "indev",
@@ -14759,7 +14769,7 @@
"meta-type": "object"
},
{
- "name": "457",
+ "name": "460",
"members": [
{
"name": "netdev",
@@ -14768,7 +14778,7 @@
{
"name": "queue",
"default": null,
- "type": "641"
+ "type": "646"
},
{
"name": "status",
@@ -14783,13 +14793,13 @@
{
"name": "insert",
"default": null,
- "type": "642"
+ "type": "647"
}
],
"meta-type": "object"
},
{
- "name": "458",
+ "name": "461",
"members": [
{
"name": "netdev",
@@ -14798,7 +14808,7 @@
{
"name": "queue",
"default": null,
- "type": "641"
+ "type": "646"
},
{
"name": "status",
@@ -14813,7 +14823,7 @@
{
"name": "insert",
"default": null,
- "type": "642"
+ "type": "647"
},
{
"name": "vnet_hdr_support",
@@ -14824,7 +14834,7 @@
"meta-type": "object"
},
{
- "name": "459",
+ "name": "462",
"members": [
{
"name": "name",
@@ -14864,7 +14874,7 @@
"meta-type": "object"
},
{
- "name": "460",
+ "name": "463",
"members": [
{
"name": "evdev",
@@ -14883,13 +14893,13 @@
{
"name": "grab-toggle",
"default": null,
- "type": "643"
+ "type": "648"
}
],
"meta-type": "object"
},
{
- "name": "461",
+ "name": "464",
"members": [
{
"name": "aio-max-batch",
@@ -14925,7 +14935,7 @@
"meta-type": "object"
},
{
- "name": "462",
+ "name": "465",
"members": [
{
"name": "aio-max-batch",
@@ -14946,7 +14956,7 @@
"meta-type": "object"
},
{
- "name": "463",
+ "name": "466",
"members": [
{
"name": "dump",
@@ -14966,7 +14976,7 @@
{
"name": "policy",
"default": null,
- "type": "486"
+ "type": "489"
},
{
"name": "prealloc",
@@ -15006,7 +15016,7 @@
"meta-type": "object"
},
{
- "name": "464",
+ "name": "467",
"members": [
{
"name": "dump",
@@ -15026,7 +15036,7 @@
{
"name": "policy",
"default": null,
- "type": "486"
+ "type": "489"
},
{
"name": "prealloc",
@@ -15094,13 +15104,13 @@
{
"name": "rom",
"default": null,
- "type": "555"
+ "type": "560"
}
],
"meta-type": "object"
},
{
- "name": "465",
+ "name": "468",
"members": [
{
"name": "dump",
@@ -15120,7 +15130,7 @@
{
"name": "policy",
"default": null,
- "type": "486"
+ "type": "489"
},
{
"name": "prealloc",
@@ -15175,7 +15185,7 @@
"meta-type": "object"
},
{
- "name": "466",
+ "name": "469",
"members": [
{
"name": "dump",
@@ -15195,7 +15205,7 @@
{
"name": "policy",
"default": null,
- "type": "486"
+ "type": "489"
},
{
"name": "prealloc",
@@ -15235,7 +15245,7 @@
"meta-type": "object"
},
{
- "name": "467",
+ "name": "470",
"members": [
{
"name": "path",
@@ -15245,7 +15255,7 @@
"meta-type": "object"
},
{
- "name": "468",
+ "name": "471",
"members": [
{
"name": "chardev",
@@ -15260,7 +15270,7 @@
"meta-type": "object"
},
{
- "name": "469",
+ "name": "472",
"members": [
{
"name": "opened",
@@ -15274,7 +15284,7 @@
"meta-type": "object"
},
{
- "name": "470",
+ "name": "473",
"members": [
{
"name": "opened",
@@ -15292,7 +15302,7 @@
"meta-type": "object"
},
{
- "name": "471",
+ "name": "474",
"members": [
{
"name": "opened",
@@ -15311,7 +15321,7 @@
"meta-type": "object"
},
{
- "name": "472",
+ "name": "475",
"members": [
{
"name": "loaded",
@@ -15324,7 +15334,7 @@
{
"name": "format",
"default": null,
- "type": "644"
+ "type": "649"
},
{
"name": "keyid",
@@ -15350,7 +15360,7 @@
"meta-type": "object"
},
{
- "name": "473",
+ "name": "476",
"members": [
{
"name": "loaded",
@@ -15363,7 +15373,7 @@
{
"name": "format",
"default": null,
- "type": "644"
+ "type": "649"
},
{
"name": "keyid",
@@ -15383,7 +15393,7 @@
"meta-type": "object"
},
{
- "name": "474",
+ "name": "477",
"members": [
{
"name": "sev-device",
@@ -15428,7 +15438,7 @@
"meta-type": "object"
},
{
- "name": "475",
+ "name": "478",
"members": [
{
"name": "cpu-affinity",
@@ -15444,12 +15454,12 @@
"meta-type": "object"
},
{
- "name": "476",
+ "name": "479",
"members": [
{
"name": "limits",
"default": null,
- "type": "645"
+ "type": "650"
},
{
"name": "x-iops-total",
@@ -15607,7 +15617,7 @@
"meta-type": "object"
},
{
- "name": "477",
+ "name": "480",
"members": [
{
"name": "verify-peer",
@@ -15622,7 +15632,7 @@
{
"name": "endpoint",
"default": null,
- "type": "646"
+ "type": "651"
},
{
"name": "priority",
@@ -15641,7 +15651,7 @@
"meta-type": "object"
},
{
- "name": "478",
+ "name": "481",
"members": [
{
"name": "verify-peer",
@@ -15656,7 +15666,7 @@
{
"name": "endpoint",
"default": null,
- "type": "646"
+ "type": "651"
},
{
"name": "priority",
@@ -15680,7 +15690,7 @@
"meta-type": "object"
},
{
- "name": "479",
+ "name": "482",
"members": [
{
"name": "verify-peer",
@@ -15695,7 +15705,7 @@
{
"name": "endpoint",
"default": null,
- "type": "646"
+ "type": "651"
},
{
"name": "priority",
@@ -15724,7 +15734,7 @@
"meta-type": "object"
},
{
- "name": "480",
+ "name": "483",
"members": [
{
"name": "verify-peer",
@@ -15739,7 +15749,7 @@
{
"name": "endpoint",
"default": null,
- "type": "646"
+ "type": "651"
},
{
"name": "priority",
@@ -15750,7 +15760,7 @@
"meta-type": "object"
},
{
- "name": "481",
+ "name": "484",
"members": [
{
"name": "fd",
@@ -15764,11 +15774,11 @@
"meta-type": "object"
},
{
- "name": "482",
+ "name": "485",
"members": [
{
"name": "socket",
- "type": "379"
+ "type": "382"
},
{
"name": "device",
@@ -15778,13 +15788,23 @@
"meta-type": "object"
},
{
- "name": "483",
+ "name": "486",
"members": [
{
"name": "node-id",
"default": null,
"type": "int"
},
+ {
+ "name": "drawer-id",
+ "default": null,
+ "type": "int"
+ },
+ {
+ "name": "book-id",
+ "default": null,
+ "type": "int"
+ },
{
"name": "socket-id",
"default": null,
@@ -15814,7 +15834,7 @@
"meta-type": "object"
},
{
- "name": "484",
+ "name": "487",
"members": [
{
"name": "aarch64"
@@ -15946,17 +15966,27 @@
]
},
{
- "name": "485",
+ "name": "488",
"members": [
{
"name": "cpu-state",
- "type": "647"
+ "type": "652"
+ },
+ {
+ "name": "dedicated",
+ "default": null,
+ "type": "bool"
+ },
+ {
+ "name": "entitlement",
+ "default": null,
+ "type": "504"
}
],
"meta-type": "object"
},
{
- "name": "486",
+ "name": "489",
"members": [
{
"name": "default"
@@ -15980,7 +16010,7 @@
]
},
{
- "name": "487",
+ "name": "490",
"members": [
{
"name": "node"
@@ -16008,7 +16038,7 @@
]
},
{
- "name": "488",
+ "name": "491",
"members": [
{
"name": "nodeid",
@@ -16039,7 +16069,7 @@
"meta-type": "object"
},
{
- "name": "489",
+ "name": "492",
"members": [
{
"name": "src",
@@ -16057,13 +16087,23 @@
"meta-type": "object"
},
{
- "name": "490",
+ "name": "493",
"members": [
{
"name": "node-id",
"default": null,
"type": "int"
},
+ {
+ "name": "drawer-id",
+ "default": null,
+ "type": "int"
+ },
+ {
+ "name": "book-id",
+ "default": null,
+ "type": "int"
+ },
{
"name": "socket-id",
"default": null,
@@ -16093,7 +16133,7 @@
"meta-type": "object"
},
{
- "name": "491",
+ "name": "494",
"members": [
{
"name": "initiator",
@@ -16105,11 +16145,11 @@
},
{
"name": "hierarchy",
- "type": "648"
+ "type": "653"
},
{
"name": "data-type",
- "type": "649"
+ "type": "654"
},
{
"name": "latency",
@@ -16125,7 +16165,7 @@
"meta-type": "object"
},
{
- "name": "492",
+ "name": "495",
"members": [
{
"name": "node-id",
@@ -16141,11 +16181,11 @@
},
{
"name": "associativity",
- "type": "650"
+ "type": "655"
},
{
"name": "policy",
- "type": "651"
+ "type": "656"
},
{
"name": "line",
@@ -16155,7 +16195,7 @@
"meta-type": "object"
},
{
- "name": "493",
+ "name": "496",
"members": [
{
"name": "dimm"
@@ -16183,47 +16223,47 @@
]
},
{
- "name": "494",
+ "name": "497",
"members": [
{
"name": "data",
- "type": "652"
+ "type": "657"
}
],
"meta-type": "object"
},
{
- "name": "495",
+ "name": "498",
"members": [
{
"name": "data",
- "type": "653"
+ "type": "658"
}
],
"meta-type": "object"
},
{
- "name": "496",
+ "name": "499",
"members": [
{
"name": "data",
- "type": "654"
+ "type": "659"
}
],
"meta-type": "object"
},
{
- "name": "497",
+ "name": "500",
"members": [
{
"name": "data",
- "type": "655"
+ "type": "660"
}
],
"meta-type": "object"
},
{
- "name": "498",
+ "name": "501",
"members": [
{
"name": "name",
@@ -16238,7 +16278,7 @@
"meta-type": "object"
},
{
- "name": "499",
+ "name": "502",
"members": [
{
"name": "incompatible"
@@ -16262,7 +16302,7 @@
]
},
{
- "name": "500",
+ "name": "503",
"members": [
{
"name": "static"
@@ -16278,7 +16318,31 @@
]
},
{
- "name": "501",
+ "name": "504",
+ "members": [
+ {
+ "name": "auto"
+ },
+ {
+ "name": "low"
+ },
+ {
+ "name": "medium"
+ },
+ {
+ "name": "high"
+ }
+ ],
+ "meta-type": "enum",
+ "values": [
+ "auto",
+ "low",
+ "medium",
+ "high"
+ ]
+ },
+ {
+ "name": "506",
"members": [
{
"name": "none"
@@ -16298,7 +16362,7 @@
]
},
{
- "name": "502",
+ "name": "507",
"members": [
{
"name": "block-node"
@@ -16318,7 +16382,7 @@
]
},
{
- "name": "503",
+ "name": "508",
"members": [
{
"name": "node-name",
@@ -16328,7 +16392,7 @@
"meta-type": "object"
},
{
- "name": "504",
+ "name": "509",
"members": [
{
"name": "id",
@@ -16338,12 +16402,12 @@
"meta-type": "object"
},
{
- "name": "[505]",
- "element-type": "505",
+ "name": "[510]",
+ "element-type": "510",
"meta-type": "array"
},
{
- "name": "505",
+ "name": "510",
"members": [
{
"name": "fd",
@@ -16358,12 +16422,12 @@
"meta-type": "object"
},
{
- "name": "[506]",
- "element-type": "506",
+ "name": "[511]",
+ "element-type": "511",
"meta-type": "array"
},
{
- "name": "506",
+ "name": "511",
"members": [
{
"name": "name",
@@ -16371,7 +16435,7 @@
},
{
"name": "type",
- "type": "656"
+ "type": "661"
},
{
"name": "help",
@@ -16387,7 +16451,7 @@
"meta-type": "object"
},
{
- "name": "507",
+ "name": "512",
"members": [
{
"name": "uninit"
@@ -16419,12 +16483,12 @@
]
},
{
- "name": "[508]",
- "element-type": "508",
+ "name": "[513]",
+ "element-type": "513",
"meta-type": "array"
},
{
- "name": "508",
+ "name": "513",
"members": [
{
"name": "node",
@@ -16438,7 +16502,7 @@
"meta-type": "object"
},
{
- "name": "509",
+ "name": "514",
"members": [
{
"name": "closed"
@@ -16470,7 +16534,7 @@
]
},
{
- "name": "510",
+ "name": "515",
"members": [
{
"name": "none"
@@ -16510,33 +16574,33 @@
]
},
{
- "name": "511",
+ "name": "516",
"members": [
{
"name": "in",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "out",
"default": null,
- "type": "657"
+ "type": "662"
}
],
"meta-type": "object"
},
{
- "name": "512",
+ "name": "517",
"members": [
{
"name": "in",
"default": null,
- "type": "658"
+ "type": "663"
},
{
"name": "out",
"default": null,
- "type": "658"
+ "type": "663"
},
{
"name": "threshold",
@@ -16547,33 +16611,33 @@
"meta-type": "object"
},
{
- "name": "513",
+ "name": "518",
"members": [
{
"name": "in",
"default": null,
- "type": "659"
+ "type": "664"
},
{
"name": "out",
"default": null,
- "type": "659"
+ "type": "664"
}
],
"meta-type": "object"
},
{
- "name": "514",
+ "name": "519",
"members": [
{
"name": "in",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "out",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "latency",
@@ -16584,33 +16648,33 @@
"meta-type": "object"
},
{
- "name": "515",
+ "name": "520",
"members": [
{
"name": "in",
"default": null,
- "type": "660"
+ "type": "665"
},
{
"name": "out",
"default": null,
- "type": "660"
+ "type": "665"
}
],
"meta-type": "object"
},
{
- "name": "516",
+ "name": "521",
"members": [
{
"name": "in",
"default": null,
- "type": "661"
+ "type": "666"
},
{
"name": "out",
"default": null,
- "type": "661"
+ "type": "666"
},
{
"name": "try-mmap",
@@ -16631,17 +16695,17 @@
"meta-type": "object"
},
{
- "name": "517",
+ "name": "522",
"members": [
{
"name": "in",
"default": null,
- "type": "662"
+ "type": "667"
},
{
"name": "out",
"default": null,
- "type": "662"
+ "type": "667"
},
{
"name": "server",
@@ -16652,49 +16716,49 @@
"meta-type": "object"
},
{
- "name": "518",
+ "name": "523",
"members": [
{
"name": "in",
"default": null,
- "type": "663"
+ "type": "668"
},
{
"name": "out",
"default": null,
- "type": "663"
+ "type": "668"
}
],
"meta-type": "object"
},
{
- "name": "519",
+ "name": "524",
"members": [
{
"name": "in",
"default": null,
- "type": "664"
+ "type": "669"
},
{
"name": "out",
"default": null,
- "type": "664"
+ "type": "669"
}
],
"meta-type": "object"
},
{
- "name": "520",
+ "name": "525",
"members": [
{
"name": "in",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "out",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "dev",
@@ -16710,17 +16774,17 @@
"meta-type": "object"
},
{
- "name": "521",
+ "name": "526",
"members": [
{
"name": "in",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "out",
"default": null,
- "type": "657"
+ "type": "662"
},
{
"name": "path",
@@ -16731,7 +16795,7 @@
"meta-type": "object"
},
{
- "name": "522",
+ "name": "527",
"members": [
{
"name": "DIMM"
@@ -16747,12 +16811,12 @@
]
},
{
- "name": "[523]",
- "element-type": "523",
+ "name": "[528]",
+ "element-type": "528",
"meta-type": "array"
},
{
- "name": "523",
+ "name": "528",
"members": [
{
"name": "bus",
@@ -16768,11 +16832,11 @@
},
{
"name": "class_info",
- "type": "665"
+ "type": "670"
},
{
"name": "id",
- "type": "666"
+ "type": "671"
},
{
"name": "irq",
@@ -16790,17 +16854,17 @@
{
"name": "pci_bridge",
"default": null,
- "type": "667"
+ "type": "672"
},
{
"name": "regions",
- "type": "[668]"
+ "type": "[673]"
}
],
"meta-type": "object"
},
{
- "name": "524",
+ "name": "529",
"members": [
{
"name": "vm"
@@ -16820,16 +16884,16 @@
]
},
{
- "name": "[525]",
- "element-type": "525",
+ "name": "[530]",
+ "element-type": "530",
"meta-type": "array"
},
{
- "name": "525",
+ "name": "530",
"members": [
{
"name": "provider",
- "type": "527"
+ "type": "532"
},
{
"name": "names",
@@ -16840,7 +16904,7 @@
"meta-type": "object"
},
{
- "name": "526",
+ "name": "531",
"members": [
{
"name": "vcpus",
@@ -16851,7 +16915,7 @@
"meta-type": "object"
},
{
- "name": "527",
+ "name": "532",
"members": [
{
"name": "kvm"
@@ -16867,12 +16931,12 @@
]
},
{
- "name": "[528]",
- "element-type": "528",
+ "name": "[533]",
+ "element-type": "533",
"meta-type": "array"
},
{
- "name": "528",
+ "name": "533",
"members": [
{
"name": "name",
@@ -16880,18 +16944,18 @@
},
{
"name": "value",
- "type": "669"
+ "type": "674"
}
],
"meta-type": "object"
},
{
- "name": "[529]",
- "element-type": "529",
+ "name": "[534]",
+ "element-type": "534",
"meta-type": "array"
},
{
- "name": "529",
+ "name": "534",
"members": [
{
"name": "name",
@@ -16899,12 +16963,12 @@
},
{
"name": "type",
- "type": "670"
+ "type": "675"
},
{
"name": "unit",
"default": null,
- "type": "671"
+ "type": "676"
},
{
"name": "base",
@@ -16924,7 +16988,7 @@
"meta-type": "object"
},
{
- "name": "530",
+ "name": "535",
"members": [
{
"name": "transports",
@@ -16944,7 +17008,7 @@
"meta-type": "object"
},
{
- "name": "531",
+ "name": "536",
"members": [
{
"name": "statuses",
@@ -16959,7 +17023,7 @@
"meta-type": "object"
},
{
- "name": "532",
+ "name": "537",
"members": [
{
"name": "n-mem-sections",
@@ -16979,19 +17043,19 @@
},
{
"name": "features",
- "type": "530"
+ "type": "535"
},
{
"name": "acked-features",
- "type": "530"
+ "type": "535"
},
{
"name": "backend-features",
- "type": "530"
+ "type": "535"
},
{
"name": "protocol-features",
- "type": "672"
+ "type": "677"
},
{
"name": "max-queues",
@@ -17013,12 +17077,12 @@
"meta-type": "object"
},
{
- "name": "[533]",
- "element-type": "533",
+ "name": "[538]",
+ "element-type": "538",
"meta-type": "array"
},
{
- "name": "533",
+ "name": "538",
"members": [
{
"name": "addr",
@@ -17036,7 +17100,7 @@
"meta-type": "object"
},
{
- "name": "534",
+ "name": "539",
"members": [
{
"name": "flags",
@@ -17054,7 +17118,7 @@
"meta-type": "object"
},
{
- "name": "535",
+ "name": "540",
"members": [
{
"name": "flags",
@@ -17068,12 +17132,12 @@
"meta-type": "object"
},
{
- "name": "[536]",
- "element-type": "536",
+ "name": "[541]",
+ "element-type": "541",
"meta-type": "array"
},
{
- "name": "536",
+ "name": "541",
"members": [
{
"name": "cipher"
@@ -17101,12 +17165,12 @@
]
},
{
- "name": "[537]",
- "element-type": "537",
+ "name": "[542]",
+ "element-type": "542",
"meta-type": "array"
},
{
- "name": "537",
+ "name": "542",
"members": [
{
"name": "queue",
@@ -17114,13 +17178,13 @@
},
{
"name": "type",
- "type": "673"
+ "type": "678"
}
],
"meta-type": "object"
},
{
- "name": "538",
+ "name": "543",
"members": [
{
"name": "informational"
@@ -17144,16 +17208,16 @@
]
},
{
- "name": "[539]",
- "element-type": "539",
+ "name": "[544]",
+ "element-type": "544",
"meta-type": "array"
},
{
- "name": "539",
+ "name": "544",
"members": [
{
"name": "type",
- "type": "674"
+ "type": "679"
},
{
"name": "header",
@@ -17163,7 +17227,7 @@
"meta-type": "object"
},
{
- "name": "540",
+ "name": "545",
"members": [
{
"name": "cache-data-ecc"
@@ -17199,7 +17263,7 @@
]
},
{
- "name": "541",
+ "name": "546",
"members": [
{
"name": "hyper-v"
@@ -17215,7 +17279,7 @@
]
},
{
- "name": "542",
+ "name": "547",
"members": [
{
"name": "arg1",
@@ -17241,7 +17305,7 @@
"meta-type": "object"
},
{
- "name": "543",
+ "name": "548",
"members": [
{
"name": "core",
@@ -17257,18 +17321,18 @@
},
{
"name": "reason",
- "type": "675"
+ "type": "680"
}
],
"meta-type": "object"
},
{
- "name": "[544]",
- "element-type": "544",
+ "name": "[549]",
+ "element-type": "549",
"meta-type": "array"
},
{
- "name": "544",
+ "name": "549",
"members": [
{
"name": "interval_length",
@@ -17338,7 +17402,7 @@
"meta-type": "object"
},
{
- "name": "545",
+ "name": "550",
"members": [
{
"name": "boundaries",
@@ -17352,7 +17416,7 @@
"meta-type": "object"
},
{
- "name": "546",
+ "name": "551",
"members": [
{
"name": "discard-nb-ok",
@@ -17370,7 +17434,7 @@
"meta-type": "object"
},
{
- "name": "547",
+ "name": "552",
"members": [
{
"name": "completion-errors",
@@ -17393,40 +17457,40 @@
"meta-type": "array"
},
{
- "name": "548",
+ "name": "553",
"tag": "type",
"variants": [
{
"case": "qcow2",
- "type": "677"
+ "type": "682"
},
{
"case": "vmdk",
- "type": "678"
+ "type": "683"
},
{
"case": "luks",
- "type": "679"
+ "type": "684"
},
{
"case": "rbd",
- "type": "680"
+ "type": "685"
},
{
"case": "file",
- "type": "681"
+ "type": "686"
}
],
"members": [
{
"name": "type",
- "type": "676"
+ "type": "681"
}
],
"meta-type": "object"
},
{
- "name": "549",
+ "name": "554",
"members": [
{
"name": "block-backend"
@@ -17446,12 +17510,12 @@
]
},
{
- "name": "[550]",
- "element-type": "550",
+ "name": "[555]",
+ "element-type": "555",
"meta-type": "array"
},
{
- "name": "550",
+ "name": "555",
"members": [
{
"name": "consistent-read"
@@ -17475,7 +17539,7 @@
]
},
{
- "name": "551",
+ "name": "556",
"members": [
{
"type": "57"
@@ -17487,16 +17551,16 @@
"meta-type": "alternate"
},
{
- "name": "[552]",
- "element-type": "552",
+ "name": "[557]",
+ "element-type": "557",
"meta-type": "array"
},
{
- "name": "552",
+ "name": "557",
"members": [
{
"name": "event",
- "type": "682"
+ "type": "687"
},
{
"name": "state",
@@ -17506,7 +17570,7 @@
{
"name": "iotype",
"default": null,
- "type": "683"
+ "type": "688"
},
{
"name": "errno",
@@ -17532,16 +17596,16 @@
"meta-type": "object"
},
{
- "name": "[553]",
- "element-type": "553",
+ "name": "[558]",
+ "element-type": "558",
"meta-type": "array"
},
{
- "name": "553",
+ "name": "558",
"members": [
{
"name": "event",
- "type": "682"
+ "type": "687"
},
{
"name": "state",
@@ -17556,7 +17620,7 @@
"meta-type": "object"
},
{
- "name": "554",
+ "name": "559",
"members": [
{
"name": "break-guest-write"
@@ -17572,7 +17636,7 @@
]
},
{
- "name": "555",
+ "name": "560",
"members": [
{
"name": "auto"
@@ -17592,7 +17656,7 @@
]
},
{
- "name": "556",
+ "name": "561",
"members": [
{
"name": "threads"
@@ -17612,7 +17676,7 @@
]
},
{
- "name": "557",
+ "name": "562",
"members": [
{
"name": "tcp"
@@ -17628,7 +17692,7 @@
]
},
{
- "name": "558",
+ "name": "563",
"members": [
{
"name": "crc32c"
@@ -17652,11 +17716,11 @@
]
},
{
- "name": "559",
+ "name": "564",
"members": [
{
"name": "type",
- "type": "684"
+ "type": "689"
},
{
"name": "host",
@@ -17666,7 +17730,7 @@
"meta-type": "object"
},
{
- "name": "560",
+ "name": "565",
"members": [
{
"type": "57"
@@ -17681,62 +17745,62 @@
"meta-type": "alternate"
},
{
- "name": "561",
+ "name": "566",
"members": [
{
- "type": "685"
+ "type": "690"
},
{
- "type": "686"
+ "type": "691"
}
],
"meta-type": "alternate"
},
{
- "name": "562",
+ "name": "567",
"tag": "format",
"variants": [
{
"case": "aes",
- "type": "688"
+ "type": "693"
},
{
"case": "luks",
- "type": "689"
+ "type": "694"
}
],
"members": [
{
"name": "format",
- "type": "687"
+ "type": "692"
}
],
"meta-type": "object"
},
{
- "name": "563",
+ "name": "568",
"tag": "format",
"variants": [
{
"case": "aes",
- "type": "688"
+ "type": "693"
}
],
"members": [
{
"name": "format",
- "type": "690"
+ "type": "695"
}
],
"meta-type": "object"
},
{
- "name": "[551]",
- "element-type": "551",
+ "name": "[556]",
+ "element-type": "556",
"meta-type": "array"
},
{
- "name": "564",
+ "name": "569",
"members": [
{
"name": "quorum"
@@ -17752,42 +17816,42 @@
]
},
{
- "name": "565",
+ "name": "570",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "692"
+ "type": "697"
},
{
"case": "luks2",
- "type": "693"
+ "type": "698"
},
{
"case": "luks-any",
- "type": "694"
+ "type": "699"
}
],
"members": [
{
"name": "format",
- "type": "691"
+ "type": "696"
},
{
"name": "parent",
"default": null,
- "type": "565"
+ "type": "570"
}
],
"meta-type": "object"
},
{
- "name": "[566]",
- "element-type": "566",
+ "name": "[571]",
+ "element-type": "571",
"meta-type": "array"
},
{
- "name": "566",
+ "name": "571",
"members": [
{
"name": "cephx"
@@ -17803,12 +17867,12 @@
]
},
{
- "name": "[567]",
- "element-type": "567",
+ "name": "[572]",
+ "element-type": "572",
"meta-type": "array"
},
{
- "name": "567",
+ "name": "572",
"members": [
{
"name": "host",
@@ -17822,7 +17886,7 @@
"meta-type": "object"
},
{
- "name": "568",
+ "name": "573",
"members": [
{
"name": "primary"
@@ -17838,7 +17902,7 @@
]
},
{
- "name": "569",
+ "name": "574",
"members": [
{
"name": "host",
@@ -17882,12 +17946,12 @@
"meta-type": "object"
},
{
- "name": "570",
+ "name": "575",
"tag": "mode",
"variants": [
{
"case": "hash",
- "type": "696"
+ "type": "701"
},
{
"case": "none",
@@ -17901,13 +17965,13 @@
"members": [
{
"name": "mode",
- "type": "695"
+ "type": "700"
}
],
"meta-type": "object"
},
{
- "name": "571",
+ "name": "576",
"members": [
{
"name": "filename",
@@ -17920,7 +17984,7 @@
{
"name": "preallocation",
"default": null,
- "type": "697"
+ "type": "702"
},
{
"name": "nocow",
@@ -17936,11 +18000,11 @@
"meta-type": "object"
},
{
- "name": "572",
+ "name": "577",
"members": [
{
"name": "location",
- "type": "318"
+ "type": "321"
},
{
"name": "size",
@@ -17949,13 +18013,13 @@
{
"name": "preallocation",
"default": null,
- "type": "697"
+ "type": "702"
}
],
"meta-type": "object"
},
{
- "name": "573",
+ "name": "578",
"members": [
{
"name": "key-secret",
@@ -17965,27 +18029,27 @@
{
"name": "cipher-alg",
"default": null,
- "type": "698"
+ "type": "703"
},
{
"name": "cipher-mode",
"default": null,
- "type": "699"
+ "type": "704"
},
{
"name": "ivgen-alg",
"default": null,
- "type": "700"
+ "type": "705"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "701"
+ "type": "706"
},
{
"name": "hash-alg",
"default": null,
- "type": "701"
+ "type": "706"
},
{
"name": "iter-time",
@@ -17994,7 +18058,7 @@
},
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18003,17 +18067,17 @@
{
"name": "preallocation",
"default": null,
- "type": "697"
+ "type": "702"
}
],
"meta-type": "object"
},
{
- "name": "574",
+ "name": "579",
"members": [
{
"name": "location",
- "type": "325"
+ "type": "328"
},
{
"name": "size",
@@ -18023,11 +18087,11 @@
"meta-type": "object"
},
{
- "name": "575",
+ "name": "580",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18042,11 +18106,11 @@
"meta-type": "object"
},
{
- "name": "576",
+ "name": "581",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18060,22 +18124,22 @@
{
"name": "encrypt",
"default": null,
- "type": "702"
+ "type": "707"
}
],
"meta-type": "object"
},
{
- "name": "577",
+ "name": "582",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "data-file",
"default": null,
- "type": "551"
+ "type": "556"
},
{
"name": "data-file-raw",
@@ -18094,7 +18158,7 @@
{
"name": "version",
"default": null,
- "type": "703"
+ "type": "708"
},
{
"name": "backing-file",
@@ -18104,12 +18168,12 @@
{
"name": "backing-fmt",
"default": null,
- "type": "305"
+ "type": "308"
},
{
"name": "encrypt",
"default": null,
- "type": "702"
+ "type": "707"
},
{
"name": "cluster-size",
@@ -18119,7 +18183,7 @@
{
"name": "preallocation",
"default": null,
- "type": "697"
+ "type": "702"
},
{
"name": "lazy-refcounts",
@@ -18134,17 +18198,17 @@
{
"name": "compression-type",
"default": null,
- "type": "704"
+ "type": "709"
}
],
"meta-type": "object"
},
{
- "name": "578",
+ "name": "583",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18158,7 +18222,7 @@
{
"name": "backing-fmt",
"default": null,
- "type": "305"
+ "type": "308"
},
{
"name": "cluster-size",
@@ -18174,11 +18238,11 @@
"meta-type": "object"
},
{
- "name": "579",
+ "name": "584",
"members": [
{
"name": "location",
- "type": "335"
+ "type": "338"
},
{
"name": "size",
@@ -18192,17 +18256,17 @@
{
"name": "encrypt",
"default": null,
- "type": "705"
+ "type": "710"
}
],
"meta-type": "object"
},
{
- "name": "580",
+ "name": "585",
"members": [
{
"name": "location",
- "type": "337"
+ "type": "340"
},
{
"name": "size",
@@ -18212,11 +18276,11 @@
"meta-type": "object"
},
{
- "name": "581",
+ "name": "586",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18225,17 +18289,17 @@
{
"name": "preallocation",
"default": null,
- "type": "697"
+ "type": "702"
}
],
"meta-type": "object"
},
{
- "name": "582",
+ "name": "587",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18254,7 +18318,7 @@
{
"name": "subformat",
"default": null,
- "type": "706"
+ "type": "711"
},
{
"name": "block-state-zero",
@@ -18265,11 +18329,11 @@
"meta-type": "object"
},
{
- "name": "583",
+ "name": "588",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18278,12 +18342,12 @@
{
"name": "extents",
"default": null,
- "type": "[551]"
+ "type": "[556]"
},
{
"name": "subformat",
"default": null,
- "type": "707"
+ "type": "712"
},
{
"name": "backing-file",
@@ -18293,7 +18357,7 @@
{
"name": "adapter-type",
"default": null,
- "type": "708"
+ "type": "713"
},
{
"name": "hwversion",
@@ -18314,11 +18378,11 @@
"meta-type": "object"
},
{
- "name": "584",
+ "name": "589",
"members": [
{
"name": "file",
- "type": "551"
+ "type": "556"
},
{
"name": "size",
@@ -18327,7 +18391,7 @@
{
"name": "subformat",
"default": null,
- "type": "709"
+ "type": "714"
},
{
"name": "force-size",
@@ -18338,11 +18402,11 @@
"meta-type": "object"
},
{
- "name": "585",
+ "name": "590",
"members": [
{
"name": "state",
- "type": "710"
+ "type": "715"
},
{
"name": "new-secret",
@@ -18373,12 +18437,12 @@
"meta-type": "object"
},
{
- "name": "586",
+ "name": "591",
"members": [
{
"name": "encrypt",
"default": null,
- "type": "711"
+ "type": "716"
}
],
"meta-type": "object"
@@ -18389,7 +18453,7 @@
"meta-type": "builtin"
},
{
- "name": "587",
+ "name": "592",
"members": [
{
"name": "inet"
@@ -18413,47 +18477,47 @@
]
},
{
- "name": "588",
+ "name": "593",
"members": [
{
"name": "data",
- "type": "569"
+ "type": "574"
}
],
"meta-type": "object"
},
{
- "name": "589",
+ "name": "594",
"members": [
{
"name": "data",
- "type": "609"
+ "type": "614"
}
],
"meta-type": "object"
},
{
- "name": "590",
+ "name": "595",
"members": [
{
"name": "data",
- "type": "610"
+ "type": "615"
}
],
"meta-type": "object"
},
{
- "name": "591",
+ "name": "596",
"members": [
{
"name": "data",
- "type": "607"
+ "type": "612"
}
],
"meta-type": "object"
},
{
- "name": "592",
+ "name": "597",
"members": [
{
"name": "off"
@@ -18473,7 +18537,7 @@
]
},
{
- "name": "593",
+ "name": "598",
"members": [
{
"name": "file"
@@ -18569,142 +18633,142 @@
]
},
{
- "name": "594",
+ "name": "599",
"members": [
{
"name": "data",
- "type": "712"
+ "type": "717"
}
],
"meta-type": "object"
},
{
- "name": "595",
+ "name": "600",
"members": [
{
"name": "data",
- "type": "713"
+ "type": "718"
}
],
"meta-type": "object"
},
{
- "name": "596",
+ "name": "601",
"members": [
{
"name": "data",
- "type": "714"
+ "type": "719"
}
],
"meta-type": "object"
},
{
- "name": "597",
+ "name": "602",
"members": [
{
"name": "data",
- "type": "715"
+ "type": "720"
}
],
"meta-type": "object"
},
{
- "name": "598",
+ "name": "603",
"members": [
{
"name": "data",
- "type": "716"
+ "type": "721"
}
],
"meta-type": "object"
},
{
- "name": "599",
+ "name": "604",
"members": [
{
"name": "data",
- "type": "717"
+ "type": "722"
}
],
"meta-type": "object"
},
{
- "name": "600",
+ "name": "605",
"members": [
{
"name": "data",
- "type": "718"
+ "type": "723"
}
],
"meta-type": "object"
},
{
- "name": "601",
+ "name": "606",
"members": [
{
"name": "data",
- "type": "719"
+ "type": "724"
}
],
"meta-type": "object"
},
{
- "name": "602",
+ "name": "607",
"members": [
{
"name": "data",
- "type": "720"
+ "type": "725"
}
],
"meta-type": "object"
},
{
- "name": "603",
+ "name": "608",
"members": [
{
"name": "data",
- "type": "721"
+ "type": "726"
}
],
"meta-type": "object"
},
{
- "name": "604",
+ "name": "609",
"members": [
{
"name": "data",
- "type": "722"
+ "type": "727"
}
],
"meta-type": "object"
},
{
- "name": "605",
+ "name": "610",
"members": [
{
"name": "data",
- "type": "723"
+ "type": "728"
}
],
"meta-type": "object"
},
{
- "name": "606",
+ "name": "611",
"members": [
{
"name": "data",
- "type": "724"
+ "type": "729"
}
],
"meta-type": "object"
},
{
- "name": "[607]",
- "element-type": "607",
+ "name": "[612]",
+ "element-type": "612",
"meta-type": "array"
},
{
- "name": "607",
+ "name": "612",
"members": [
{
"name": "str",
@@ -18714,7 +18778,7 @@
"meta-type": "object"
},
{
- "name": "609",
+ "name": "614",
"members": [
{
"name": "path",
@@ -18734,7 +18798,7 @@
"meta-type": "object"
},
{
- "name": "610",
+ "name": "615",
"members": [
{
"name": "cid",
@@ -18748,27 +18812,27 @@
"meta-type": "object"
},
{
- "name": "611",
+ "name": "616",
"members": [
{
"name": "data",
- "type": "725"
+ "type": "730"
}
],
"meta-type": "object"
},
{
- "name": "612",
+ "name": "617",
"members": [
{
"name": "data",
- "type": "726"
+ "type": "731"
}
],
"meta-type": "object"
},
{
- "name": "613",
+ "name": "618",
"members": [
{
"name": "number"
@@ -18784,7 +18848,7 @@
]
},
{
- "name": "614",
+ "name": "619",
"members": [
{
"name": "data",
@@ -18794,17 +18858,17 @@
"meta-type": "object"
},
{
- "name": "615",
+ "name": "620",
"members": [
{
"name": "data",
- "type": "727"
+ "type": "732"
}
],
"meta-type": "object"
},
{
- "name": "616",
+ "name": "621",
"members": [
{
"name": "key"
@@ -18832,47 +18896,47 @@
]
},
{
- "name": "617",
+ "name": "622",
"members": [
{
"name": "data",
- "type": "728"
+ "type": "733"
}
],
"meta-type": "object"
},
{
- "name": "618",
+ "name": "623",
"members": [
{
"name": "data",
- "type": "729"
+ "type": "734"
}
],
"meta-type": "object"
},
{
- "name": "619",
+ "name": "624",
"members": [
{
"name": "data",
- "type": "730"
+ "type": "735"
}
],
"meta-type": "object"
},
{
- "name": "620",
+ "name": "625",
"members": [
{
"name": "data",
- "type": "731"
+ "type": "736"
}
],
"meta-type": "object"
},
{
- "name": "621",
+ "name": "626",
"members": [
{
"name": "lctrl-lalt"
@@ -18897,12 +18961,12 @@
"meta-type": "builtin"
},
{
- "name": "[622]",
- "element-type": "622",
+ "name": "[627]",
+ "element-type": "627",
"meta-type": "array"
},
{
- "name": "622",
+ "name": "627",
"members": [
{
"name": "name",
@@ -18915,13 +18979,13 @@
{
"name": "transform",
"default": null,
- "type": "732"
+ "type": "737"
}
],
"meta-type": "object"
},
{
- "name": "623",
+ "name": "628",
"members": [
{
"name": "abort"
@@ -18980,17 +19044,17 @@
]
},
{
- "name": "624",
+ "name": "629",
"members": [
{
"name": "data",
- "type": "733"
+ "type": "738"
}
],
"meta-type": "object"
},
{
- "name": "625",
+ "name": "630",
"members": [
{
"name": "data",
@@ -19000,7 +19064,7 @@
"meta-type": "object"
},
{
- "name": "626",
+ "name": "631",
"members": [
{
"name": "data",
@@ -19010,7 +19074,7 @@
"meta-type": "object"
},
{
- "name": "627",
+ "name": "632",
"members": [
{
"name": "data",
@@ -19020,7 +19084,7 @@
"meta-type": "object"
},
{
- "name": "628",
+ "name": "633",
"members": [
{
"name": "data",
@@ -19030,7 +19094,7 @@
"meta-type": "object"
},
{
- "name": "629",
+ "name": "634",
"members": [
{
"name": "data",
@@ -19040,7 +19104,7 @@
"meta-type": "object"
},
{
- "name": "630",
+ "name": "635",
"members": [
{
"name": "data",
@@ -19050,7 +19114,7 @@
"meta-type": "object"
},
{
- "name": "631",
+ "name": "636",
"members": [
{
"name": "data",
@@ -19060,7 +19124,7 @@
"meta-type": "object"
},
{
- "name": "632",
+ "name": "637",
"members": [
{
"name": "data",
@@ -19070,7 +19134,7 @@
"meta-type": "object"
},
{
- "name": "633",
+ "name": "638",
"members": [
{
"name": "individual"
@@ -19086,7 +19150,7 @@
]
},
{
- "name": "634",
+ "name": "639",
"members": [
{
"name": "string"
@@ -19126,12 +19190,12 @@
]
},
{
- "name": "[635]",
- "element-type": "635",
+ "name": "[640]",
+ "element-type": "640",
"meta-type": "array"
},
{
- "name": "635",
+ "name": "640",
"members": [
{
"name": "name",
@@ -19146,12 +19210,12 @@
"meta-type": "object"
},
{
- "name": "[636]",
- "element-type": "636",
+ "name": "[641]",
+ "element-type": "641",
"meta-type": "array"
},
{
- "name": "636",
+ "name": "641",
"members": [
{
"name": "name",
@@ -19175,12 +19239,12 @@
"meta-type": "object"
},
{
- "name": "[637]",
- "element-type": "637",
+ "name": "[642]",
+ "element-type": "642",
"meta-type": "array"
},
{
- "name": "637",
+ "name": "642",
"members": [
{
"name": "case",
@@ -19194,12 +19258,12 @@
"meta-type": "object"
},
{
- "name": "[638]",
- "element-type": "638",
+ "name": "[643]",
+ "element-type": "643",
"meta-type": "array"
},
{
- "name": "638",
+ "name": "643",
"members": [
{
"name": "type",
@@ -19209,7 +19273,7 @@
"meta-type": "object"
},
{
- "name": "639",
+ "name": "644",
"members": [
{
"name": "deny"
@@ -19225,12 +19289,12 @@
]
},
{
- "name": "[640]",
- "element-type": "640",
+ "name": "[645]",
+ "element-type": "645",
"meta-type": "array"
},
{
- "name": "640",
+ "name": "645",
"members": [
{
"name": "match",
@@ -19238,18 +19302,18 @@
},
{
"name": "policy",
- "type": "639"
+ "type": "644"
},
{
"name": "format",
"default": null,
- "type": "734"
+ "type": "739"
}
],
"meta-type": "object"
},
{
- "name": "641",
+ "name": "646",
"members": [
{
"name": "all"
@@ -19269,7 +19333,7 @@
]
},
{
- "name": "642",
+ "name": "647",
"members": [
{
"name": "before"
@@ -19285,7 +19349,7 @@
]
},
{
- "name": "643",
+ "name": "648",
"members": [
{
"name": "ctrl-ctrl"
@@ -19317,7 +19381,7 @@
]
},
{
- "name": "644",
+ "name": "649",
"members": [
{
"name": "raw"
@@ -19333,7 +19397,7 @@
]
},
{
- "name": "645",
+ "name": "650",
"members": [
{
"name": "iops-total",
@@ -19434,7 +19498,7 @@
"meta-type": "object"
},
{
- "name": "646",
+ "name": "651",
"members": [
{
"name": "client"
@@ -19450,7 +19514,7 @@
]
},
{
- "name": "647",
+ "name": "652",
"members": [
{
"name": "uninitialized"
@@ -19478,7 +19542,7 @@
]
},
{
- "name": "648",
+ "name": "653",
"members": [
{
"name": "memory"
@@ -19502,7 +19566,7 @@
]
},
{
- "name": "649",
+ "name": "654",
"members": [
{
"name": "access-latency"
@@ -19534,7 +19598,7 @@
]
},
{
- "name": "650",
+ "name": "655",
"members": [
{
"name": "none"
@@ -19554,7 +19618,7 @@
]
},
{
- "name": "651",
+ "name": "656",
"members": [
{
"name": "none"
@@ -19574,7 +19638,7 @@
]
},
{
- "name": "652",
+ "name": "657",
"members": [
{
"name": "id",
@@ -19613,7 +19677,7 @@
"meta-type": "object"
},
{
- "name": "653",
+ "name": "658",
"members": [
{
"name": "id",
@@ -19636,7 +19700,7 @@
"meta-type": "object"
},
{
- "name": "654",
+ "name": "659",
"members": [
{
"name": "id",
@@ -19675,7 +19739,7 @@
"meta-type": "object"
},
{
- "name": "655",
+ "name": "660",
"members": [
{
"name": "id",
@@ -19702,7 +19766,7 @@
"meta-type": "object"
},
{
- "name": "656",
+ "name": "661",
"members": [
{
"name": "string"
@@ -19726,7 +19790,7 @@
]
},
{
- "name": "657",
+ "name": "662",
"members": [
{
"name": "mixing-engine",
@@ -19756,7 +19820,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -19767,7 +19831,7 @@
"meta-type": "object"
},
{
- "name": "658",
+ "name": "663",
"members": [
{
"name": "mixing-engine",
@@ -19797,7 +19861,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -19823,7 +19887,7 @@
"meta-type": "object"
},
{
- "name": "659",
+ "name": "664",
"members": [
{
"name": "mixing-engine",
@@ -19853,7 +19917,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -19869,7 +19933,7 @@
"meta-type": "object"
},
{
- "name": "660",
+ "name": "665",
"members": [
{
"name": "mixing-engine",
@@ -19899,7 +19963,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -19935,7 +19999,7 @@
"meta-type": "object"
},
{
- "name": "661",
+ "name": "666",
"members": [
{
"name": "mixing-engine",
@@ -19965,7 +20029,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -19991,7 +20055,7 @@
"meta-type": "object"
},
{
- "name": "662",
+ "name": "667",
"members": [
{
"name": "mixing-engine",
@@ -20021,7 +20085,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -20047,7 +20111,7 @@
"meta-type": "object"
},
{
- "name": "663",
+ "name": "668",
"members": [
{
"name": "mixing-engine",
@@ -20077,7 +20141,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -20103,7 +20167,7 @@
"meta-type": "object"
},
{
- "name": "664",
+ "name": "669",
"members": [
{
"name": "mixing-engine",
@@ -20133,7 +20197,7 @@
{
"name": "format",
"default": null,
- "type": "735"
+ "type": "740"
},
{
"name": "buffer-length",
@@ -20149,7 +20213,7 @@
"meta-type": "object"
},
{
- "name": "665",
+ "name": "670",
"members": [
{
"name": "desc",
@@ -20164,7 +20228,7 @@
"meta-type": "object"
},
{
- "name": "666",
+ "name": "671",
"members": [
{
"name": "device",
@@ -20188,27 +20252,27 @@
"meta-type": "object"
},
{
- "name": "667",
+ "name": "672",
"members": [
{
"name": "bus",
- "type": "736"
+ "type": "741"
},
{
"name": "devices",
"default": null,
- "type": "[523]"
+ "type": "[528]"
}
],
"meta-type": "object"
},
{
- "name": "[668]",
- "element-type": "668",
+ "name": "[673]",
+ "element-type": "673",
"meta-type": "array"
},
{
- "name": "668",
+ "name": "673",
"members": [
{
"name": "bar",
@@ -20240,7 +20304,7 @@
"meta-type": "object"
},
{
- "name": "669",
+ "name": "674",
"members": [
{
"type": "int"
@@ -20255,7 +20319,7 @@
"meta-type": "alternate"
},
{
- "name": "670",
+ "name": "675",
"members": [
{
"name": "cumulative"
@@ -20283,7 +20347,7 @@
]
},
{
- "name": "671",
+ "name": "676",
"members": [
{
"name": "bytes"
@@ -20307,7 +20371,7 @@
]
},
{
- "name": "672",
+ "name": "677",
"members": [
{
"name": "protocols",
@@ -20322,7 +20386,7 @@
"meta-type": "object"
},
{
- "name": "673",
+ "name": "678",
"members": [
{
"name": "builtin"
@@ -20342,7 +20406,7 @@
]
},
{
- "name": "674",
+ "name": "679",
"members": [
{
"name": "cache-data-parity"
@@ -20410,7 +20474,7 @@
]
},
{
- "name": "675",
+ "name": "680",
"members": [
{
"name": "unknown"
@@ -20438,7 +20502,7 @@
]
},
{
- "name": "676",
+ "name": "681",
"members": [
{
"name": "qcow2"
@@ -20466,57 +20530,57 @@
]
},
{
- "name": "677",
+ "name": "682",
"members": [
{
"name": "data",
- "type": "737"
+ "type": "742"
}
],
"meta-type": "object"
},
{
- "name": "678",
+ "name": "683",
"members": [
{
"name": "data",
- "type": "738"
+ "type": "743"
}
],
"meta-type": "object"
},
{
- "name": "679",
+ "name": "684",
"members": [
{
"name": "data",
- "type": "739"
+ "type": "744"
}
],
"meta-type": "object"
},
{
- "name": "680",
+ "name": "685",
"members": [
{
"name": "data",
- "type": "740"
+ "type": "745"
}
],
"meta-type": "object"
},
{
- "name": "681",
+ "name": "686",
"members": [
{
"name": "data",
- "type": "741"
+ "type": "746"
}
],
"meta-type": "object"
},
{
- "name": "682",
+ "name": "687",
"members": [
{
"name": "l1_update"
@@ -20716,7 +20780,7 @@
]
},
{
- "name": "683",
+ "name": "688",
"members": [
{
"name": "read"
@@ -20748,7 +20812,7 @@
]
},
{
- "name": "684",
+ "name": "689",
"members": [
{
"name": "inet"
@@ -20760,12 +20824,12 @@
]
},
{
- "name": "685",
+ "name": "690",
"members": [
{
"name": "template",
"default": null,
- "type": "686"
+ "type": "691"
},
{
"name": "main-header",
@@ -20816,7 +20880,7 @@
"meta-type": "object"
},
{
- "name": "686",
+ "name": "691",
"members": [
{
"name": "none"
@@ -20840,7 +20904,7 @@
]
},
{
- "name": "687",
+ "name": "692",
"members": [
{
"name": "aes"
@@ -20856,7 +20920,7 @@
]
},
{
- "name": "688",
+ "name": "693",
"members": [
{
"name": "key-secret",
@@ -20867,7 +20931,7 @@
"meta-type": "object"
},
{
- "name": "689",
+ "name": "694",
"members": [
{
"name": "key-secret",
@@ -20878,7 +20942,7 @@
"meta-type": "object"
},
{
- "name": "690",
+ "name": "695",
"members": [
{
"name": "aes"
@@ -20890,7 +20954,7 @@
]
},
{
- "name": "691",
+ "name": "696",
"members": [
{
"name": "luks"
@@ -20910,7 +20974,7 @@
]
},
{
- "name": "692",
+ "name": "697",
"members": [
{
"name": "key-secret",
@@ -20920,7 +20984,7 @@
"meta-type": "object"
},
{
- "name": "693",
+ "name": "698",
"members": [
{
"name": "key-secret",
@@ -20930,7 +20994,7 @@
"meta-type": "object"
},
{
- "name": "694",
+ "name": "699",
"members": [
{
"name": "key-secret",
@@ -20940,7 +21004,7 @@
"meta-type": "object"
},
{
- "name": "695",
+ "name": "700",
"members": [
{
"name": "none"
@@ -20960,11 +21024,11 @@
]
},
{
- "name": "696",
+ "name": "701",
"members": [
{
"name": "type",
- "type": "742"
+ "type": "747"
},
{
"name": "hash",
@@ -20974,7 +21038,7 @@
"meta-type": "object"
},
{
- "name": "697",
+ "name": "702",
"members": [
{
"name": "off"
@@ -20998,7 +21062,7 @@
]
},
{
- "name": "698",
+ "name": "703",
"members": [
{
"name": "aes-128"
@@ -21054,7 +21118,7 @@
]
},
{
- "name": "699",
+ "name": "704",
"members": [
{
"name": "ecb"
@@ -21078,7 +21142,7 @@
]
},
{
- "name": "700",
+ "name": "705",
"members": [
{
"name": "plain"
@@ -21098,7 +21162,7 @@
]
},
{
- "name": "701",
+ "name": "706",
"members": [
{
"name": "md5"
@@ -21134,28 +21198,28 @@
]
},
{
- "name": "702",
+ "name": "707",
"tag": "format",
"variants": [
{
"case": "qcow",
- "type": "688"
+ "type": "693"
},
{
"case": "luks",
- "type": "744"
+ "type": "749"
}
],
"members": [
{
"name": "format",
- "type": "743"
+ "type": "748"
}
],
"meta-type": "object"
},
{
- "name": "703",
+ "name": "708",
"members": [
{
"name": "v2"
@@ -21171,7 +21235,7 @@
]
},
{
- "name": "704",
+ "name": "709",
"members": [
{
"name": "zlib"
@@ -21187,16 +21251,16 @@
]
},
{
- "name": "705",
+ "name": "710",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "745"
+ "type": "750"
},
{
"case": "luks2",
- "type": "746"
+ "type": "751"
},
{
"case": "luks-any",
@@ -21206,13 +21270,13 @@
"members": [
{
"name": "format",
- "type": "691"
+ "type": "696"
}
],
"meta-type": "object"
},
{
- "name": "706",
+ "name": "711",
"members": [
{
"name": "dynamic"
@@ -21228,7 +21292,7 @@
]
},
{
- "name": "707",
+ "name": "712",
"members": [
{
"name": "monolithicSparse"
@@ -21256,7 +21320,7 @@
]
},
{
- "name": "708",
+ "name": "713",
"members": [
{
"name": "ide"
@@ -21280,7 +21344,7 @@
]
},
{
- "name": "709",
+ "name": "714",
"members": [
{
"name": "dynamic"
@@ -21296,7 +21360,7 @@
]
},
{
- "name": "710",
+ "name": "715",
"members": [
{
"name": "active"
@@ -21312,12 +21376,12 @@
]
},
{
- "name": "711",
+ "name": "716",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "747"
+ "type": "752"
},
{
"case": "qcow",
@@ -21327,13 +21391,13 @@
"members": [
{
"name": "format",
- "type": "743"
+ "type": "748"
}
],
"meta-type": "object"
},
{
- "name": "712",
+ "name": "717",
"members": [
{
"name": "logfile",
@@ -21363,7 +21427,7 @@
"meta-type": "object"
},
{
- "name": "713",
+ "name": "718",
"members": [
{
"name": "logfile",
@@ -21383,7 +21447,7 @@
"meta-type": "object"
},
{
- "name": "714",
+ "name": "719",
"members": [
{
"name": "logfile",
@@ -21397,7 +21461,7 @@
},
{
"name": "addr",
- "type": "349"
+ "type": "352"
},
{
"name": "tls-creds",
@@ -21448,7 +21512,7 @@
"meta-type": "object"
},
{
- "name": "715",
+ "name": "720",
"members": [
{
"name": "logfile",
@@ -21462,18 +21526,18 @@
},
{
"name": "remote",
- "type": "349"
+ "type": "352"
},
{
"name": "local",
"default": null,
- "type": "349"
+ "type": "352"
}
],
"meta-type": "object"
},
{
- "name": "716",
+ "name": "721",
"members": [
{
"name": "logfile",
@@ -21489,7 +21553,7 @@
"meta-type": "object"
},
{
- "name": "717",
+ "name": "722",
"members": [
{
"name": "logfile",
@@ -21509,7 +21573,7 @@
"meta-type": "object"
},
{
- "name": "718",
+ "name": "723",
"members": [
{
"name": "logfile",
@@ -21530,7 +21594,7 @@
"meta-type": "object"
},
{
- "name": "719",
+ "name": "724",
"members": [
{
"name": "logfile",
@@ -21550,7 +21614,7 @@
"meta-type": "object"
},
{
- "name": "720",
+ "name": "725",
"members": [
{
"name": "logfile",
@@ -21570,7 +21634,7 @@
"meta-type": "object"
},
{
- "name": "721",
+ "name": "726",
"members": [
{
"name": "logfile",
@@ -21596,7 +21660,7 @@
"meta-type": "object"
},
{
- "name": "722",
+ "name": "727",
"members": [
{
"name": "logfile",
@@ -21616,7 +21680,7 @@
"meta-type": "object"
},
{
- "name": "723",
+ "name": "728",
"members": [
{
"name": "logfile",
@@ -21652,7 +21716,7 @@
"meta-type": "object"
},
{
- "name": "724",
+ "name": "729",
"members": [
{
"name": "logfile",
@@ -21673,7 +21737,7 @@
"meta-type": "object"
},
{
- "name": "725",
+ "name": "730",
"members": [
{
"name": "path",
@@ -21689,7 +21753,7 @@
"meta-type": "object"
},
{
- "name": "726",
+ "name": "731",
"members": [
{
"name": "chardev",
@@ -21699,7 +21763,7 @@
"meta-type": "object"
},
{
- "name": "727",
+ "name": "732",
"members": [
{
"name": "unmapped"
@@ -22355,11 +22419,11 @@
]
},
{
- "name": "728",
+ "name": "733",
"members": [
{
"name": "key",
- "type": "402"
+ "type": "405"
},
{
"name": "down",
@@ -22369,11 +22433,11 @@
"meta-type": "object"
},
{
- "name": "729",
+ "name": "734",
"members": [
{
"name": "button",
- "type": "748"
+ "type": "753"
},
{
"name": "down",
@@ -22383,11 +22447,11 @@
"meta-type": "object"
},
{
- "name": "730",
+ "name": "735",
"members": [
{
"name": "axis",
- "type": "749"
+ "type": "754"
},
{
"name": "value",
@@ -22397,11 +22461,11 @@
"meta-type": "object"
},
{
- "name": "731",
+ "name": "736",
"members": [
{
"name": "type",
- "type": "750"
+ "type": "755"
},
{
"name": "slot",
@@ -22413,7 +22477,7 @@
},
{
"name": "axis",
- "type": "749"
+ "type": "754"
},
{
"name": "value",
@@ -22423,7 +22487,7 @@
"meta-type": "object"
},
{
- "name": "732",
+ "name": "737",
"members": [
{
"name": "persistent",
@@ -22434,13 +22498,13 @@
"meta-type": "object"
},
{
- "name": "733",
+ "name": "738",
"members": [
],
"meta-type": "object"
},
{
- "name": "734",
+ "name": "739",
"members": [
{
"name": "exact"
@@ -22456,7 +22520,7 @@
]
},
{
- "name": "735",
+ "name": "740",
"members": [
{
"name": "u8"
@@ -22492,7 +22556,7 @@
]
},
{
- "name": "736",
+ "name": "741",
"members": [
{
"name": "number",
@@ -22508,21 +22572,21 @@
},
{
"name": "io_range",
- "type": "751"
+ "type": "756"
},
{
"name": "memory_range",
- "type": "751"
+ "type": "756"
},
{
"name": "prefetchable_range",
- "type": "751"
+ "type": "756"
}
],
"meta-type": "object"
},
{
- "name": "737",
+ "name": "742",
"members": [
{
"name": "compat",
@@ -22560,22 +22624,22 @@
{
"name": "encrypt",
"default": null,
- "type": "752"
+ "type": "757"
},
{
"name": "bitmaps",
"default": null,
- "type": "[753]"
+ "type": "[758]"
},
{
"name": "compression-type",
- "type": "704"
+ "type": "709"
}
],
"meta-type": "object"
},
{
- "name": "738",
+ "name": "743",
"members": [
{
"name": "create-type",
@@ -22591,34 +22655,34 @@
},
{
"name": "extents",
- "type": "[754]"
+ "type": "[759]"
}
],
"meta-type": "object"
},
{
- "name": "739",
+ "name": "744",
"members": [
{
"name": "cipher-alg",
- "type": "698"
+ "type": "703"
},
{
"name": "cipher-mode",
- "type": "699"
+ "type": "704"
},
{
"name": "ivgen-alg",
- "type": "700"
+ "type": "705"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "701"
+ "type": "706"
},
{
"name": "hash-alg",
- "type": "701"
+ "type": "706"
},
{
"name": "payload-offset",
@@ -22634,24 +22698,24 @@
},
{
"name": "slots",
- "type": "[755]"
+ "type": "[760]"
}
],
"meta-type": "object"
},
{
- "name": "740",
+ "name": "745",
"members": [
{
"name": "encryption-format",
"default": null,
- "type": "691"
+ "type": "696"
}
],
"meta-type": "object"
},
{
- "name": "741",
+ "name": "746",
"members": [
{
"name": "extent-size-hint",
@@ -22662,7 +22726,7 @@
"meta-type": "object"
},
{
- "name": "742",
+ "name": "747",
"members": [
{
"name": "md5"
@@ -22682,7 +22746,7 @@
]
},
{
- "name": "743",
+ "name": "748",
"members": [
{
"name": "qcow"
@@ -22698,7 +22762,7 @@
]
},
{
- "name": "744",
+ "name": "749",
"members": [
{
"name": "key-secret",
@@ -22708,27 +22772,27 @@
{
"name": "cipher-alg",
"default": null,
- "type": "698"
+ "type": "703"
},
{
"name": "cipher-mode",
"default": null,
- "type": "699"
+ "type": "704"
},
{
"name": "ivgen-alg",
"default": null,
- "type": "700"
+ "type": "705"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "701"
+ "type": "706"
},
{
"name": "hash-alg",
"default": null,
- "type": "701"
+ "type": "706"
},
{
"name": "iter-time",
@@ -22739,7 +22803,7 @@
"meta-type": "object"
},
{
- "name": "745",
+ "name": "750",
"members": [
{
"name": "key-secret",
@@ -22748,13 +22812,13 @@
{
"name": "cipher-alg",
"default": null,
- "type": "698"
+ "type": "703"
}
],
"meta-type": "object"
},
{
- "name": "746",
+ "name": "751",
"members": [
{
"name": "key-secret",
@@ -22763,17 +22827,17 @@
{
"name": "cipher-alg",
"default": null,
- "type": "698"
+ "type": "703"
}
],
"meta-type": "object"
},
{
- "name": "747",
+ "name": "752",
"members": [
{
"name": "state",
- "type": "710"
+ "type": "715"
},
{
"name": "new-secret",
@@ -22804,7 +22868,7 @@
"meta-type": "object"
},
{
- "name": "748",
+ "name": "753",
"members": [
{
"name": "left"
@@ -22852,7 +22916,7 @@
]
},
{
- "name": "749",
+ "name": "754",
"members": [
{
"name": "x"
@@ -22868,7 +22932,7 @@
]
},
{
- "name": "750",
+ "name": "755",
"members": [
{
"name": "begin"
@@ -22896,7 +22960,7 @@
]
},
{
- "name": "751",
+ "name": "756",
"members": [
{
"name": "base",
@@ -22910,12 +22974,12 @@
"meta-type": "object"
},
{
- "name": "752",
+ "name": "757",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "739"
+ "type": "744"
},
{
"case": "aes",
@@ -22925,18 +22989,18 @@
"members": [
{
"name": "format",
- "type": "687"
+ "type": "692"
}
],
"meta-type": "object"
},
{
- "name": "[753]",
- "element-type": "753",
+ "name": "[758]",
+ "element-type": "758",
"meta-type": "array"
},
{
- "name": "753",
+ "name": "758",
"members": [
{
"name": "name",
@@ -22948,18 +23012,18 @@
},
{
"name": "flags",
- "type": "[756]"
+ "type": "[761]"
}
],
"meta-type": "object"
},
{
- "name": "[754]",
- "element-type": "754",
+ "name": "[759]",
+ "element-type": "759",
"meta-type": "array"
},
{
- "name": "754",
+ "name": "759",
"members": [
{
"name": "filename",
@@ -22987,12 +23051,12 @@
"meta-type": "object"
},
{
- "name": "[755]",
- "element-type": "755",
+ "name": "[760]",
+ "element-type": "760",
"meta-type": "array"
},
{
- "name": "755",
+ "name": "760",
"members": [
{
"name": "active",
@@ -23016,12 +23080,12 @@
"meta-type": "object"
},
{
- "name": "[756]",
- "element-type": "756",
+ "name": "[761]",
+ "element-type": "761",
"meta-type": "array"
},
{
- "name": "756",
+ "name": "761",
"members": [
{
"name": "in-use"
@@ -23616,6 +23680,10 @@
"name": "pc-i440fx-2.10-machine",
"parent": "generic-pc-machine"
},
+ {
+ "name": "thread-context",
+ "parent": "object"
+ },
{
"name": "i82557c",
"parent": "pci-device"
@@ -23625,8 +23693,8 @@
"parent": "pci-device"
},
{
- "name": "thread-context",
- "parent": "object"
+ "name": "EPYC-Milan-v2-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
"name": "Haswell-IBRS-x86_64-cpu",
@@ -23736,10 +23804,6 @@
"name": "Opteron_G2-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
- {
- "name": "EPYC-Milan-v2-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "chardev-dbus",
"parent": "chardev-socket"
@@ -23776,6 +23840,10 @@
"name": "amd-iommu",
"parent": "x86-iommu"
},
+ {
+ "name": "Nehalem-v2-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "virtio-9p-pci-non-transitional",
"parent": "virtio-9p-pci-base"
@@ -23784,10 +23852,6 @@
"name": "memory-backend-file",
"parent": "memory-backend"
},
- {
- "name": "Nehalem-v2-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "xen-disk",
"parent": "xen-block"
@@ -24064,10 +24128,6 @@
"name": "vhost-user-blk-pci-non-transitional",
"parent": "vhost-user-blk-pci-base"
},
- {
- "name": "Cooperlake-v2-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "cirrus-vga",
"parent": "pci-device"
@@ -24113,8 +24173,8 @@
"parent": "xen-block"
},
{
- "name": "gpex-root",
- "parent": "pci-device"
+ "name": "Cooperlake-v2-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
"name": "container",
@@ -24136,6 +24196,10 @@
"name": "sgx-epc",
"parent": "device"
},
+ {
+ "name": "gpex-root",
+ "parent": "pci-device"
+ },
{
"name": "vmport",
"parent": "isa-device"
@@ -24842,7 +24906,7 @@
},
{
"name": "PIIX3",
- "parent": "pci-piix3"
+ "parent": "pci-piix"
},
{
"name": "pc-q35-2.4-machine",
@@ -25360,6 +25424,10 @@
"name": "virtio-iommu-device",
"parent": "virtio-device"
},
+ {
+ "name": "chardev-pty",
+ "parent": "chardev"
+ },
{
"name": "virtio-net-pci",
"parent": "virtio-net-pci-base"
@@ -25397,8 +25465,8 @@
"parent": "virtio-mem-pci-base"
},
{
- "name": "chardev-pty",
- "parent": "chardev"
+ "name": "chardev-serial",
+ "parent": "chardev-fd"
},
{
"name": "virtio-pmem-pci",
@@ -25641,8 +25709,8 @@
"parent": "netfilter"
},
{
- "name": "chardev-serial",
- "parent": "chardev-fd"
+ "name": "virtio-blk-pci-transitional",
+ "parent": "virtio-blk-pci-base"
},
{
"name": "chardev-ringbuf",
@@ -25685,16 +25753,16 @@
"parent": "qio-channel"
},
{
- "name": "virtio-blk-pci-transitional",
- "parent": "virtio-blk-pci-base"
+ "name": "GraniteRapids-v1-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
"name": "virtio-vga",
"parent": "virtio-vga-base-type"
},
{
- "name": "GraniteRapids-v1-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "piix4-isa",
+ "parent": "pci-piix"
},
{
"name": "Icelake-Server-v1-x86_64-cpu",
@@ -28379,6 +28447,11 @@
"description": "on/off",
"type": "bool"
},
+ {
+ "default-value": 0,
+ "name": "hostmem",
+ "type": "size"
+ },
{
"default-value": false,
"name": "x-disable-legacy-check",
@@ -28403,8 +28476,7 @@
},
{
"default-value": true,
- "name": "queue_reset",
- "description": "on/off",
+ "name": "use-started",
"type": "bool"
},
{
@@ -28415,7 +28487,8 @@
},
{
"default-value": true,
- "name": "use-started",
+ "name": "queue_reset",
+ "description": "on/off",
"type": "bool"
},
{
@@ -28514,6 +28587,11 @@
"description": "on/off",
"type": "bool"
},
+ {
+ "default-value": 0,
+ "name": "hostmem",
+ "type": "size"
+ },
{
"default-value": 1280,
"name": "xres",
@@ -28653,68 +28731,164 @@
"type": "bool"
},
{
- "name": "acpi_enable_cmd",
- "type": "uint8"
+ "name": "acpi-pci-hotplug-with-bridge-support",
+ "type": "bool"
},
{
- "name": "x-smi-negotiated-features",
- "type": "uint64"
+ "name": "gsi[12]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[16]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[13]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "rtc",
+ "type": "child<mc146818rtc>"
+ },
+ {
+ "name": "gsi[14]",
+ "type": "link<irq>"
},
{
"name": "disable_s4",
"type": "uint8"
},
+ {
+ "name": "disable_s3",
+ "type": "uint8"
+ },
+ {
+ "name": "gsi[15]",
+ "type": "link<irq>"
+ },
{
"name": "sci_int",
"type": "uint8"
},
{
- "name": "acpi-pci-hotplug-with-bridge-support",
+ "name": "acpi_disable_cmd",
+ "type": "uint8"
+ },
+ {
+ "name": "gsi[17]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "pm_io_base",
+ "type": "uint32"
+ },
+ {
+ "name": "gsi[18]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[19]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "enable_tco",
"type": "bool"
},
+ {
+ "name": "s4_val",
+ "type": "uint8"
+ },
{
"name": "memory-hotplug-support",
"type": "bool"
},
{
- "name": "rtc",
- "type": "child<mc146818rtc>"
+ "name": "gsi[0]",
+ "type": "link<irq>"
},
{
- "name": "disable_s3",
- "type": "uint8"
+ "name": "x-smi-negotiated-features",
+ "type": "uint64"
},
{
- "name": "enable_tco",
- "type": "bool"
+ "name": "gsi[1]",
+ "type": "link<irq>"
},
{
- "name": "gpe0_blk_len",
- "type": "uint32"
+ "name": "gsi[20]",
+ "type": "link<irq>"
},
{
"name": "gpe0_blk",
"type": "uint32"
},
+ {
+ "name": "gsi[21]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[2]",
+ "type": "link<irq>"
+ },
{
"name": "x-keep-pci-slot-hpc",
"type": "bool"
},
{
- "name": "acpi_disable_cmd",
- "type": "uint8"
+ "name": "gsi[3]",
+ "type": "link<irq>"
},
{
- "name": "s4_val",
+ "name": "gsi[22]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gpe0_blk_len",
+ "type": "uint32"
+ },
+ {
+ "name": "gsi[4]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[23]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "acpi_enable_cmd",
"type": "uint8"
},
+ {
+ "name": "gsi[5]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[6]",
+ "type": "link<irq>"
+ },
{
"name": "cpu-hotplug-legacy",
"type": "bool"
},
{
- "name": "pm_io_base",
- "type": "uint32"
+ "name": "gsi[7]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[8]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[10]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[9]",
+ "type": "link<irq>"
+ },
+ {
+ "name": "gsi[11]",
+ "type": "link<irq>"
}
],
"id": "libvirt-24"
@@ -29842,9 +30016,9 @@
"type": "bool"
},
{
- "default-value": 0,
- "name": "memaddr",
- "type": "uint64"
+ "default-value": false,
+ "name": "dynamic-memslots",
+ "type": "bool"
},
{
"default-value": true,
@@ -29894,8 +30068,8 @@
"type": "bool"
},
{
- "default-value": false,
- "name": "packed",
+ "default-value": true,
+ "name": "queue_reset",
"description": "on/off",
"type": "bool"
},
@@ -29906,8 +30080,9 @@
"type": "bool"
},
{
- "default-value": true,
- "name": "use-started",
+ "default-value": false,
+ "name": "packed",
+ "description": "on/off",
"type": "bool"
},
{
@@ -29921,8 +30096,7 @@
},
{
"default-value": true,
- "name": "queue_reset",
- "description": "on/off",
+ "name": "use-started",
"type": "bool"
},
{
@@ -29931,14 +30105,19 @@
"description": "on/off/auto",
"type": "OnOffAuto"
},
+ {
+ "name": "size",
+ "type": "size"
+ },
{
"default-value": true,
"name": "use-disabled-flag",
"type": "bool"
},
{
- "name": "size",
- "type": "size"
+ "default-value": 0,
+ "name": "memaddr",
+ "type": "uint64"
},
{
"name": "virtio-backend",
@@ -35547,6 +35726,11 @@
"help": "Set off to disable the instantiation an ISA serial port",
"type": "boolean"
},
+ {
+ "name": "x-south-bridge",
+ "help": "Use a different south bridge than PIIX3",
+ "type": "string"
+ },
{
"name": "kernel",
"help": "Linux kernel image file",
@@ -36443,6 +36627,14 @@
"name": "sockets",
"type": "number"
},
+ {
+ "name": "books",
+ "type": "number"
+ },
+ {
+ "name": "drawers",
+ "type": "number"
+ },
{
"name": "cpus",
"type": "number"
diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
index ec4c8217dd..1dfe173a57 100644
--- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml
@@ -201,7 +201,7 @@
<flag name='virtio-blk-vhost-vdpa'/>
<version>8001050</version>
<microcodeVersion>43100246</microcodeVersion>
- <package>v8.1.0-1639-g63011373ad</package>
+ <package>v8.1.0-2161-ga95260486a</package>
<arch>x86_64</arch>
<hostCPU type='kvm' model='base' migratability='yes'>
<property name='avx-ne-convert' type='boolean' value='false'/>
--
2.41.0
1
0
Test pipeline: https://gitlab.com/abologna/libvirt/-/pipelines/1049326523
Changes from [v1]
* fix test suite on macOS and ensure it is run as part of the
pipeline (with the previous version it would just always fail);
* disable a couple of tests (check-html, check-html-references)
that I had missed the first time around.
[v1] https://listman.redhat.com/archives/libvir-list/2023-October/242491.html
Andrea Bolognani (8):
tests: Fix some test cases on macOS
ci: Disable optimizations on macOS
meson: Do less when not building from git
meson: Move all handling of test options together
meson: Handle -Dtests=enabled with Clang
meson: Make -Dexpensive_tests depend on -Dtests
meson: Disable all tests when tests are disabled
meson: Rename build_tests -> tests_enabled
build-aux/meson.build | 99 +++++----
ci/cirrus/build.yml | 2 +-
docs/html/meson.build | 20 +-
docs/meson.build | 24 ++-
meson.build | 75 ++++---
meson_options.txt | 2 +-
src/access/meson.build | 16 +-
src/meson.build | 204 +++++++++---------
.../disk-source-fd.x86_64-latest.args | 10 +-
.../disk-vhostvdpa.x86_64-latest.args | 2 +-
tests/qemuxml2argvtest.c | 8 +-
11 files changed, 242 insertions(+), 220 deletions(-)
--
2.41.0
2
9