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
- 40176 discussions
[PATCH v2 00/10] Deprecate/rename singlestep command line option, monitor interfaces
by Peter Maydell 14 Apr '23
by Peter Maydell 14 Apr '23
14 Apr '23
The command line option '-singlestep' and its HMP equivalent
the 'singlestep' command are very confusingly named, because
they have nothing to do with single-stepping the guest (either
via the gdb stub or by emulation of guest CPU architectural
debug facilities). What they actually do is put TCG into a
mode where it puts only one guest instruction into each
translation block. This is useful for some circumstances
such as when you want the -d debug logging to be easier to
interpret, or if you have a finicky guest binary that wants
to see interrupts delivered at something other than the end
of a basic block.
The confusing name is made worse by the fact that our
documentation for these is so minimal as to be useless
for telling users what they really do.
This series:
* changes the command line interface: for user-mode
emulators, the new option is '-one-insn-per-tb',
and for system mode emulators it is a TCG accel
property '-accel tcg,one-insn-per-tb=on'
* updates all the places which currently directly touch
the 'singlestep' global variable to instead get the
current accelerator and query/set the QOM property
* documents that the old -singlestep option is deprecated
* adds a new HMP command 'one-insn-per-tb', and deprecates
the old 'singlestep' command. (Strictly we don't need to
deprecate HMP commands, but I'd already written the code
for v1 of this series and it's a minor user convenience.)
* makes the HMP 'info status' output report "one insn per TB"
instead of "single step mode"
* adds a new 'one-insn-per-tb' member to the QMP StatusInfo
type, and deprecates the old 'singlestep' field
Notes:
* I hope I have got the QMP changes and deprecation right,
but that's probably the bit in most need of review from
an expert
* There's an argument for just dropping the reporting of
one-insn-per-tb in QMP StatusInfo at all, except that
(a) it's hard to know if anybody's really using it
(b) then the info isn't reported to HMP 'info status',
which wouldn't line up with HMP having a mechanism
to get/set the value
* I have written patch 3 on the assumption that curr_cflags()
is not such a hot codepath that we can't afford to have
a QOM cast macro in it; the alternative would be to
keep it using a global variable but make the global be
restricted to accel/tcg/internals.h. RTH: opinions welcome...
* Still haven't tested on bsd-user, but the patch is identical
to the linux-user change
thanks
-- PMM
Peter Maydell (10):
make one-insn-per-tb an accel option
softmmu: Don't use 'singlestep' global in QMP and HMP commands
tcg: Use one-insn-per-tb accelerator property in curr_cflags()
linux-user: Add '-one-insn-per-tb' option equivalent to '-singlestep'
bsd-user: Add '-one-insn-per-tb' option equivalent to '-singlestep'
Document that -singlestep command line option is deprecated
hmp: Add 'one-insn-per-tb' command equivalent to 'singlestep'
hmp: Report 'one-insn-per-tb', not 'single step mode', in 'info
status' output
qapi/run-state.json: Fix missing newline at end of file
hmp: Deprecate 'singlestep' member of StatusInfo
docs/about/deprecated.rst | 35 +++++++++++++++++++++++++++++++++++
docs/interop/qmp-intro.txt | 1 +
docs/user/main.rst | 14 ++++++++++++--
qapi/run-state.json | 19 +++++++++++++++----
accel/tcg/internal.h | 16 ++++++++++++++++
include/exec/cpu-common.h | 3 ---
include/monitor/hmp.h | 2 +-
accel/tcg/cpu-exec.c | 5 +++--
accel/tcg/tcg-all.c | 32 ++++++++++++++++++--------------
bsd-user/main.c | 14 +++++++++-----
linux-user/main.c | 18 ++++++++++++------
softmmu/globals.c | 1 -
softmmu/runstate-hmp-cmds.c | 22 ++++++++++++++++++----
softmmu/runstate.c | 12 +++++++++++-
softmmu/vl.c | 17 +++++++++++++++--
tests/qtest/test-hmp.c | 1 +
hmp-commands.hx | 25 +++++++++++++++++++++----
qemu-options.hx | 12 ++++++++++--
tcg/tci/README | 2 +-
19 files changed, 199 insertions(+), 52 deletions(-)
--
2.34.1
6
34
Commit dbf1f68410 ("security: do not remember/recall labels for VFIO")
rightly changed the DAC and SELinux labeling parameters to fix a problem
with "VFIO hostdevs" but really only addressed the PCI codepaths.
As a result, we can still encounter this with VFIO MDEVs such as
vfio-ccw and vfio-ap, which can fail on a hotplug:
[test@host ~]# mdevctl stop -u 11f2d2bc-4083-431d-a023-eff72715c4f0
[test@host ~]# mdevctl start -u 11f2d2bc-4083-431d-a023-eff72715c4f0
[test@host ~]# cat disk.xml
<hostdev mode='subsystem' type='mdev' model='vfio-ccw'>
<source>
<address uuid='11f2d2bc-4083-431d-a023-eff72715c4f0'/>
</source>
<address type='ccw' cssid='0xfe' ssid='0x0' devno='0x3c51'/>
</hostdev>
[test@host ~]# virsh attach-device guest ~/disk.xml
error: Failed to attach device from /home/test/disk.xml
error: Requested operation is not valid: Setting different SELinux label on /dev/vfio/3 which is already in use
Make the same changes as reported in commit dbf1f68410, for the mdev paths.
Reported-by: Matthew Rosato <mjrosato(a)linux.ibm.com>
Signed-off-by: Eric Farman <farman(a)linux.ibm.com>
---
src/security/security_dac.c | 4 ++--
src/security/security_selinux.c | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/security/security_dac.c b/src/security/security_dac.c
index 9be8f458d1..bceb6a5c24 100644
--- a/src/security/security_dac.c
+++ b/src/security/security_dac.c
@@ -1310,7 +1310,7 @@ virSecurityDACSetHostdevLabel(virSecurityManager *mgr,
if (!(vfiodev = virMediatedDeviceGetIOMMUGroupDev(mdevsrc->uuidstr)))
return -1;
- ret = virSecurityDACSetHostdevLabelHelper(vfiodev, true, &cbdata);
+ ret = virSecurityDACSetHostdevLabelHelper(vfiodev, false, &cbdata);
break;
}
@@ -1466,7 +1466,7 @@ virSecurityDACRestoreHostdevLabel(virSecurityManager *mgr,
if (!(vfiodev = virMediatedDeviceGetIOMMUGroupDev(mdevsrc->uuidstr)))
return -1;
- ret = virSecurityDACRestoreFileLabel(mgr, vfiodev);
+ ret = virSecurityDACRestoreFileLabelInternal(mgr, NULL, vfiodev, false);
break;
}
diff --git a/src/security/security_selinux.c b/src/security/security_selinux.c
index e43962435f..9c23735aa3 100644
--- a/src/security/security_selinux.c
+++ b/src/security/security_selinux.c
@@ -2217,7 +2217,7 @@ virSecuritySELinuxSetHostdevSubsysLabel(virSecurityManager *mgr,
if (!(vfiodev = virMediatedDeviceGetIOMMUGroupDev(mdevsrc->uuidstr)))
return ret;
- ret = virSecuritySELinuxSetHostdevLabelHelper(vfiodev, true, &data);
+ ret = virSecuritySELinuxSetHostdevLabelHelper(vfiodev, false, &data);
break;
}
@@ -2445,7 +2445,7 @@ virSecuritySELinuxRestoreHostdevSubsysLabel(virSecurityManager *mgr,
if (!(vfiodev = virMediatedDeviceGetIOMMUGroupDev(mdevsrc->uuidstr)))
return -1;
- ret = virSecuritySELinuxRestoreFileLabel(mgr, vfiodev, true);
+ ret = virSecuritySELinuxRestoreFileLabel(mgr, vfiodev, false);
break;
}
--
2.37.2
2
3
Many things in libvirt attempt to construct error messages from various
sub-strings which is not translation friednly.
The beginning of the series refactors the cgroup code to avoid this
practice.
The end of this series is an example how the worst offender, virsh event
handling code, can be improved to avoid the bad practice.
I've found most cases using:
git grep ' _([^"]'
Unfortunateluy the better practice is a bit more verbose, thus RFC.
Peter Krempa (8):
virCgroupV1GetBlkioIo(Device)Serviced: Refactor extraction of cgroup
data
Don't translate strings used with VIR_DEBUG
virshGraphicsAddressToString: Remove pointless translation
vshPrint: Add version using 'va_list'
virsh: event: Introduce virshEventPrintf
virsh-domain-event: Make 'virshEventTrayChangePrint' translation
friendly
virsh-domain-event: Make 'virshEventWatchdogPrint' translation
friendly
virsh-domain-event: Make 'virshEventIOError(Reason)Print' translation
friendly
src/util/vircgroupv1.c | 264 ++++++++++++++++---------------------
src/util/virnetlink.c | 6 +-
src/vz/vz_driver.c | 4 +-
tools/virsh-domain-event.c | 223 +++++++++++++++++--------------
tools/vsh.c | 32 +++--
tools/vsh.h | 4 +
6 files changed, 274 insertions(+), 259 deletions(-)
--
2.39.2
3
12
virsh command domxml-to-native failed with below error but start
command suceed for same domain xml.
"internal error: invalid PCI passthrough type 'default'"
If host pci device's driver attribute isn't defined in domain xml,
qemu driver will choose a proper value based on host environment
before starting qemu process. But this is missed in domxml-to-native
command, add the same logic so domxml-to-native could pass.
Signed-off-by: Zhenzhong Duan <zhenzhong.duan(a)intel.com>
---
src/qemu/qemu_domain.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 63b13b6875c9..517c90f93f0a 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -11274,6 +11274,17 @@ qemuDomainPrepareHostdev(virDomainHostdevDef *hostdev,
}
}
}
+ if (hostdev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
+ hostdev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI) {
+ bool supportsPassthroughVFIO = qemuHostdevHostSupportsPassthroughVFIO();
+ virDomainHostdevSubsysPCIBackendType *backend = &hostdev->source.subsys.u.pci.backend;
+
+ if (*backend == VIR_DOMAIN_HOSTDEV_PCI_BACKEND_DEFAULT &&
+ supportsPassthroughVFIO &&
+ virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE_VFIO_PCI)) {
+ *backend = VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO;
+ }
+ }
return 0;
}
--
2.25.1
3
2
igb is a new network device which will be introduced with QEMU 8.0.0.
It is a successor of e1000e so it has PCIe interface and is understands
virtio-net headers as e1000e does.
Signed-off-by: Akihiko Odaki <akihiko.odaki(a)daynix.com>
---
src/conf/domain_conf.c | 1 +
src/conf/domain_conf.h | 1 +
src/qemu/qemu_domain_address.c | 3 ++-
src/qemu/qemu_interface.c | 1 +
4 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index d16a247a45..25401f742f 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -587,6 +587,7 @@ VIR_ENUM_IMPL(virDomainNetModel,
"virtio",
"e1000",
"e1000e",
+ "igb",
"virtio-transitional",
"virtio-non-transitional",
"usb-net",
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 9e281692ff..44b070ba0c 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -954,6 +954,7 @@ typedef enum {
VIR_DOMAIN_NET_MODEL_VIRTIO,
VIR_DOMAIN_NET_MODEL_E1000,
VIR_DOMAIN_NET_MODEL_E1000E,
+ VIR_DOMAIN_NET_MODEL_IGB,
VIR_DOMAIN_NET_MODEL_VIRTIO_TRANSITIONAL,
VIR_DOMAIN_NET_MODEL_VIRTIO_NON_TRANSITIONAL,
VIR_DOMAIN_NET_MODEL_USB_NET,
diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c
index b8d1969fbe..9f13f5f195 100644
--- a/src/qemu/qemu_domain_address.c
+++ b/src/qemu/qemu_domain_address.c
@@ -750,7 +750,8 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDeviceDef *dev,
if (net->model == VIR_DOMAIN_NET_MODEL_VIRTIO_TRANSITIONAL)
return pciFlags;
- if (net->model == VIR_DOMAIN_NET_MODEL_E1000E)
+ if (net->model == VIR_DOMAIN_NET_MODEL_E1000E ||
+ net->model == VIR_DOMAIN_NET_MODEL_IGB)
return pcieFlags;
/* the only time model can be "unknown" is for type='hostdev'
diff --git a/src/qemu/qemu_interface.c b/src/qemu/qemu_interface.c
index 264d5e060c..2aa4d53215 100644
--- a/src/qemu/qemu_interface.c
+++ b/src/qemu/qemu_interface.c
@@ -241,6 +241,7 @@ 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);
}
--
2.40.0
3
5
[PATCH] qemucapabilitiestest: Update x86_64 capabilities for qemu-8.0.0-rc3
by Peter Krempa 13 Apr '23
by Peter Krempa 13 Apr '23
13 Apr '23
Notable changes:
- 'query-cryptodev' command added
- 'cxl-inject-uncorrectable-errors', 'cxl-inject-correctable-error'
commands added
- 'query-stats' returns data for 'cryptodev'
- keyboard definions were updated
- 'igb' device added
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
.../caps_8.0.0_x86_64.replies | 3245 +++++++++--------
.../caps_8.0.0_x86_64.xml | 8 +-
2 files changed, 1821 insertions(+), 1432 deletions(-)
diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
index dbb61b2533..41fc9fc6b3 100644
--- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.replies
@@ -17,11 +17,11 @@
{
"return": {
"qemu": {
- "micro": 50,
+ "micro": 93,
"minor": 2,
"major": 7
},
- "package": "v7.2.0-2146-g2946e1af27"
+ "package": "v8.0.0-rc3-28-g9d177b7f87"
},
"id": "libvirt-2"
}
@@ -1538,41 +1538,41 @@
"name": "closefd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "229"
+ "arg-type": "230"
},
{
"name": "add-fd",
- "ret-type": "231",
+ "ret-type": "232",
"meta-type": "command",
- "arg-type": "230"
+ "arg-type": "231"
},
{
"name": "remove-fd",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "232"
+ "arg-type": "233"
},
{
"name": "query-fdsets",
- "ret-type": "[233]",
+ "ret-type": "[234]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-command-line-options",
- "ret-type": "[235]",
+ "ret-type": "[236]",
"meta-type": "command",
- "arg-type": "234"
+ "arg-type": "235"
},
{
"name": "RTC_CHANGE",
"meta-type": "event",
- "arg-type": "236"
+ "arg-type": "237"
},
{
"name": "VFU_CLIENT_HANGUP",
"meta-type": "event",
- "arg-type": "237"
+ "arg-type": "238"
},
{
"name": "rtc-reset-reinjection",
@@ -1582,19 +1582,19 @@
},
{
"name": "query-sev",
- "ret-type": "238",
+ "ret-type": "239",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sev-launch-measure",
- "ret-type": "239",
+ "ret-type": "240",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sev-capabilities",
- "ret-type": "240",
+ "ret-type": "241",
"meta-type": "command",
"arg-type": "0"
},
@@ -1602,29 +1602,29 @@
"name": "sev-inject-launch-secret",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "241"
+ "arg-type": "242"
},
{
"name": "query-sev-attestation-report",
- "ret-type": "243",
+ "ret-type": "244",
"meta-type": "command",
- "arg-type": "242"
+ "arg-type": "243"
},
{
"name": "query-sgx",
- "ret-type": "246",
+ "ret-type": "247",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-sgx-capabilities",
- "ret-type": "246",
+ "ret-type": "247",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "xen-event-list",
- "ret-type": "[247]",
+ "ret-type": "[248]",
"meta-type": "command",
"arg-type": "0"
},
@@ -1632,46 +1632,46 @@
"name": "xen-event-inject",
"ret-type": "0",
"meta-type": "command",
- "arg-type": "248"
+ "arg-type": "249"
},
{
"name": "query-audiodevs",
- "ret-type": "[249]",
+ "ret-type": "[250]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-acpi-ospm-status",
- "ret-type": "[250]",
+ "ret-type": "[251]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "ACPI_DEVICE_OST",
"meta-type": "event",
- "arg-type": "251"
+ "arg-type": "252"
},
{
"name": "query-pci",
- "ret-type": "[252]",
+ "ret-type": "[253]",
"meta-type": "command",
"arg-type": "0"
},
{
"name": "query-stats",
- "ret-type": "[254]",
+ "ret-type": "[255]",
"meta-type": "command",
- "arg-type": "253"
+ "arg-type": "254"
},
{
"name": "query-stats-schemas",
- "ret-type": "[256]",
+ "ret-type": "[257]",
"meta-type": "command",
- "arg-type": "255"
+ "arg-type": "256"
},
{
"name": "x-query-virtio",
- "ret-type": "[257]",
+ "ret-type": "[258]",
"meta-type": "command",
"arg-type": "0",
"features": [
@@ -1680,40 +1680,58 @@
},
{
"name": "x-query-virtio-status",
- "ret-type": "259",
+ "ret-type": "260",
"meta-type": "command",
- "arg-type": "258",
+ "arg-type": "259",
"features": [
"unstable"
]
},
{
"name": "x-query-virtio-queue-status",
- "ret-type": "261",
+ "ret-type": "262",
"meta-type": "command",
- "arg-type": "260",
+ "arg-type": "261",
"features": [
"unstable"
]
},
{
"name": "x-query-virtio-vhost-queue-status",
- "ret-type": "263",
+ "ret-type": "264",
"meta-type": "command",
- "arg-type": "262",
+ "arg-type": "263",
"features": [
"unstable"
]
},
{
"name": "x-query-virtio-queue-element",
- "ret-type": "265",
+ "ret-type": "266",
"meta-type": "command",
- "arg-type": "264",
+ "arg-type": "265",
"features": [
"unstable"
]
},
+ {
+ "name": "query-cryptodev",
+ "ret-type": "[267]",
+ "meta-type": "command",
+ "arg-type": "0"
+ },
+ {
+ "name": "cxl-inject-uncorrectable-errors",
+ "ret-type": "0",
+ "meta-type": "command",
+ "arg-type": "268"
+ },
+ {
+ "name": "cxl-inject-correctable-error",
+ "ret-type": "0",
+ "meta-type": "command",
+ "arg-type": "269"
+ },
{
"name": "0",
"members": [
@@ -1733,7 +1751,7 @@
},
{
"name": "status",
- "type": "266"
+ "type": "270"
}
],
"meta-type": "object"
@@ -1747,7 +1765,7 @@
},
{
"name": "reason",
- "type": "267"
+ "type": "271"
}
],
"meta-type": "object"
@@ -1761,7 +1779,7 @@
},
{
"name": "reason",
- "type": "267"
+ "type": "271"
}
],
"meta-type": "object"
@@ -1771,7 +1789,7 @@
"members": [
{
"name": "action",
- "type": "268"
+ "type": "272"
}
],
"meta-type": "object"
@@ -1781,7 +1799,7 @@
"members": [
{
"name": "action",
- "type": "268"
+ "type": "272"
}
],
"meta-type": "object"
@@ -1792,22 +1810,22 @@
{
"name": "reboot",
"default": null,
- "type": "269"
+ "type": "273"
},
{
"name": "shutdown",
"default": null,
- "type": "270"
+ "type": "274"
},
{
"name": "panic",
"default": null,
- "type": "271"
+ "type": "275"
},
{
"name": "watchdog",
"default": null,
- "type": "268"
+ "type": "272"
}
],
"meta-type": "object"
@@ -1817,12 +1835,12 @@
"members": [
{
"name": "action",
- "type": "272"
+ "type": "276"
},
{
"name": "info",
"default": null,
- "type": "273"
+ "type": "277"
}
],
"meta-type": "object"
@@ -1832,12 +1850,12 @@
"members": [
{
"name": "action",
- "type": "272"
+ "type": "276"
},
{
"name": "info",
"default": null,
- "type": "273"
+ "type": "277"
}
],
"meta-type": "object"
@@ -1847,15 +1865,15 @@
"members": [
{
"name": "recipient",
- "type": "274"
+ "type": "278"
},
{
"name": "action",
- "type": "275"
+ "type": "279"
},
{
"name": "flags",
- "type": "276"
+ "type": "280"
}
],
"meta-type": "object"
@@ -2003,7 +2021,7 @@
{
"name": "read-only-mode",
"default": null,
- "type": "277"
+ "type": "281"
}
],
"meta-type": "object"
@@ -2225,7 +2243,7 @@
{
"name": "io-status",
"default": null,
- "type": "278"
+ "type": "282"
}
],
"meta-type": "object"
@@ -2266,12 +2284,12 @@
},
{
"name": "stats",
- "type": "279"
+ "type": "283"
},
{
"name": "driver-specific",
"default": null,
- "type": "280"
+ "type": "284"
},
{
"name": "parent",
@@ -2324,7 +2342,7 @@
},
{
"name": "io-status",
- "type": "278"
+ "type": "282"
},
{
"name": "ready",
@@ -2332,7 +2350,7 @@
},
{
"name": "status",
- "type": "281"
+ "type": "285"
},
{
"name": "auto-finalize",
@@ -2400,7 +2418,7 @@
{
"name": "mode",
"default": null,
- "type": "282"
+ "type": "286"
}
],
"meta-type": "object"
@@ -2488,7 +2506,7 @@
{
"name": "on-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "filter-node-name",
@@ -2522,7 +2540,7 @@
},
{
"name": "sync",
- "type": "284"
+ "type": "288"
},
{
"name": "speed",
@@ -2537,7 +2555,7 @@
{
"name": "bitmap-mode",
"default": null,
- "type": "285"
+ "type": "289"
},
{
"name": "compress",
@@ -2547,12 +2565,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "on-target-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "auto-finalize",
@@ -2572,7 +2590,7 @@
{
"name": "x-perf",
"default": null,
- "type": "286",
+ "type": "290",
"features": [
"unstable"
]
@@ -2589,7 +2607,7 @@
{
"name": "mode",
"default": null,
- "type": "282"
+ "type": "286"
}
],
"meta-type": "object"
@@ -2608,7 +2626,7 @@
},
{
"name": "sync",
- "type": "284"
+ "type": "288"
},
{
"name": "speed",
@@ -2623,7 +2641,7 @@
{
"name": "bitmap-mode",
"default": null,
- "type": "285"
+ "type": "289"
},
{
"name": "compress",
@@ -2633,12 +2651,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "on-target-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "auto-finalize",
@@ -2658,7 +2676,7 @@
{
"name": "x-perf",
"default": null,
- "type": "286",
+ "type": "290",
"features": [
"unstable"
]
@@ -2721,7 +2739,7 @@
},
{
"name": "detect_zeroes",
- "type": "287"
+ "type": "291"
},
{
"name": "bps",
@@ -2749,7 +2767,7 @@
},
{
"name": "image",
- "type": "288"
+ "type": "292"
},
{
"name": "bps_max",
@@ -2823,7 +2841,7 @@
},
{
"name": "cache",
- "type": "289"
+ "type": "293"
},
{
"name": "write_threshold",
@@ -2832,7 +2850,7 @@
{
"name": "dirty-bitmaps",
"default": null,
- "type": "[290]"
+ "type": "[294]"
}
],
"meta-type": "object"
@@ -2842,11 +2860,11 @@
"members": [
{
"name": "nodes",
- "type": "[291]"
+ "type": "[295]"
},
{
"name": "edges",
- "type": "[292]"
+ "type": "[296]"
}
],
"meta-type": "object"
@@ -2884,12 +2902,12 @@
},
{
"name": "sync",
- "type": "284"
+ "type": "288"
},
{
"name": "mode",
"default": null,
- "type": "282"
+ "type": "286"
},
{
"name": "speed",
@@ -2909,12 +2927,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "on-target-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "unmap",
@@ -2924,7 +2942,7 @@
{
"name": "copy-mode",
"default": null,
- "type": "293"
+ "type": "297"
},
{
"name": "auto-finalize",
@@ -2995,7 +3013,7 @@
},
{
"name": "bitmaps",
- "type": "[294]"
+ "type": "[298]"
}
],
"meta-type": "object"
@@ -3033,7 +3051,7 @@
},
{
"name": "sync",
- "type": "284"
+ "type": "288"
},
{
"name": "speed",
@@ -3053,12 +3071,12 @@
{
"name": "on-source-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "on-target-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "filter-node-name",
@@ -3068,7 +3086,7 @@
{
"name": "copy-mode",
"default": null,
- "type": "293"
+ "type": "297"
},
{
"name": "auto-finalize",
@@ -3123,7 +3141,7 @@
{
"name": "on-error",
"default": null,
- "type": "283"
+ "type": "287"
},
{
"name": "filter-node-name",
@@ -3228,197 +3246,197 @@
"variants": [
{
"case": "blkdebug",
- "type": "298"
+ "type": "302"
},
{
"case": "blklogwrites",
- "type": "299"
+ "type": "303"
},
{
"case": "blkverify",
- "type": "300"
+ "type": "304"
},
{
"case": "blkreplay",
- "type": "301"
+ "type": "305"
},
{
"case": "bochs",
- "type": "302"
+ "type": "306"
},
{
"case": "cloop",
- "type": "302"
+ "type": "306"
},
{
"case": "compress",
- "type": "302"
+ "type": "306"
},
{
"case": "copy-before-write",
- "type": "303"
+ "type": "307"
},
{
"case": "copy-on-read",
- "type": "304"
+ "type": "308"
},
{
"case": "dmg",
- "type": "302"
+ "type": "306"
},
{
"case": "file",
- "type": "305"
+ "type": "309"
},
{
"case": "ftp",
- "type": "306"
+ "type": "310"
},
{
"case": "ftps",
- "type": "307"
+ "type": "311"
},
{
"case": "gluster",
- "type": "308"
+ "type": "312"
},
{
"case": "host_cdrom",
- "type": "305"
+ "type": "309"
},
{
"case": "host_device",
- "type": "305"
+ "type": "309"
},
{
"case": "http",
- "type": "309"
+ "type": "313"
},
{
"case": "https",
- "type": "310"
+ "type": "314"
},
{
"case": "io_uring",
- "type": "311"
+ "type": "315"
},
{
"case": "iscsi",
- "type": "312"
+ "type": "316"
},
{
"case": "luks",
- "type": "313"
+ "type": "317"
},
{
"case": "nbd",
- "type": "314"
+ "type": "318"
},
{
"case": "nfs",
- "type": "315"
+ "type": "319"
},
{
"case": "null-aio",
- "type": "316"
+ "type": "320"
},
{
"case": "null-co",
- "type": "316"
+ "type": "320"
},
{
"case": "nvme",
- "type": "317"
+ "type": "321"
},
{
"case": "nvme-io_uring",
- "type": "318"
+ "type": "322"
},
{
"case": "parallels",
- "type": "302"
+ "type": "306"
},
{
"case": "preallocate",
- "type": "319"
+ "type": "323"
},
{
"case": "qcow2",
- "type": "320"
+ "type": "324"
},
{
"case": "qcow",
- "type": "321"
+ "type": "325"
},
{
"case": "qed",
- "type": "322"
+ "type": "326"
},
{
"case": "quorum",
- "type": "323"
+ "type": "327"
},
{
"case": "raw",
- "type": "324"
+ "type": "328"
},
{
"case": "rbd",
- "type": "325"
+ "type": "329"
},
{
"case": "replication",
- "type": "326"
+ "type": "330"
},
{
"case": "snapshot-access",
- "type": "302"
+ "type": "306"
},
{
"case": "ssh",
- "type": "327"
+ "type": "331"
},
{
"case": "throttle",
- "type": "328"
+ "type": "332"
},
{
"case": "vdi",
- "type": "302"
+ "type": "306"
},
{
"case": "vhdx",
- "type": "302"
+ "type": "306"
},
{
"case": "virtio-blk-vfio-pci",
- "type": "329"
+ "type": "333"
},
{
"case": "virtio-blk-vhost-user",
- "type": "330"
+ "type": "334"
},
{
"case": "virtio-blk-vhost-vdpa",
- "type": "331"
+ "type": "335"
},
{
"case": "vmdk",
- "type": "322"
+ "type": "326"
},
{
"case": "vpc",
- "type": "302"
+ "type": "306"
},
{
"case": "vvfat",
- "type": "332"
+ "type": "336"
}
],
"members": [
{
"name": "driver",
- "type": "295"
+ "type": "299"
},
{
"name": "node-name",
@@ -3428,12 +3446,12 @@
{
"name": "discard",
"default": null,
- "type": "296"
+ "type": "300"
},
{
"name": "cache",
"default": null,
- "type": "297"
+ "type": "301"
},
{
"name": "read-only",
@@ -3453,7 +3471,7 @@
{
"name": "detect-zeroes",
"default": null,
- "type": "287"
+ "type": "291"
}
],
"meta-type": "object"
@@ -3487,7 +3505,7 @@
},
{
"name": "options",
- "type": "333"
+ "type": "337"
}
],
"meta-type": "object"
@@ -3505,7 +3523,7 @@
},
{
"name": "options",
- "type": "334"
+ "type": "338"
},
{
"name": "force",
@@ -3562,11 +3580,11 @@
},
{
"name": "operation",
- "type": "335"
+ "type": "339"
},
{
"name": "action",
- "type": "336"
+ "type": "340"
},
{
"name": "nospace",
@@ -3585,7 +3603,7 @@
"members": [
{
"name": "type",
- "type": "337"
+ "type": "341"
},
{
"name": "device",
@@ -3616,7 +3634,7 @@
"members": [
{
"name": "type",
- "type": "337"
+ "type": "341"
},
{
"name": "device",
@@ -3646,11 +3664,11 @@
},
{
"name": "operation",
- "type": "335"
+ "type": "339"
},
{
"name": "action",
- "type": "336"
+ "type": "340"
}
],
"meta-type": "object"
@@ -3660,7 +3678,7 @@
"members": [
{
"name": "type",
- "type": "337"
+ "type": "341"
},
{
"name": "device",
@@ -3686,7 +3704,7 @@
"members": [
{
"name": "type",
- "type": "337"
+ "type": "341"
},
{
"name": "id",
@@ -3756,7 +3774,7 @@
},
{
"name": "iothread",
- "type": "338"
+ "type": "342"
},
{
"name": "force",
@@ -3789,7 +3807,7 @@
"members": [
{
"name": "type",
- "type": "339"
+ "type": "343"
},
{
"name": "error",
@@ -3893,7 +3911,7 @@
},
{
"name": "status",
- "type": "281"
+ "type": "285"
}
],
"meta-type": "object"
@@ -3972,11 +3990,11 @@
},
{
"name": "type",
- "type": "337"
+ "type": "341"
},
{
"name": "status",
- "type": "281"
+ "type": "285"
},
{
"name": "current-progress",
@@ -3999,7 +4017,7 @@
"members": [
{
"name": "addr",
- "type": "340"
+ "type": "344"
},
{
"name": "tls-creds",
@@ -4059,7 +4077,7 @@
{
"name": "mode",
"default": null,
- "type": "341"
+ "type": "345"
}
],
"meta-type": "object"
@@ -4070,25 +4088,25 @@
"variants": [
{
"case": "nbd",
- "type": "343"
+ "type": "347"
},
{
"case": "vhost-user-blk",
- "type": "344"
+ "type": "348"
},
{
"case": "fuse",
- "type": "345"
+ "type": "349"
},
{
"case": "vduse-blk",
- "type": "346"
+ "type": "350"
}
],
"members": [
{
"name": "type",
- "type": "342"
+ "type": "346"
},
{
"name": "id",
@@ -4131,7 +4149,7 @@
{
"name": "mode",
"default": null,
- "type": "341"
+ "type": "345"
}
],
"meta-type": "object"
@@ -4160,7 +4178,7 @@
},
{
"name": "type",
- "type": "342"
+ "type": "346"
},
{
"name": "node-name",
@@ -4225,7 +4243,7 @@
{
"name": "format",
"default": null,
- "type": "347"
+ "type": "351"
}
],
"meta-type": "object"
@@ -4244,7 +4262,7 @@
{
"name": "format",
"default": null,
- "type": "347"
+ "type": "351"
}
],
"meta-type": "object"
@@ -4263,7 +4281,7 @@
},
{
"name": "backend",
- "type": "348"
+ "type": "352"
}
],
"meta-type": "object"
@@ -4288,7 +4306,7 @@
},
{
"name": "backend",
- "type": "348"
+ "type": "352"
}
],
"meta-type": "object"
@@ -4356,7 +4374,7 @@
{
"name": "format",
"default": null,
- "type": "349"
+ "type": "353"
}
],
"meta-type": "object"
@@ -4366,7 +4384,7 @@
"members": [
{
"name": "status",
- "type": "350"
+ "type": "354"
},
{
"name": "completed",
@@ -4399,7 +4417,7 @@
"members": [
{
"name": "formats",
- "type": "[349]"
+ "type": "[353]"
}
],
"meta-type": "object"
@@ -4424,55 +4442,55 @@
"variants": [
{
"case": "nic",
- "type": "352"
+ "type": "356"
},
{
"case": "user",
- "type": "353"
+ "type": "357"
},
{
"case": "tap",
- "type": "354"
+ "type": "358"
},
{
"case": "l2tpv3",
- "type": "355"
+ "type": "359"
},
{
"case": "socket",
- "type": "356"
+ "type": "360"
},
{
"case": "stream",
- "type": "357"
+ "type": "361"
},
{
"case": "dgram",
- "type": "358"
+ "type": "362"
},
{
"case": "vde",
- "type": "359"
+ "type": "363"
},
{
"case": "bridge",
- "type": "360"
+ "type": "364"
},
{
"case": "hubport",
- "type": "361"
+ "type": "365"
},
{
"case": "netmap",
- "type": "362"
+ "type": "366"
},
{
"case": "vhost-user",
- "type": "363"
+ "type": "367"
},
{
"case": "vhost-vdpa",
- "type": "364"
+ "type": "368"
},
{
"case": "none",
@@ -4486,7 +4504,7 @@
},
{
"name": "type",
- "type": "351"
+ "type": "355"
}
],
"meta-type": "object"
@@ -4530,15 +4548,15 @@
},
{
"name": "multicast",
- "type": "368"
+ "type": "372"
},
{
"name": "unicast",
- "type": "368"
+ "type": "372"
},
{
"name": "vlan",
- "type": "368"
+ "type": "372"
},
{
"name": "broadcast-allowed",
@@ -4637,7 +4655,7 @@
},
{
"name": "addr",
- "type": "369"
+ "type": "373"
}
],
"meta-type": "object"
@@ -4738,11 +4756,11 @@
},
{
"name": "duplex",
- "type": "370"
+ "type": "374"
},
{
"name": "autoneg",
- "type": "371"
+ "type": "375"
}
],
"meta-type": "object"
@@ -4780,15 +4798,15 @@
},
{
"name": "key",
- "type": "372"
+ "type": "376"
},
{
"name": "mask",
- "type": "373"
+ "type": "377"
},
{
"name": "action",
- "type": "374"
+ "type": "378"
}
],
"meta-type": "object"
@@ -4946,7 +4964,7 @@
},
{
"name": "options",
- "type": "375"
+ "type": "379"
}
],
"meta-type": "object"
@@ -4957,7 +4975,7 @@
"variants": [
{
"case": "vnc",
- "type": "378"
+ "type": "382"
},
{
"case": "spice",
@@ -4967,7 +4985,7 @@
"members": [
{
"name": "protocol",
- "type": "376"
+ "type": "380"
},
{
"name": "password",
@@ -4976,7 +4994,7 @@
{
"name": "connected",
"default": null,
- "type": "377"
+ "type": "381"
}
],
"meta-type": "object"
@@ -4987,7 +5005,7 @@
"variants": [
{
"case": "vnc",
- "type": "379"
+ "type": "383"
},
{
"case": "spice",
@@ -4997,7 +5015,7 @@
"members": [
{
"name": "protocol",
- "type": "376"
+ "type": "380"
},
{
"name": "time",
@@ -5026,7 +5044,7 @@
{
"name": "format",
"default": null,
- "type": "380"
+ "type": "384"
}
],
"meta-type": "object"
@@ -5069,12 +5087,12 @@
},
{
"name": "mouse-mode",
- "type": "381"
+ "type": "385"
},
{
"name": "channels",
"default": null,
- "type": "[382]"
+ "type": "[386]"
}
],
"meta-type": "object"
@@ -5084,11 +5102,11 @@
"members": [
{
"name": "server",
- "type": "383"
+ "type": "387"
},
{
"name": "client",
- "type": "383"
+ "type": "387"
}
],
"meta-type": "object"
@@ -5098,11 +5116,11 @@
"members": [
{
"name": "server",
- "type": "384"
+ "type": "388"
},
{
"name": "client",
- "type": "382"
+ "type": "386"
}
],
"meta-type": "object"
@@ -5112,11 +5130,11 @@
"members": [
{
"name": "server",
- "type": "383"
+ "type": "387"
},
{
"name": "client",
- "type": "383"
+ "type": "387"
}
],
"meta-type": "object"
@@ -5136,7 +5154,7 @@
{
"name": "family",
"default": null,
- "type": "385"
+ "type": "389"
},
{
"name": "service",
@@ -5151,7 +5169,7 @@
{
"name": "clients",
"default": null,
- "type": "[386]"
+ "type": "[390]"
}
],
"meta-type": "object"
@@ -5170,20 +5188,20 @@
},
{
"name": "server",
- "type": "[387]"
+ "type": "[391]"
},
{
"name": "clients",
- "type": "[386]"
+ "type": "[390]"
},
{
"name": "auth",
- "type": "388"
+ "type": "392"
},
{
"name": "vencrypt",
"default": null,
- "type": "389"
+ "type": "393"
},
{
"name": "display",
@@ -5208,11 +5226,11 @@
"members": [
{
"name": "server",
- "type": "390"
+ "type": "394"
},
{
"name": "client",
- "type": "391"
+ "type": "395"
}
],
"meta-type": "object"
@@ -5222,11 +5240,11 @@
"members": [
{
"name": "server",
- "type": "390"
+ "type": "394"
},
{
"name": "client",
- "type": "386"
+ "type": "390"
}
],
"meta-type": "object"
@@ -5236,11 +5254,11 @@
"members": [
{
"name": "server",
- "type": "390"
+ "type": "394"
},
{
"name": "client",
- "type": "386"
+ "type": "390"
}
],
"meta-type": "object"
@@ -5277,7 +5295,7 @@
"members": [
{
"name": "keys",
- "type": "[392]"
+ "type": "[396]"
},
{
"name": "hold-time",
@@ -5302,7 +5320,7 @@
},
{
"name": "events",
- "type": "[393]"
+ "type": "[397]"
}
],
"meta-type": "object"
@@ -5313,19 +5331,19 @@
"variants": [
{
"case": "curses",
- "type": "398"
+ "type": "402"
},
{
"case": "egl-headless",
- "type": "399"
+ "type": "403"
},
{
"case": "dbus",
- "type": "400"
+ "type": "404"
},
{
"case": "sdl",
- "type": "401"
+ "type": "405"
},
{
"case": "default",
@@ -5343,7 +5361,7 @@
"members": [
{
"name": "type",
- "type": "394"
+ "type": "398"
},
{
"name": "full-screen",
@@ -5363,7 +5381,7 @@
{
"name": "gl",
"default": null,
- "type": "395"
+ "type": "399"
}
],
"meta-type": "object"
@@ -5374,13 +5392,13 @@
"variants": [
{
"case": "vnc",
- "type": "403"
+ "type": "407"
}
],
"members": [
{
"name": "type",
- "type": "402"
+ "type": "406"
}
],
"meta-type": "object"
@@ -5391,13 +5409,13 @@
"variants": [
{
"case": "vnc",
- "type": "405"
+ "type": "409"
}
],
"members": [
{
"name": "type",
- "type": "404"
+ "type": "408"
}
],
"meta-type": "object"
@@ -5408,27 +5426,27 @@
{
"name": "status",
"default": null,
- "type": "406"
+ "type": "410"
},
{
"name": "ram",
"default": null,
- "type": "407"
+ "type": "411"
},
{
"name": "disk",
"default": null,
- "type": "407"
+ "type": "411"
},
{
"name": "vfio",
"default": null,
- "type": "408"
+ "type": "412"
},
{
"name": "xbzrle-cache",
"default": null,
- "type": "409"
+ "type": "413"
},
{
"name": "total-time",
@@ -5478,12 +5496,12 @@
{
"name": "compression",
"default": null,
- "type": "410"
+ "type": "414"
},
{
"name": "socket-address",
"default": null,
- "type": "[369]"
+ "type": "[373]"
}
],
"meta-type": "object"
@@ -5508,7 +5526,7 @@
"members": [
{
"name": "capability",
- "type": "411"
+ "type": "415"
},
{
"name": "state",
@@ -5583,17 +5601,17 @@
{
"name": "tls-creds",
"default": null,
- "type": "338"
+ "type": "342"
},
{
"name": "tls-hostname",
"default": null,
- "type": "338"
+ "type": "342"
},
{
"name": "tls-authz",
"default": null,
- "type": "338"
+ "type": "342"
},
{
"name": "max-bandwidth",
@@ -5641,7 +5659,7 @@
{
"name": "multifd-compression",
"default": null,
- "type": "412"
+ "type": "416"
},
{
"name": "multifd-zlib-level",
@@ -5656,7 +5674,7 @@
{
"name": "block-bitmap-mapping",
"default": null,
- "type": "[413]"
+ "type": "[417]"
}
],
"meta-type": "object"
@@ -5785,7 +5803,7 @@
{
"name": "multifd-compression",
"default": null,
- "type": "412"
+ "type": "416"
},
{
"name": "multifd-zlib-level",
@@ -5800,7 +5818,7 @@
{
"name": "block-bitmap-mapping",
"default": null,
- "type": "[413]"
+ "type": "[417]"
}
],
"meta-type": "object"
@@ -5839,7 +5857,7 @@
"members": [
{
"name": "status",
- "type": "406"
+ "type": "410"
}
],
"meta-type": "object"
@@ -5859,11 +5877,11 @@
"members": [
{
"name": "mode",
- "type": "414"
+ "type": "418"
},
{
"name": "reason",
- "type": "415"
+ "type": "419"
}
],
"meta-type": "object"
@@ -5873,7 +5891,7 @@
"members": [
{
"name": "state",
- "type": "406"
+ "type": "410"
}
],
"meta-type": "object"
@@ -5992,15 +6010,15 @@
"members": [
{
"name": "mode",
- "type": "414"
+ "type": "418"
},
{
"name": "last-mode",
- "type": "414"
+ "type": "418"
},
{
"name": "reason",
- "type": "415"
+ "type": "419"
}
],
"meta-type": "object"
@@ -6040,7 +6058,7 @@
{
"name": "mode",
"default": null,
- "type": "416"
+ "type": "420"
}
],
"meta-type": "object"
@@ -6055,7 +6073,7 @@
},
{
"name": "status",
- "type": "417"
+ "type": "421"
},
{
"name": "start-time",
@@ -6071,12 +6089,12 @@
},
{
"name": "mode",
- "type": "416"
+ "type": "420"
},
{
"name": "vcpu-dirty-rate",
"default": null,
- "type": "[418]"
+ "type": "[422]"
}
],
"meta-type": "object"
@@ -6216,12 +6234,12 @@
"members": [
{
"name": "actions",
- "type": "[419]"
+ "type": "[423]"
},
{
"name": "properties",
"default": null,
- "type": "420"
+ "type": "424"
}
],
"meta-type": "object"
@@ -6255,7 +6273,7 @@
},
{
"name": "state",
- "type": "421"
+ "type": "425"
},
{
"name": "vcpu",
@@ -6294,7 +6312,7 @@
{
"name": "enable",
"default": null,
- "type": "[422]"
+ "type": "[426]"
}
],
"meta-type": "object"
@@ -6304,7 +6322,7 @@
"members": [
{
"name": "qemu",
- "type": "423"
+ "type": "427"
},
{
"name": "package",
@@ -6339,31 +6357,31 @@
"variants": [
{
"case": "builtin",
- "type": "425"
+ "type": "429"
},
{
"case": "enum",
- "type": "426"
+ "type": "430"
},
{
"case": "array",
- "type": "427"
+ "type": "431"
},
{
"case": "object",
- "type": "428"
+ "type": "432"
},
{
"case": "alternate",
- "type": "429"
+ "type": "433"
},
{
"case": "command",
- "type": "430"
+ "type": "434"
},
{
"case": "event",
- "type": "431"
+ "type": "435"
}
],
"members": [
@@ -6373,7 +6391,7 @@
},
{
"name": "meta-type",
- "type": "424"
+ "type": "428"
},
{
"name": "features",
@@ -6516,167 +6534,167 @@
"variants": [
{
"case": "authz-list",
- "type": "433"
+ "type": "437"
},
{
"case": "authz-listfile",
- "type": "434"
+ "type": "438"
},
{
"case": "authz-pam",
- "type": "435"
+ "type": "439"
},
{
"case": "authz-simple",
- "type": "436"
+ "type": "440"
},
{
"case": "can-host-socketcan",
- "type": "437"
+ "type": "441"
},
{
"case": "colo-compare",
- "type": "438"
+ "type": "442"
},
{
"case": "cryptodev-backend",
- "type": "439"
+ "type": "443"
},
{
"case": "cryptodev-backend-builtin",
- "type": "439"
+ "type": "443"
},
{
"case": "cryptodev-backend-lkcf",
- "type": "439"
+ "type": "443"
},
{
"case": "cryptodev-vhost-user",
- "type": "440"
+ "type": "444"
},
{
"case": "dbus-vmstate",
- "type": "441"
+ "type": "445"
},
{
"case": "filter-buffer",
- "type": "442"
+ "type": "446"
},
{
"case": "filter-dump",
- "type": "443"
+ "type": "447"
},
{
"case": "filter-mirror",
- "type": "444"
+ "type": "448"
},
{
"case": "filter-redirector",
- "type": "445"
+ "type": "449"
},
{
"case": "filter-replay",
- "type": "446"
+ "type": "450"
},
{
"case": "filter-rewriter",
- "type": "447"
+ "type": "451"
},
{
"case": "input-barrier",
- "type": "448"
+ "type": "452"
},
{
"case": "input-linux",
- "type": "449"
+ "type": "453"
},
{
"case": "iothread",
- "type": "450"
+ "type": "454"
},
{
"case": "main-loop",
- "type": "451"
+ "type": "455"
},
{
"case": "memory-backend-epc",
- "type": "452"
+ "type": "456"
},
{
"case": "memory-backend-file",
- "type": "453"
+ "type": "457"
},
{
"case": "memory-backend-memfd",
- "type": "454"
+ "type": "458"
},
{
"case": "memory-backend-ram",
- "type": "455"
+ "type": "459"
},
{
"case": "pr-manager-helper",
- "type": "456"
+ "type": "460"
},
{
"case": "qtest",
- "type": "457"
+ "type": "461"
},
{
"case": "rng-builtin",
- "type": "458"
+ "type": "462"
},
{
"case": "rng-egd",
- "type": "459"
+ "type": "463"
},
{
"case": "rng-random",
- "type": "460"
+ "type": "464"
},
{
"case": "secret",
- "type": "461"
+ "type": "465"
},
{
"case": "secret_keyring",
- "type": "462"
+ "type": "466"
},
{
"case": "sev-guest",
- "type": "463"
+ "type": "467"
},
{
"case": "thread-context",
- "type": "464"
+ "type": "468"
},
{
"case": "throttle-group",
- "type": "465"
+ "type": "469"
},
{
"case": "tls-creds-anon",
- "type": "466"
+ "type": "470"
},
{
"case": "tls-creds-psk",
- "type": "467"
+ "type": "471"
},
{
"case": "tls-creds-x509",
- "type": "468"
+ "type": "472"
},
{
"case": "tls-cipher-suites",
- "type": "469"
+ "type": "473"
},
{
"case": "x-remote-object",
- "type": "470"
+ "type": "474"
},
{
"case": "x-vfio-user-server",
- "type": "471"
+ "type": "475"
},
{
"case": "can-bus",
@@ -6694,7 +6712,7 @@
"members": [
{
"name": "qom-type",
- "type": "432"
+ "type": "436"
},
{
"name": "id",
@@ -6794,7 +6812,7 @@
"variants": [
{
"case": "s390x",
- "type": "474"
+ "type": "478"
},
{
"case": "aarch64",
@@ -6933,11 +6951,11 @@
{
"name": "props",
"default": null,
- "type": "472"
+ "type": "476"
},
{
"name": "target",
- "type": "473"
+ "type": "477"
}
],
"meta-type": "object"
@@ -7012,7 +7030,7 @@
"members": [
{
"name": "arch",
- "type": "473"
+ "type": "477"
}
],
"meta-type": "object"
@@ -7136,7 +7154,7 @@
},
{
"name": "policy",
- "type": "475"
+ "type": "479"
}
],
"meta-type": "object"
@@ -7159,7 +7177,7 @@
},
{
"name": "props",
- "type": "472"
+ "type": "476"
},
{
"name": "qom-path",
@@ -7175,29 +7193,29 @@
"variants": [
{
"case": "node",
- "type": "477"
+ "type": "481"
},
{
"case": "dist",
- "type": "478"
+ "type": "482"
},
{
"case": "cpu",
- "type": "479"
+ "type": "483"
},
{
"case": "hmat-lb",
- "type": "480"
+ "type": "484"
},
{
"case": "hmat-cache",
- "type": "481"
+ "type": "485"
}
],
"members": [
{
"name": "type",
- "type": "476"
+ "type": "480"
}
],
"meta-type": "object"
@@ -7258,29 +7276,29 @@
"variants": [
{
"case": "dimm",
- "type": "483"
+ "type": "487"
},
{
"case": "nvdimm",
- "type": "483"
+ "type": "487"
},
{
"case": "virtio-pmem",
- "type": "484"
+ "type": "488"
},
{
"case": "virtio-mem",
- "type": "485"
+ "type": "489"
},
{
"case": "sgx-epc",
- "type": "486"
+ "type": "490"
}
],
"members": [
{
"name": "type",
- "type": "482"
+ "type": "486"
}
],
"meta-type": "object"
@@ -7343,11 +7361,11 @@
"members": [
{
"name": "type",
- "type": "489"
+ "type": "493"
},
{
"name": "model",
- "type": "487"
+ "type": "491"
}
],
"meta-type": "object"
@@ -7357,7 +7375,7 @@
"members": [
{
"name": "model",
- "type": "487"
+ "type": "491"
}
],
"meta-type": "object"
@@ -7409,7 +7427,7 @@
"members": [
{
"name": "mode",
- "type": "490"
+ "type": "494"
},
{
"name": "filename",
@@ -7464,11 +7482,11 @@
"variants": [
{
"case": "block-node",
- "type": "492"
+ "type": "496"
},
{
"case": "chardev",
- "type": "493"
+ "type": "497"
},
{
"case": "migration",
@@ -7478,7 +7496,7 @@
"members": [
{
"name": "type",
- "type": "491"
+ "type": "495"
}
],
"meta-type": "object"
@@ -7579,7 +7597,7 @@
"meta-type": "object"
},
{
- "name": "229",
+ "name": "230",
"members": [
{
"name": "fdname",
@@ -7589,7 +7607,7 @@
"meta-type": "object"
},
{
- "name": "230",
+ "name": "231",
"members": [
{
"name": "fdset-id",
@@ -7605,7 +7623,7 @@
"meta-type": "object"
},
{
- "name": "231",
+ "name": "232",
"members": [
{
"name": "fdset-id",
@@ -7619,7 +7637,7 @@
"meta-type": "object"
},
{
- "name": "232",
+ "name": "233",
"members": [
{
"name": "fdset-id",
@@ -7634,12 +7652,12 @@
"meta-type": "object"
},
{
- "name": "[233]",
- "element-type": "233",
+ "name": "[234]",
+ "element-type": "234",
"meta-type": "array"
},
{
- "name": "233",
+ "name": "234",
"members": [
{
"name": "fdset-id",
@@ -7647,13 +7665,13 @@
},
{
"name": "fds",
- "type": "[494]"
+ "type": "[498]"
}
],
"meta-type": "object"
},
{
- "name": "234",
+ "name": "235",
"members": [
{
"name": "option",
@@ -7664,12 +7682,12 @@
"meta-type": "object"
},
{
- "name": "[235]",
- "element-type": "235",
+ "name": "[236]",
+ "element-type": "236",
"meta-type": "array"
},
{
- "name": "235",
+ "name": "236",
"members": [
{
"name": "option",
@@ -7677,13 +7695,13 @@
},
{
"name": "parameters",
- "type": "[495]"
+ "type": "[499]"
}
],
"meta-type": "object"
},
{
- "name": "236",
+ "name": "237",
"members": [
{
"name": "offset",
@@ -7697,7 +7715,7 @@
"meta-type": "object"
},
{
- "name": "237",
+ "name": "238",
"members": [
{
"name": "vfu-id",
@@ -7719,7 +7737,7 @@
"meta-type": "object"
},
{
- "name": "238",
+ "name": "239",
"members": [
{
"name": "enabled",
@@ -7743,7 +7761,7 @@
},
{
"name": "state",
- "type": "496"
+ "type": "500"
},
{
"name": "handle",
@@ -7753,7 +7771,7 @@
"meta-type": "object"
},
{
- "name": "239",
+ "name": "240",
"members": [
{
"name": "data",
@@ -7763,7 +7781,7 @@
"meta-type": "object"
},
{
- "name": "240",
+ "name": "241",
"members": [
{
"name": "pdh",
@@ -7789,7 +7807,7 @@
"meta-type": "object"
},
{
- "name": "241",
+ "name": "242",
"members": [
{
"name": "packet-header",
@@ -7808,7 +7826,7 @@
"meta-type": "object"
},
{
- "name": "242",
+ "name": "243",
"members": [
{
"name": "mnonce",
@@ -7818,7 +7836,7 @@
"meta-type": "object"
},
{
- "name": "243",
+ "name": "244",
"members": [
{
"name": "data",
@@ -7828,7 +7846,7 @@
"meta-type": "object"
},
{
- "name": "246",
+ "name": "247",
"members": [
{
"name": "sgx",
@@ -7848,18 +7866,18 @@
},
{
"name": "sections",
- "type": "[497]"
+ "type": "[501]"
}
],
"meta-type": "object"
},
{
- "name": "[247]",
- "element-type": "247",
+ "name": "[248]",
+ "element-type": "248",
"meta-type": "array"
},
{
- "name": "247",
+ "name": "248",
"members": [
{
"name": "port",
@@ -7871,7 +7889,7 @@
},
{
"name": "type",
- "type": "498"
+ "type": "502"
},
{
"name": "remote-domain",
@@ -7893,7 +7911,7 @@
"meta-type": "object"
},
{
- "name": "248",
+ "name": "249",
"members": [
{
"name": "port",
@@ -7903,45 +7921,45 @@
"meta-type": "object"
},
{
- "name": "[249]",
- "element-type": "249",
+ "name": "[250]",
+ "element-type": "250",
"meta-type": "array"
},
{
- "name": "249",
+ "name": "250",
"tag": "driver",
"variants": [
{
"case": "none",
- "type": "500"
+ "type": "504"
},
{
"case": "alsa",
- "type": "501"
+ "type": "505"
},
{
"case": "dbus",
- "type": "500"
+ "type": "504"
},
{
"case": "oss",
- "type": "505"
+ "type": "509"
},
{
"case": "pa",
- "type": "506"
+ "type": "510"
},
{
"case": "sdl",
- "type": "507"
+ "type": "511"
},
{
"case": "spice",
- "type": "500"
+ "type": "504"
},
{
"case": "wav",
- "type": "509"
+ "type": "513"
}
],
"members": [
@@ -7951,7 +7969,7 @@
},
{
"name": "driver",
- "type": "499"
+ "type": "503"
},
{
"name": "timer-period",
@@ -7962,12 +7980,12 @@
"meta-type": "object"
},
{
- "name": "[250]",
- "element-type": "250",
+ "name": "[251]",
+ "element-type": "251",
"meta-type": "array"
},
{
- "name": "250",
+ "name": "251",
"members": [
{
"name": "device",
@@ -7980,7 +7998,7 @@
},
{
"name": "slot-type",
- "type": "510"
+ "type": "514"
},
{
"name": "source",
@@ -7994,22 +8012,22 @@
"meta-type": "object"
},
{
- "name": "251",
+ "name": "252",
"members": [
{
"name": "info",
- "type": "250"
+ "type": "251"
}
],
"meta-type": "object"
},
{
- "name": "[252]",
- "element-type": "252",
+ "name": "[253]",
+ "element-type": "253",
"meta-type": "array"
},
{
- "name": "252",
+ "name": "253",
"members": [
{
"name": "bus",
@@ -8017,48 +8035,52 @@
},
{
"name": "devices",
- "type": "[511]"
+ "type": "[515]"
}
],
"meta-type": "object"
},
{
- "name": "253",
+ "name": "254",
"tag": "target",
"variants": [
{
"case": "vcpu",
- "type": "514"
+ "type": "518"
},
{
"case": "vm",
"type": "0"
+ },
+ {
+ "case": "cryptodev",
+ "type": "0"
}
],
"members": [
{
"name": "target",
- "type": "512"
+ "type": "516"
},
{
"name": "providers",
"default": null,
- "type": "[513]"
+ "type": "[517]"
}
],
"meta-type": "object"
},
{
- "name": "[254]",
- "element-type": "254",
+ "name": "[255]",
+ "element-type": "255",
"meta-type": "array"
},
{
- "name": "254",
+ "name": "255",
"members": [
{
"name": "provider",
- "type": "515"
+ "type": "519"
},
{
"name": "qom-path",
@@ -8067,52 +8089,52 @@
},
{
"name": "stats",
- "type": "[516]"
+ "type": "[520]"
}
],
"meta-type": "object"
},
{
- "name": "255",
+ "name": "256",
"members": [
{
"name": "provider",
"default": null,
- "type": "515"
+ "type": "519"
}
],
"meta-type": "object"
},
{
- "name": "[256]",
- "element-type": "256",
+ "name": "[257]",
+ "element-type": "257",
"meta-type": "array"
},
{
- "name": "256",
+ "name": "257",
"members": [
{
"name": "provider",
- "type": "515"
+ "type": "519"
},
{
"name": "target",
- "type": "512"
+ "type": "516"
},
{
"name": "stats",
- "type": "[517]"
+ "type": "[521]"
}
],
"meta-type": "object"
},
{
- "name": "[257]",
- "element-type": "257",
+ "name": "[258]",
+ "element-type": "258",
"meta-type": "array"
},
{
- "name": "257",
+ "name": "258",
"members": [
{
"name": "path",
@@ -8126,7 +8148,7 @@
"meta-type": "object"
},
{
- "name": "258",
+ "name": "259",
"members": [
{
"name": "path",
@@ -8136,7 +8158,7 @@
"meta-type": "object"
},
{
- "name": "259",
+ "name": "260",
"members": [
{
"name": "name",
@@ -8156,15 +8178,15 @@
},
{
"name": "guest-features",
- "type": "518"
+ "type": "522"
},
{
"name": "host-features",
- "type": "518"
+ "type": "522"
},
{
"name": "backend-features",
- "type": "518"
+ "type": "522"
},
{
"name": "num-vqs",
@@ -8172,7 +8194,7 @@
},
{
"name": "status",
- "type": "519"
+ "type": "523"
},
{
"name": "isr",
@@ -8221,13 +8243,13 @@
{
"name": "vhost-dev",
"default": null,
- "type": "520"
+ "type": "524"
}
],
"meta-type": "object"
},
{
- "name": "260",
+ "name": "261",
"members": [
{
"name": "path",
@@ -8241,7 +8263,7 @@
"meta-type": "object"
},
{
- "name": "261",
+ "name": "262",
"members": [
{
"name": "name",
@@ -8305,7 +8327,7 @@
"meta-type": "object"
},
{
- "name": "262",
+ "name": "263",
"members": [
{
"name": "path",
@@ -8319,7 +8341,7 @@
"meta-type": "object"
},
{
- "name": "263",
+ "name": "264",
"members": [
{
"name": "name",
@@ -8377,7 +8399,7 @@
"meta-type": "object"
},
{
- "name": "264",
+ "name": "265",
"members": [
{
"name": "path",
@@ -8396,7 +8418,7 @@
"meta-type": "object"
},
{
- "name": "265",
+ "name": "266",
"members": [
{
"name": "name",
@@ -8408,15 +8430,66 @@
},
{
"name": "descs",
- "type": "[521]"
+ "type": "[525]"
},
{
"name": "avail",
- "type": "522"
+ "type": "526"
},
{
"name": "used",
- "type": "523"
+ "type": "527"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "[267]",
+ "element-type": "267",
+ "meta-type": "array"
+ },
+ {
+ "name": "267",
+ "members": [
+ {
+ "name": "id",
+ "type": "str"
+ },
+ {
+ "name": "service",
+ "type": "[528]"
+ },
+ {
+ "name": "client",
+ "type": "[529]"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "268",
+ "members": [
+ {
+ "name": "path",
+ "type": "str"
+ },
+ {
+ "name": "errors",
+ "type": "[530]"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "269",
+ "members": [
+ {
+ "name": "path",
+ "type": "str"
+ },
+ {
+ "name": "type",
+ "type": "531"
}
],
"meta-type": "object"
@@ -8427,7 +8500,7 @@
"meta-type": "builtin"
},
{
- "name": "266",
+ "name": "270",
"members": [
{
"name": "debug"
@@ -8499,7 +8572,7 @@
]
},
{
- "name": "267",
+ "name": "271",
"members": [
{
"name": "none"
@@ -8551,7 +8624,7 @@
]
},
{
- "name": "268",
+ "name": "272",
"members": [
{
"name": "reset"
@@ -8587,7 +8660,7 @@
]
},
{
- "name": "269",
+ "name": "273",
"members": [
{
"name": "reset"
@@ -8603,7 +8676,7 @@
]
},
{
- "name": "270",
+ "name": "274",
"members": [
{
"name": "poweroff"
@@ -8619,7 +8692,7 @@
]
},
{
- "name": "271",
+ "name": "275",
"members": [
{
"name": "pause"
@@ -8643,7 +8716,7 @@
]
},
{
- "name": "272",
+ "name": "276",
"members": [
{
"name": "pause"
@@ -8663,28 +8736,28 @@
]
},
{
- "name": "273",
+ "name": "277",
"tag": "type",
"variants": [
{
"case": "hyper-v",
- "type": "525"
+ "type": "533"
},
{
"case": "s390",
- "type": "526"
+ "type": "534"
}
],
"members": [
{
"name": "type",
- "type": "524"
+ "type": "532"
}
],
"meta-type": "object"
},
{
- "name": "274",
+ "name": "278",
"members": [
{
"name": "hypervisor"
@@ -8700,7 +8773,7 @@
]
},
{
- "name": "275",
+ "name": "279",
"members": [
{
"name": "ignore"
@@ -8724,7 +8797,7 @@
]
},
{
- "name": "276",
+ "name": "280",
"members": [
{
"name": "action-required",
@@ -8738,7 +8811,7 @@
"meta-type": "object"
},
{
- "name": "277",
+ "name": "281",
"members": [
{
"name": "retain"
@@ -8768,7 +8841,7 @@
"meta-type": "array"
},
{
- "name": "278",
+ "name": "282",
"members": [
{
"name": "ok"
@@ -8788,7 +8861,7 @@
]
},
{
- "name": "279",
+ "name": "283",
"members": [
{
"name": "rd_bytes",
@@ -8897,41 +8970,41 @@
},
{
"name": "timed_stats",
- "type": "[527]"
+ "type": "[535]"
},
{
"name": "rd_latency_histogram",
"default": null,
- "type": "528"
+ "type": "536"
},
{
"name": "wr_latency_histogram",
"default": null,
- "type": "528"
+ "type": "536"
},
{
"name": "flush_latency_histogram",
"default": null,
- "type": "528"
+ "type": "536"
}
],
"meta-type": "object"
},
{
- "name": "280",
+ "name": "284",
"tag": "driver",
"variants": [
{
"case": "file",
- "type": "529"
+ "type": "537"
},
{
"case": "host_device",
- "type": "529"
+ "type": "537"
},
{
"case": "nvme",
- "type": "530"
+ "type": "538"
},
{
"case": "blkdebug",
@@ -9113,13 +9186,13 @@
"members": [
{
"name": "driver",
- "type": "295"
+ "type": "299"
}
],
"meta-type": "object"
},
{
- "name": "281",
+ "name": "285",
"members": [
{
"name": "undefined"
@@ -9171,7 +9244,7 @@
]
},
{
- "name": "282",
+ "name": "286",
"members": [
{
"name": "existing"
@@ -9187,7 +9260,7 @@
]
},
{
- "name": "283",
+ "name": "287",
"members": [
{
"name": "report"
@@ -9215,7 +9288,7 @@
]
},
{
- "name": "284",
+ "name": "288",
"members": [
{
"name": "top"
@@ -9243,7 +9316,7 @@
]
},
{
- "name": "285",
+ "name": "289",
"members": [
{
"name": "on-success"
@@ -9263,7 +9336,7 @@
]
},
{
- "name": "286",
+ "name": "290",
"members": [
{
"name": "use-copy-range",
@@ -9284,7 +9357,7 @@
"meta-type": "object"
},
{
- "name": "287",
+ "name": "291",
"members": [
{
"name": "off"
@@ -9304,7 +9377,7 @@
]
},
{
- "name": "288",
+ "name": "292",
"members": [
{
"name": "filename",
@@ -9366,18 +9439,18 @@
{
"name": "format-specific",
"default": null,
- "type": "531"
+ "type": "539"
},
{
"name": "backing-image",
"default": null,
- "type": "288"
+ "type": "292"
}
],
"meta-type": "object"
},
{
- "name": "289",
+ "name": "293",
"members": [
{
"name": "writeback",
@@ -9395,12 +9468,12 @@
"meta-type": "object"
},
{
- "name": "[290]",
- "element-type": "290",
+ "name": "[294]",
+ "element-type": "294",
"meta-type": "array"
},
{
- "name": "290",
+ "name": "294",
"members": [
{
"name": "name",
@@ -9436,12 +9509,12 @@
"meta-type": "object"
},
{
- "name": "[291]",
- "element-type": "291",
+ "name": "[295]",
+ "element-type": "295",
"meta-type": "array"
},
{
- "name": "291",
+ "name": "295",
"members": [
{
"name": "id",
@@ -9449,7 +9522,7 @@
},
{
"name": "type",
- "type": "532"
+ "type": "540"
},
{
"name": "name",
@@ -9459,12 +9532,12 @@
"meta-type": "object"
},
{
- "name": "[292]",
- "element-type": "292",
+ "name": "[296]",
+ "element-type": "296",
"meta-type": "array"
},
{
- "name": "292",
+ "name": "296",
"members": [
{
"name": "parent",
@@ -9480,17 +9553,17 @@
},
{
"name": "perm",
- "type": "[533]"
+ "type": "[541]"
},
{
"name": "shared-perm",
- "type": "[533]"
+ "type": "[541]"
}
],
"meta-type": "object"
},
{
- "name": "293",
+ "name": "297",
"members": [
{
"name": "background"
@@ -9506,12 +9579,12 @@
]
},
{
- "name": "[294]",
- "element-type": "294",
+ "name": "[298]",
+ "element-type": "298",
"meta-type": "array"
},
{
- "name": "294",
+ "name": "298",
"members": [
{
"type": "str"
@@ -9523,7 +9596,7 @@
"meta-type": "alternate"
},
{
- "name": "295",
+ "name": "299",
"members": [
{
"name": "blkdebug"
@@ -9719,7 +9792,7 @@
]
},
{
- "name": "296",
+ "name": "300",
"members": [
{
"name": "ignore"
@@ -9735,7 +9808,7 @@
]
},
{
- "name": "297",
+ "name": "301",
"members": [
{
"name": "direct",
@@ -9751,11 +9824,11 @@
"meta-type": "object"
},
{
- "name": "298",
+ "name": "302",
"members": [
{
"name": "image",
- "type": "534"
+ "type": "542"
},
{
"name": "config",
@@ -9795,36 +9868,36 @@
{
"name": "inject-error",
"default": null,
- "type": "[535]"
+ "type": "[543]"
},
{
"name": "set-state",
"default": null,
- "type": "[536]"
+ "type": "[544]"
},
{
"name": "take-child-perms",
"default": null,
- "type": "[533]"
+ "type": "[541]"
},
{
"name": "unshare-child-perms",
"default": null,
- "type": "[533]"
+ "type": "[541]"
}
],
"meta-type": "object"
},
{
- "name": "299",
+ "name": "303",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "log",
- "type": "534"
+ "type": "542"
},
{
"name": "log-sector-size",
@@ -9845,49 +9918,49 @@
"meta-type": "object"
},
{
- "name": "300",
+ "name": "304",
"members": [
{
"name": "test",
- "type": "534"
+ "type": "542"
},
{
"name": "raw",
- "type": "534"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "301",
+ "name": "305",
"members": [
{
"name": "image",
- "type": "534"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "302",
+ "name": "306",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "303",
+ "name": "307",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "target",
- "type": "534"
+ "type": "542"
},
{
"name": "bitmap",
@@ -9897,7 +9970,7 @@
{
"name": "on-cbw-error",
"default": null,
- "type": "537"
+ "type": "545"
},
{
"name": "cbw-timeout",
@@ -9908,11 +9981,11 @@
"meta-type": "object"
},
{
- "name": "304",
+ "name": "308",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "bottom",
@@ -9923,7 +9996,7 @@
"meta-type": "object"
},
{
- "name": "305",
+ "name": "309",
"members": [
{
"name": "filename",
@@ -9937,12 +10010,12 @@
{
"name": "locking",
"default": null,
- "type": "538"
+ "type": "546"
},
{
"name": "aio",
"default": null,
- "type": "539"
+ "type": "547"
},
{
"name": "aio-max-batch",
@@ -9969,7 +10042,7 @@
]
},
{
- "name": "306",
+ "name": "310",
"members": [
{
"name": "url",
@@ -10009,7 +10082,7 @@
"meta-type": "object"
},
{
- "name": "307",
+ "name": "311",
"members": [
{
"name": "url",
@@ -10054,7 +10127,7 @@
"meta-type": "object"
},
{
- "name": "308",
+ "name": "312",
"members": [
{
"name": "volume",
@@ -10066,7 +10139,7 @@
},
{
"name": "server",
- "type": "[369]"
+ "type": "[373]"
},
{
"name": "debug",
@@ -10082,7 +10155,7 @@
"meta-type": "object"
},
{
- "name": "309",
+ "name": "313",
"members": [
{
"name": "url",
@@ -10132,7 +10205,7 @@
"meta-type": "object"
},
{
- "name": "310",
+ "name": "314",
"members": [
{
"name": "url",
@@ -10187,7 +10260,7 @@
"meta-type": "object"
},
{
- "name": "311",
+ "name": "315",
"members": [
{
"name": "filename",
@@ -10197,11 +10270,11 @@
"meta-type": "object"
},
{
- "name": "312",
+ "name": "316",
"members": [
{
"name": "transport",
- "type": "540"
+ "type": "548"
},
{
"name": "portal",
@@ -10234,7 +10307,7 @@
{
"name": "header-digest",
"default": null,
- "type": "541"
+ "type": "549"
},
{
"name": "timeout",
@@ -10245,11 +10318,11 @@
"meta-type": "object"
},
{
- "name": "313",
+ "name": "317",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "key-secret",
@@ -10260,11 +10333,11 @@
"meta-type": "object"
},
{
- "name": "314",
+ "name": "318",
"members": [
{
"name": "server",
- "type": "369"
+ "type": "373"
},
{
"name": "export",
@@ -10303,11 +10376,11 @@
"meta-type": "object"
},
{
- "name": "315",
+ "name": "319",
"members": [
{
"name": "server",
- "type": "542"
+ "type": "550"
},
{
"name": "path",
@@ -10347,7 +10420,7 @@
"meta-type": "object"
},
{
- "name": "316",
+ "name": "320",
"members": [
{
"name": "size",
@@ -10368,7 +10441,7 @@
"meta-type": "object"
},
{
- "name": "317",
+ "name": "321",
"members": [
{
"name": "device",
@@ -10382,7 +10455,7 @@
"meta-type": "object"
},
{
- "name": "318",
+ "name": "322",
"members": [
{
"name": "path",
@@ -10392,11 +10465,11 @@
"meta-type": "object"
},
{
- "name": "319",
+ "name": "323",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "prealloc-align",
@@ -10412,16 +10485,16 @@
"meta-type": "object"
},
{
- "name": "320",
+ "name": "324",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "backing",
"default": null,
- "type": "543"
+ "type": "551"
},
{
"name": "lazy-refcounts",
@@ -10446,7 +10519,7 @@
{
"name": "overlap-check",
"default": null,
- "type": "544"
+ "type": "552"
},
{
"name": "cache-size",
@@ -10476,53 +10549,53 @@
{
"name": "encrypt",
"default": null,
- "type": "545"
+ "type": "553"
},
{
"name": "data-file",
"default": null,
- "type": "534"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "321",
+ "name": "325",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "backing",
"default": null,
- "type": "543"
+ "type": "551"
},
{
"name": "encrypt",
"default": null,
- "type": "546"
+ "type": "554"
}
],
"meta-type": "object"
},
{
- "name": "322",
+ "name": "326",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "backing",
"default": null,
- "type": "543"
+ "type": "551"
}
],
"meta-type": "object"
},
{
- "name": "323",
+ "name": "327",
"members": [
{
"name": "blkverify",
@@ -10531,7 +10604,7 @@
},
{
"name": "children",
- "type": "[534]"
+ "type": "[542]"
},
{
"name": "vote-threshold",
@@ -10545,17 +10618,17 @@
{
"name": "read-pattern",
"default": null,
- "type": "547"
+ "type": "555"
}
],
"meta-type": "object"
},
{
- "name": "324",
+ "name": "328",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "offset",
@@ -10571,7 +10644,7 @@
"meta-type": "object"
},
{
- "name": "325",
+ "name": "329",
"members": [
{
"name": "pool",
@@ -10599,7 +10672,7 @@
{
"name": "encrypt",
"default": null,
- "type": "548"
+ "type": "556"
},
{
"name": "user",
@@ -10609,7 +10682,7 @@
{
"name": "auth-client-required",
"default": null,
- "type": "[549]"
+ "type": "[557]"
},
{
"name": "key-secret",
@@ -10619,21 +10692,21 @@
{
"name": "server",
"default": null,
- "type": "[550]"
+ "type": "[558]"
}
],
"meta-type": "object"
},
{
- "name": "326",
+ "name": "330",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "mode",
- "type": "551"
+ "type": "559"
},
{
"name": "top-id",
@@ -10644,11 +10717,11 @@
"meta-type": "object"
},
{
- "name": "327",
+ "name": "331",
"members": [
{
"name": "server",
- "type": "552"
+ "type": "560"
},
{
"name": "path",
@@ -10662,13 +10735,13 @@
{
"name": "host-key-check",
"default": null,
- "type": "553"
+ "type": "561"
}
],
"meta-type": "object"
},
{
- "name": "328",
+ "name": "332",
"members": [
{
"name": "throttle-group",
@@ -10676,13 +10749,13 @@
},
{
"name": "file",
- "type": "534"
+ "type": "542"
}
],
"meta-type": "object"
},
{
- "name": "329",
+ "name": "333",
"members": [
{
"name": "path",
@@ -10692,7 +10765,7 @@
"meta-type": "object"
},
{
- "name": "330",
+ "name": "334",
"members": [
{
"name": "path",
@@ -10702,7 +10775,7 @@
"meta-type": "object"
},
{
- "name": "331",
+ "name": "335",
"members": [
{
"name": "path",
@@ -10712,7 +10785,7 @@
"meta-type": "object"
},
{
- "name": "332",
+ "name": "336",
"members": [
{
"name": "dir",
@@ -10747,64 +10820,64 @@
"meta-type": "array"
},
{
- "name": "333",
+ "name": "337",
"tag": "driver",
"variants": [
{
"case": "file",
- "type": "554"
+ "type": "562"
},
{
"case": "gluster",
- "type": "555"
+ "type": "563"
},
{
"case": "luks",
- "type": "556"
+ "type": "564"
},
{
"case": "nfs",
- "type": "557"
+ "type": "565"
},
{
"case": "parallels",
- "type": "558"
+ "type": "566"
},
{
"case": "qcow",
- "type": "559"
+ "type": "567"
},
{
"case": "qcow2",
- "type": "560"
+ "type": "568"
},
{
"case": "qed",
- "type": "561"
+ "type": "569"
},
{
"case": "rbd",
- "type": "562"
+ "type": "570"
},
{
"case": "ssh",
- "type": "563"
+ "type": "571"
},
{
"case": "vdi",
- "type": "564"
+ "type": "572"
},
{
"case": "vhdx",
- "type": "565"
+ "type": "573"
},
{
"case": "vmdk",
- "type": "566"
+ "type": "574"
},
{
"case": "vpc",
- "type": "567"
+ "type": "575"
},
{
"case": "blkdebug",
@@ -10942,22 +11015,22 @@
"members": [
{
"name": "driver",
- "type": "295"
+ "type": "299"
}
],
"meta-type": "object"
},
{
- "name": "334",
+ "name": "338",
"tag": "driver",
"variants": [
{
"case": "luks",
- "type": "568"
+ "type": "576"
},
{
"case": "qcow2",
- "type": "569"
+ "type": "577"
},
{
"case": "blkdebug",
@@ -11143,13 +11216,13 @@
"members": [
{
"name": "driver",
- "type": "295"
+ "type": "299"
}
],
"meta-type": "object"
},
{
- "name": "335",
+ "name": "339",
"members": [
{
"name": "read"
@@ -11165,7 +11238,7 @@
]
},
{
- "name": "336",
+ "name": "340",
"members": [
{
"name": "ignore"
@@ -11185,7 +11258,7 @@
]
},
{
- "name": "337",
+ "name": "341",
"members": [
{
"name": "commit"
@@ -11229,7 +11302,7 @@
]
},
{
- "name": "338",
+ "name": "342",
"members": [
{
"type": "str"
@@ -11241,7 +11314,7 @@
"meta-type": "alternate"
},
{
- "name": "339",
+ "name": "343",
"members": [
{
"name": "read"
@@ -11261,36 +11334,36 @@
]
},
{
- "name": "340",
+ "name": "344",
"tag": "type",
"variants": [
{
"case": "inet",
- "type": "571"
+ "type": "579"
},
{
"case": "unix",
- "type": "572"
+ "type": "580"
},
{
"case": "vsock",
- "type": "573"
+ "type": "581"
},
{
"case": "fd",
- "type": "574"
+ "type": "582"
}
],
"members": [
{
"name": "type",
- "type": "570"
+ "type": "578"
}
],
"meta-type": "object"
},
{
- "name": "341",
+ "name": "345",
"members": [
{
"name": "safe"
@@ -11306,7 +11379,7 @@
]
},
{
- "name": "342",
+ "name": "346",
"members": [
{
"name": "nbd"
@@ -11330,7 +11403,7 @@
]
},
{
- "name": "343",
+ "name": "347",
"members": [
{
"name": "name",
@@ -11345,7 +11418,7 @@
{
"name": "bitmaps",
"default": null,
- "type": "[294]"
+ "type": "[298]"
},
{
"name": "allocation-depth",
@@ -11356,11 +11429,11 @@
"meta-type": "object"
},
{
- "name": "344",
+ "name": "348",
"members": [
{
"name": "addr",
- "type": "369"
+ "type": "373"
},
{
"name": "logical-block-size",
@@ -11376,7 +11449,7 @@
"meta-type": "object"
},
{
- "name": "345",
+ "name": "349",
"members": [
{
"name": "mountpoint",
@@ -11390,13 +11463,13 @@
{
"name": "allow-other",
"default": null,
- "type": "575"
+ "type": "583"
}
],
"meta-type": "object"
},
{
- "name": "346",
+ "name": "350",
"members": [
{
"name": "name",
@@ -11426,7 +11499,7 @@
"meta-type": "object"
},
{
- "name": "347",
+ "name": "351",
"members": [
{
"name": "utf8"
@@ -11442,108 +11515,108 @@
]
},
{
- "name": "348",
+ "name": "352",
"tag": "type",
"variants": [
{
"case": "file",
- "type": "577"
+ "type": "585"
},
{
"case": "serial",
- "type": "578"
+ "type": "586"
},
{
"case": "parallel",
- "type": "578"
+ "type": "586"
},
{
"case": "pipe",
- "type": "578"
+ "type": "586"
},
{
"case": "socket",
- "type": "579"
+ "type": "587"
},
{
"case": "udp",
- "type": "580"
+ "type": "588"
},
{
"case": "pty",
- "type": "581"
+ "type": "589"
},
{
"case": "null",
- "type": "581"
+ "type": "589"
},
{
"case": "mux",
- "type": "582"
+ "type": "590"
},
{
"case": "msmouse",
- "type": "581"
+ "type": "589"
},
{
"case": "wctablet",
- "type": "581"
+ "type": "589"
},
{
"case": "braille",
- "type": "581"
+ "type": "589"
},
{
"case": "testdev",
- "type": "581"
+ "type": "589"
},
{
"case": "stdio",
- "type": "583"
+ "type": "591"
},
{
"case": "console",
- "type": "581"
+ "type": "589"
},
{
"case": "spicevmc",
- "type": "584"
+ "type": "592"
},
{
"case": "spiceport",
- "type": "585"
+ "type": "593"
},
{
"case": "qemu-vdagent",
- "type": "586"
+ "type": "594"
},
{
"case": "dbus",
- "type": "587"
+ "type": "595"
},
{
"case": "vc",
- "type": "588"
+ "type": "596"
},
{
"case": "ringbuf",
- "type": "589"
+ "type": "597"
},
{
"case": "memory",
- "type": "589"
+ "type": "597"
}
],
"members": [
{
"name": "type",
- "type": "576"
+ "type": "584"
}
],
"meta-type": "object"
},
{
- "name": "349",
+ "name": "353",
"members": [
{
"name": "elf"
@@ -11571,7 +11644,7 @@
]
},
{
- "name": "350",
+ "name": "354",
"members": [
{
"name": "none"
@@ -11595,12 +11668,12 @@
]
},
{
- "name": "[349]",
- "element-type": "349",
+ "name": "[353]",
+ "element-type": "353",
"meta-type": "array"
},
{
- "name": "351",
+ "name": "355",
"members": [
{
"name": "none"
@@ -11664,7 +11737,7 @@
]
},
{
- "name": "352",
+ "name": "356",
"members": [
{
"name": "netdev",
@@ -11695,7 +11768,7 @@
"meta-type": "object"
},
{
- "name": "353",
+ "name": "357",
"members": [
{
"name": "hostname",
@@ -11755,7 +11828,7 @@
{
"name": "dnssearch",
"default": null,
- "type": "[590]"
+ "type": "[598]"
},
{
"name": "domainname",
@@ -11795,12 +11868,12 @@
{
"name": "hostfwd",
"default": null,
- "type": "[590]"
+ "type": "[598]"
},
{
"name": "guestfwd",
"default": null,
- "type": "[590]"
+ "type": "[598]"
},
{
"name": "tftp-server-name",
@@ -11811,7 +11884,7 @@
"meta-type": "object"
},
{
- "name": "354",
+ "name": "358",
"members": [
{
"name": "ifname",
@@ -11892,7 +11965,7 @@
"meta-type": "object"
},
{
- "name": "355",
+ "name": "359",
"members": [
{
"name": "src",
@@ -11965,7 +12038,7 @@
"meta-type": "object"
},
{
- "name": "356",
+ "name": "360",
"members": [
{
"name": "fd",
@@ -12001,11 +12074,11 @@
"meta-type": "object"
},
{
- "name": "357",
+ "name": "361",
"members": [
{
"name": "addr",
- "type": "369"
+ "type": "373"
},
{
"name": "server",
@@ -12021,23 +12094,23 @@
"meta-type": "object"
},
{
- "name": "358",
+ "name": "362",
"members": [
{
"name": "local",
"default": null,
- "type": "369"
+ "type": "373"
},
{
"name": "remote",
"default": null,
- "type": "369"
+ "type": "373"
}
],
"meta-type": "object"
},
{
- "name": "359",
+ "name": "363",
"members": [
{
"name": "sock",
@@ -12063,7 +12136,7 @@
"meta-type": "object"
},
{
- "name": "360",
+ "name": "364",
"members": [
{
"name": "br",
@@ -12079,7 +12152,7 @@
"meta-type": "object"
},
{
- "name": "361",
+ "name": "365",
"members": [
{
"name": "hubid",
@@ -12094,7 +12167,7 @@
"meta-type": "object"
},
{
- "name": "362",
+ "name": "366",
"members": [
{
"name": "ifname",
@@ -12109,7 +12182,7 @@
"meta-type": "object"
},
{
- "name": "363",
+ "name": "367",
"members": [
{
"name": "chardev",
@@ -12129,7 +12202,7 @@
"meta-type": "object"
},
{
- "name": "364",
+ "name": "368",
"members": [
{
"name": "vhostdev",
@@ -12158,7 +12231,7 @@
"meta-type": "object"
},
{
- "name": "368",
+ "name": "372",
"members": [
{
"name": "normal"
@@ -12183,36 +12256,36 @@
"meta-type": "array"
},
{
- "name": "369",
+ "name": "373",
"tag": "type",
"variants": [
{
"case": "inet",
- "type": "552"
+ "type": "560"
},
{
"case": "unix",
- "type": "591"
+ "type": "599"
},
{
"case": "vsock",
- "type": "592"
+ "type": "600"
},
{
"case": "fd",
- "type": "590"
+ "type": "598"
}
],
"members": [
{
"name": "type",
- "type": "570"
+ "type": "578"
}
],
"meta-type": "object"
},
{
- "name": "370",
+ "name": "374",
"members": [
{
"name": "half"
@@ -12228,7 +12301,7 @@
]
},
{
- "name": "371",
+ "name": "375",
"members": [
{
"name": "off"
@@ -12244,7 +12317,7 @@
]
},
{
- "name": "372",
+ "name": "376",
"members": [
{
"name": "priority",
@@ -12303,7 +12376,7 @@
"meta-type": "object"
},
{
- "name": "373",
+ "name": "377",
"members": [
{
"name": "in-pport",
@@ -12344,7 +12417,7 @@
"meta-type": "object"
},
{
- "name": "374",
+ "name": "378",
"members": [
{
"name": "goto-tbl",
@@ -12380,16 +12453,16 @@
"meta-type": "object"
},
{
- "name": "375",
+ "name": "379",
"tag": "type",
"variants": [
{
"case": "passthrough",
- "type": "593"
+ "type": "601"
},
{
"case": "emulator",
- "type": "594"
+ "type": "602"
}
],
"members": [
@@ -12401,7 +12474,7 @@
"meta-type": "object"
},
{
- "name": "376",
+ "name": "380",
"members": [
{
"name": "vnc"
@@ -12417,7 +12490,7 @@
]
},
{
- "name": "377",
+ "name": "381",
"members": [
{
"name": "keep"
@@ -12437,7 +12510,7 @@
]
},
{
- "name": "378",
+ "name": "382",
"members": [
{
"name": "display",
@@ -12448,7 +12521,7 @@
"meta-type": "object"
},
{
- "name": "379",
+ "name": "383",
"members": [
{
"name": "display",
@@ -12459,7 +12532,7 @@
"meta-type": "object"
},
{
- "name": "380",
+ "name": "384",
"members": [
{
"name": "ppm"
@@ -12475,7 +12548,7 @@
]
},
{
- "name": "381",
+ "name": "385",
"members": [
{
"name": "client"
@@ -12495,12 +12568,12 @@
]
},
{
- "name": "[382]",
- "element-type": "382",
+ "name": "[386]",
+ "element-type": "386",
"meta-type": "array"
},
{
- "name": "382",
+ "name": "386",
"members": [
{
"name": "host",
@@ -12512,7 +12585,7 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
},
{
"name": "connection-id",
@@ -12534,7 +12607,7 @@
"meta-type": "object"
},
{
- "name": "383",
+ "name": "387",
"members": [
{
"name": "host",
@@ -12546,13 +12619,13 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
}
],
"meta-type": "object"
},
{
- "name": "384",
+ "name": "388",
"members": [
{
"name": "host",
@@ -12564,7 +12637,7 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
},
{
"name": "auth",
@@ -12575,7 +12648,7 @@
"meta-type": "object"
},
{
- "name": "385",
+ "name": "389",
"members": [
{
"name": "ipv4"
@@ -12603,12 +12676,12 @@
]
},
{
- "name": "[386]",
- "element-type": "386",
+ "name": "[390]",
+ "element-type": "390",
"meta-type": "array"
},
{
- "name": "386",
+ "name": "390",
"members": [
{
"name": "host",
@@ -12620,7 +12693,7 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
},
{
"name": "websocket",
@@ -12640,12 +12713,12 @@
"meta-type": "object"
},
{
- "name": "[387]",
- "element-type": "387",
+ "name": "[391]",
+ "element-type": "391",
"meta-type": "array"
},
{
- "name": "387",
+ "name": "391",
"members": [
{
"name": "host",
@@ -12657,7 +12730,7 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
},
{
"name": "websocket",
@@ -12665,18 +12738,18 @@
},
{
"name": "auth",
- "type": "388"
+ "type": "392"
},
{
"name": "vencrypt",
"default": null,
- "type": "389"
+ "type": "393"
}
],
"meta-type": "object"
},
{
- "name": "388",
+ "name": "392",
"members": [
{
"name": "none"
@@ -12720,7 +12793,7 @@
]
},
{
- "name": "389",
+ "name": "393",
"members": [
{
"name": "plain"
@@ -12764,7 +12837,7 @@
]
},
{
- "name": "390",
+ "name": "394",
"members": [
{
"name": "host",
@@ -12776,7 +12849,7 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
},
{
"name": "websocket",
@@ -12791,7 +12864,7 @@
"meta-type": "object"
},
{
- "name": "391",
+ "name": "395",
"members": [
{
"name": "host",
@@ -12803,7 +12876,7 @@
},
{
"name": "family",
- "type": "385"
+ "type": "389"
},
{
"name": "websocket",
@@ -12813,67 +12886,67 @@
"meta-type": "object"
},
{
- "name": "[392]",
- "element-type": "392",
+ "name": "[396]",
+ "element-type": "396",
"meta-type": "array"
},
{
- "name": "392",
+ "name": "396",
"tag": "type",
"variants": [
{
"case": "number",
- "type": "596"
+ "type": "604"
},
{
"case": "qcode",
- "type": "597"
+ "type": "605"
}
],
"members": [
{
"name": "type",
- "type": "595"
+ "type": "603"
}
],
"meta-type": "object"
},
{
- "name": "[393]",
- "element-type": "393",
+ "name": "[397]",
+ "element-type": "397",
"meta-type": "array"
},
{
- "name": "393",
+ "name": "397",
"tag": "type",
"variants": [
{
"case": "key",
- "type": "599"
+ "type": "607"
},
{
"case": "btn",
- "type": "600"
+ "type": "608"
},
{
"case": "rel",
- "type": "601"
+ "type": "609"
},
{
"case": "abs",
- "type": "601"
+ "type": "609"
}
],
"members": [
{
"name": "type",
- "type": "598"
+ "type": "606"
}
],
"meta-type": "object"
},
{
- "name": "394",
+ "name": "398",
"members": [
{
"name": "default"
@@ -12909,7 +12982,7 @@
]
},
{
- "name": "395",
+ "name": "399",
"members": [
{
"name": "off"
@@ -12933,7 +13006,7 @@
]
},
{
- "name": "396",
+ "name": "400",
"members": [
{
"name": "grab-on-hover",
@@ -12959,7 +13032,7 @@
"meta-type": "object"
},
{
- "name": "397",
+ "name": "401",
"members": [
{
"name": "left-command-key",
@@ -12980,7 +13053,7 @@
"meta-type": "object"
},
{
- "name": "398",
+ "name": "402",
"members": [
{
"name": "charset",
@@ -12991,7 +13064,7 @@
"meta-type": "object"
},
{
- "name": "399",
+ "name": "403",
"members": [
{
"name": "rendernode",
@@ -13002,7 +13075,7 @@
"meta-type": "object"
},
{
- "name": "400",
+ "name": "404",
"members": [
{
"name": "rendernode",
@@ -13028,18 +13101,18 @@
"meta-type": "object"
},
{
- "name": "401",
+ "name": "405",
"members": [
{
"name": "grab-mod",
"default": null,
- "type": "602"
+ "type": "610"
}
],
"meta-type": "object"
},
{
- "name": "402",
+ "name": "406",
"members": [
{
"name": "vnc"
@@ -13051,7 +13124,7 @@
]
},
{
- "name": "403",
+ "name": "407",
"members": [
{
"name": "tls-certs",
@@ -13062,7 +13135,7 @@
"meta-type": "object"
},
{
- "name": "404",
+ "name": "408",
"members": [
{
"name": "vnc"
@@ -13074,18 +13147,18 @@
]
},
{
- "name": "405",
+ "name": "409",
"members": [
{
"name": "addresses",
"default": null,
- "type": "[369]"
+ "type": "[373]"
}
],
"meta-type": "object"
},
{
- "name": "406",
+ "name": "410",
"members": [
{
"name": "none"
@@ -13149,7 +13222,7 @@
]
},
{
- "name": "407",
+ "name": "411",
"members": [
{
"name": "transferred",
@@ -13227,7 +13300,7 @@
"meta-type": "object"
},
{
- "name": "408",
+ "name": "412",
"members": [
{
"name": "transferred",
@@ -13237,7 +13310,7 @@
"meta-type": "object"
},
{
- "name": "409",
+ "name": "413",
"members": [
{
"name": "cache-size",
@@ -13271,7 +13344,7 @@
"meta-type": "object"
},
{
- "name": "410",
+ "name": "414",
"members": [
{
"name": "pages",
@@ -13297,12 +13370,12 @@
"meta-type": "object"
},
{
- "name": "[369]",
- "element-type": "369",
+ "name": "[373]",
+ "element-type": "373",
"meta-type": "array"
},
{
- "name": "411",
+ "name": "415",
"members": [
{
"name": "xbzrle"
@@ -13400,7 +13473,7 @@
]
},
{
- "name": "412",
+ "name": "416",
"members": [
{
"name": "none"
@@ -13420,12 +13493,12 @@
]
},
{
- "name": "[413]",
- "element-type": "413",
+ "name": "[417]",
+ "element-type": "417",
"meta-type": "array"
},
{
- "name": "413",
+ "name": "417",
"members": [
{
"name": "node-name",
@@ -13437,13 +13510,13 @@
},
{
"name": "bitmaps",
- "type": "[603]"
+ "type": "[611]"
}
],
"meta-type": "object"
},
{
- "name": "414",
+ "name": "418",
"members": [
{
"name": "none"
@@ -13463,7 +13536,7 @@
]
},
{
- "name": "415",
+ "name": "419",
"members": [
{
"name": "none"
@@ -13487,7 +13560,7 @@
]
},
{
- "name": "416",
+ "name": "420",
"members": [
{
"name": "page-sampling"
@@ -13507,7 +13580,7 @@
]
},
{
- "name": "417",
+ "name": "421",
"members": [
{
"name": "unstarted"
@@ -13527,12 +13600,12 @@
]
},
{
- "name": "[418]",
- "element-type": "418",
+ "name": "[422]",
+ "element-type": "422",
"meta-type": "array"
},
{
- "name": "418",
+ "name": "422",
"members": [
{
"name": "id",
@@ -13546,84 +13619,84 @@
"meta-type": "object"
},
{
- "name": "[419]",
- "element-type": "419",
+ "name": "[423]",
+ "element-type": "423",
"meta-type": "array"
},
{
- "name": "419",
+ "name": "423",
"tag": "type",
"variants": [
{
"case": "abort",
- "type": "605"
+ "type": "613"
},
{
"case": "block-dirty-bitmap-add",
- "type": "606"
+ "type": "614"
},
{
"case": "block-dirty-bitmap-remove",
- "type": "607"
+ "type": "615"
},
{
"case": "block-dirty-bitmap-clear",
- "type": "607"
+ "type": "615"
},
{
"case": "block-dirty-bitmap-enable",
- "type": "607"
+ "type": "615"
},
{
"case": "block-dirty-bitmap-disable",
- "type": "607"
+ "type": "615"
},
{
"case": "block-dirty-bitmap-merge",
- "type": "608"
+ "type": "616"
},
{
"case": "blockdev-backup",
- "type": "609"
+ "type": "617"
},
{
"case": "blockdev-snapshot",
- "type": "610"
+ "type": "618"
},
{
"case": "blockdev-snapshot-internal-sync",
- "type": "611"
+ "type": "619"
},
{
"case": "blockdev-snapshot-sync",
- "type": "612"
+ "type": "620"
},
{
"case": "drive-backup",
- "type": "613"
+ "type": "621"
}
],
"members": [
{
"name": "type",
- "type": "604"
+ "type": "612"
}
],
"meta-type": "object"
},
{
- "name": "420",
+ "name": "424",
"members": [
{
"name": "completion-mode",
"default": null,
- "type": "614"
+ "type": "622"
}
],
"meta-type": "object"
},
{
- "name": "421",
+ "name": "425",
"members": [
{
"name": "unavailable"
@@ -13643,12 +13716,12 @@
]
},
{
- "name": "[422]",
- "element-type": "422",
+ "name": "[426]",
+ "element-type": "426",
"meta-type": "array"
},
{
- "name": "422",
+ "name": "426",
"members": [
{
"name": "oob"
@@ -13660,7 +13733,7 @@
]
},
{
- "name": "423",
+ "name": "427",
"members": [
{
"name": "major",
@@ -13678,7 +13751,7 @@
"meta-type": "object"
},
{
- "name": "424",
+ "name": "428",
"members": [
{
"name": "builtin"
@@ -13714,21 +13787,21 @@
]
},
{
- "name": "425",
+ "name": "429",
"members": [
{
"name": "json-type",
- "type": "615"
+ "type": "623"
}
],
"meta-type": "object"
},
{
- "name": "426",
+ "name": "430",
"members": [
{
"name": "members",
- "type": "[616]"
+ "type": "[624]"
},
{
"name": "values",
@@ -13741,7 +13814,7 @@
"meta-type": "object"
},
{
- "name": "427",
+ "name": "431",
"members": [
{
"name": "element-type",
@@ -13751,11 +13824,11 @@
"meta-type": "object"
},
{
- "name": "428",
+ "name": "432",
"members": [
{
"name": "members",
- "type": "[617]"
+ "type": "[625]"
},
{
"name": "tag",
@@ -13765,23 +13838,23 @@
{
"name": "variants",
"default": null,
- "type": "[618]"
+ "type": "[626]"
}
],
"meta-type": "object"
},
{
- "name": "429",
+ "name": "433",
"members": [
{
"name": "members",
- "type": "[619]"
+ "type": "[627]"
}
],
"meta-type": "object"
},
{
- "name": "430",
+ "name": "434",
"members": [
{
"name": "arg-type",
@@ -13800,7 +13873,7 @@
"meta-type": "object"
},
{
- "name": "431",
+ "name": "435",
"members": [
{
"name": "arg-type",
@@ -13810,7 +13883,7 @@
"meta-type": "object"
},
{
- "name": "432",
+ "name": "436",
"members": [
{
"name": "authz-list"
@@ -14000,23 +14073,23 @@
]
},
{
- "name": "433",
+ "name": "437",
"members": [
{
"name": "policy",
"default": null,
- "type": "620"
+ "type": "628"
},
{
"name": "rules",
"default": null,
- "type": "[621]"
+ "type": "[629]"
}
],
"meta-type": "object"
},
{
- "name": "434",
+ "name": "438",
"members": [
{
"name": "filename",
@@ -14031,7 +14104,7 @@
"meta-type": "object"
},
{
- "name": "435",
+ "name": "439",
"members": [
{
"name": "service",
@@ -14041,7 +14114,7 @@
"meta-type": "object"
},
{
- "name": "436",
+ "name": "440",
"members": [
{
"name": "identity",
@@ -14051,7 +14124,7 @@
"meta-type": "object"
},
{
- "name": "437",
+ "name": "441",
"members": [
{
"name": "if",
@@ -14065,7 +14138,7 @@
"meta-type": "object"
},
{
- "name": "438",
+ "name": "442",
"members": [
{
"name": "primary_in",
@@ -14112,24 +14185,44 @@
"meta-type": "object"
},
{
- "name": "439",
+ "name": "443",
"members": [
{
"name": "queues",
"default": null,
"type": "int"
+ },
+ {
+ "name": "throttle-bps",
+ "default": null,
+ "type": "int"
+ },
+ {
+ "name": "throttle-ops",
+ "default": null,
+ "type": "int"
}
],
"meta-type": "object"
},
{
- "name": "440",
+ "name": "444",
"members": [
{
"name": "queues",
"default": null,
"type": "int"
},
+ {
+ "name": "throttle-bps",
+ "default": null,
+ "type": "int"
+ },
+ {
+ "name": "throttle-ops",
+ "default": null,
+ "type": "int"
+ },
{
"name": "chardev",
"type": "str"
@@ -14138,7 +14231,7 @@
"meta-type": "object"
},
{
- "name": "441",
+ "name": "445",
"members": [
{
"name": "addr",
@@ -14153,7 +14246,7 @@
"meta-type": "object"
},
{
- "name": "442",
+ "name": "446",
"members": [
{
"name": "netdev",
@@ -14162,7 +14255,7 @@
{
"name": "queue",
"default": null,
- "type": "622"
+ "type": "630"
},
{
"name": "status",
@@ -14177,7 +14270,7 @@
{
"name": "insert",
"default": null,
- "type": "623"
+ "type": "631"
},
{
"name": "interval",
@@ -14187,7 +14280,7 @@
"meta-type": "object"
},
{
- "name": "443",
+ "name": "447",
"members": [
{
"name": "netdev",
@@ -14196,7 +14289,7 @@
{
"name": "queue",
"default": null,
- "type": "622"
+ "type": "630"
},
{
"name": "status",
@@ -14211,7 +14304,7 @@
{
"name": "insert",
"default": null,
- "type": "623"
+ "type": "631"
},
{
"name": "file",
@@ -14226,7 +14319,7 @@
"meta-type": "object"
},
{
- "name": "444",
+ "name": "448",
"members": [
{
"name": "netdev",
@@ -14235,7 +14328,7 @@
{
"name": "queue",
"default": null,
- "type": "622"
+ "type": "630"
},
{
"name": "status",
@@ -14250,7 +14343,7 @@
{
"name": "insert",
"default": null,
- "type": "623"
+ "type": "631"
},
{
"name": "outdev",
@@ -14265,7 +14358,7 @@
"meta-type": "object"
},
{
- "name": "445",
+ "name": "449",
"members": [
{
"name": "netdev",
@@ -14274,7 +14367,7 @@
{
"name": "queue",
"default": null,
- "type": "622"
+ "type": "630"
},
{
"name": "status",
@@ -14289,7 +14382,7 @@
{
"name": "insert",
"default": null,
- "type": "623"
+ "type": "631"
},
{
"name": "indev",
@@ -14310,7 +14403,7 @@
"meta-type": "object"
},
{
- "name": "446",
+ "name": "450",
"members": [
{
"name": "netdev",
@@ -14319,7 +14412,7 @@
{
"name": "queue",
"default": null,
- "type": "622"
+ "type": "630"
},
{
"name": "status",
@@ -14334,13 +14427,13 @@
{
"name": "insert",
"default": null,
- "type": "623"
+ "type": "631"
}
],
"meta-type": "object"
},
{
- "name": "447",
+ "name": "451",
"members": [
{
"name": "netdev",
@@ -14349,7 +14442,7 @@
{
"name": "queue",
"default": null,
- "type": "622"
+ "type": "630"
},
{
"name": "status",
@@ -14364,7 +14457,7 @@
{
"name": "insert",
"default": null,
- "type": "623"
+ "type": "631"
},
{
"name": "vnet_hdr_support",
@@ -14375,7 +14468,7 @@
"meta-type": "object"
},
{
- "name": "448",
+ "name": "452",
"members": [
{
"name": "name",
@@ -14415,7 +14508,7 @@
"meta-type": "object"
},
{
- "name": "449",
+ "name": "453",
"members": [
{
"name": "evdev",
@@ -14434,13 +14527,13 @@
{
"name": "grab-toggle",
"default": null,
- "type": "624"
+ "type": "632"
}
],
"meta-type": "object"
},
{
- "name": "450",
+ "name": "454",
"members": [
{
"name": "aio-max-batch",
@@ -14476,7 +14569,7 @@
"meta-type": "object"
},
{
- "name": "451",
+ "name": "455",
"members": [
{
"name": "aio-max-batch",
@@ -14497,7 +14590,7 @@
"meta-type": "object"
},
{
- "name": "452",
+ "name": "456",
"members": [
{
"name": "dump",
@@ -14517,7 +14610,7 @@
{
"name": "policy",
"default": null,
- "type": "475"
+ "type": "479"
},
{
"name": "prealloc",
@@ -14557,7 +14650,7 @@
"meta-type": "object"
},
{
- "name": "453",
+ "name": "457",
"members": [
{
"name": "dump",
@@ -14577,7 +14670,7 @@
{
"name": "policy",
"default": null,
- "type": "475"
+ "type": "479"
},
{
"name": "prealloc",
@@ -14641,7 +14734,7 @@
"meta-type": "object"
},
{
- "name": "454",
+ "name": "458",
"members": [
{
"name": "dump",
@@ -14661,7 +14754,7 @@
{
"name": "policy",
"default": null,
- "type": "475"
+ "type": "479"
},
{
"name": "prealloc",
@@ -14716,7 +14809,7 @@
"meta-type": "object"
},
{
- "name": "455",
+ "name": "459",
"members": [
{
"name": "dump",
@@ -14736,7 +14829,7 @@
{
"name": "policy",
"default": null,
- "type": "475"
+ "type": "479"
},
{
"name": "prealloc",
@@ -14776,7 +14869,7 @@
"meta-type": "object"
},
{
- "name": "456",
+ "name": "460",
"members": [
{
"name": "path",
@@ -14786,7 +14879,7 @@
"meta-type": "object"
},
{
- "name": "457",
+ "name": "461",
"members": [
{
"name": "chardev",
@@ -14801,7 +14894,7 @@
"meta-type": "object"
},
{
- "name": "458",
+ "name": "462",
"members": [
{
"name": "opened",
@@ -14815,7 +14908,7 @@
"meta-type": "object"
},
{
- "name": "459",
+ "name": "463",
"members": [
{
"name": "opened",
@@ -14833,7 +14926,7 @@
"meta-type": "object"
},
{
- "name": "460",
+ "name": "464",
"members": [
{
"name": "opened",
@@ -14852,7 +14945,7 @@
"meta-type": "object"
},
{
- "name": "461",
+ "name": "465",
"members": [
{
"name": "loaded",
@@ -14865,7 +14958,7 @@
{
"name": "format",
"default": null,
- "type": "625"
+ "type": "633"
},
{
"name": "keyid",
@@ -14891,7 +14984,7 @@
"meta-type": "object"
},
{
- "name": "462",
+ "name": "466",
"members": [
{
"name": "loaded",
@@ -14904,7 +14997,7 @@
{
"name": "format",
"default": null,
- "type": "625"
+ "type": "633"
},
{
"name": "keyid",
@@ -14924,7 +15017,7 @@
"meta-type": "object"
},
{
- "name": "463",
+ "name": "467",
"members": [
{
"name": "sev-device",
@@ -14969,7 +15062,7 @@
"meta-type": "object"
},
{
- "name": "464",
+ "name": "468",
"members": [
{
"name": "cpu-affinity",
@@ -14985,12 +15078,12 @@
"meta-type": "object"
},
{
- "name": "465",
+ "name": "469",
"members": [
{
"name": "limits",
"default": null,
- "type": "626"
+ "type": "634"
},
{
"name": "x-iops-total",
@@ -15148,7 +15241,7 @@
"meta-type": "object"
},
{
- "name": "466",
+ "name": "470",
"members": [
{
"name": "verify-peer",
@@ -15163,7 +15256,7 @@
{
"name": "endpoint",
"default": null,
- "type": "627"
+ "type": "635"
},
{
"name": "priority",
@@ -15182,7 +15275,7 @@
"meta-type": "object"
},
{
- "name": "467",
+ "name": "471",
"members": [
{
"name": "verify-peer",
@@ -15197,7 +15290,7 @@
{
"name": "endpoint",
"default": null,
- "type": "627"
+ "type": "635"
},
{
"name": "priority",
@@ -15221,7 +15314,7 @@
"meta-type": "object"
},
{
- "name": "468",
+ "name": "472",
"members": [
{
"name": "verify-peer",
@@ -15236,7 +15329,7 @@
{
"name": "endpoint",
"default": null,
- "type": "627"
+ "type": "635"
},
{
"name": "priority",
@@ -15265,7 +15358,7 @@
"meta-type": "object"
},
{
- "name": "469",
+ "name": "473",
"members": [
{
"name": "verify-peer",
@@ -15280,7 +15373,7 @@
{
"name": "endpoint",
"default": null,
- "type": "627"
+ "type": "635"
},
{
"name": "priority",
@@ -15291,7 +15384,7 @@
"meta-type": "object"
},
{
- "name": "470",
+ "name": "474",
"members": [
{
"name": "fd",
@@ -15305,11 +15398,11 @@
"meta-type": "object"
},
{
- "name": "471",
+ "name": "475",
"members": [
{
"name": "socket",
- "type": "369"
+ "type": "373"
},
{
"name": "device",
@@ -15319,7 +15412,7 @@
"meta-type": "object"
},
{
- "name": "472",
+ "name": "476",
"members": [
{
"name": "node-id",
@@ -15355,7 +15448,7 @@
"meta-type": "object"
},
{
- "name": "473",
+ "name": "477",
"members": [
{
"name": "aarch64"
@@ -15487,17 +15580,17 @@
]
},
{
- "name": "474",
+ "name": "478",
"members": [
{
"name": "cpu-state",
- "type": "628"
+ "type": "636"
}
],
"meta-type": "object"
},
{
- "name": "475",
+ "name": "479",
"members": [
{
"name": "default"
@@ -15521,7 +15614,7 @@
]
},
{
- "name": "476",
+ "name": "480",
"members": [
{
"name": "node"
@@ -15549,7 +15642,7 @@
]
},
{
- "name": "477",
+ "name": "481",
"members": [
{
"name": "nodeid",
@@ -15580,7 +15673,7 @@
"meta-type": "object"
},
{
- "name": "478",
+ "name": "482",
"members": [
{
"name": "src",
@@ -15598,7 +15691,7 @@
"meta-type": "object"
},
{
- "name": "479",
+ "name": "483",
"members": [
{
"name": "node-id",
@@ -15634,7 +15727,7 @@
"meta-type": "object"
},
{
- "name": "480",
+ "name": "484",
"members": [
{
"name": "initiator",
@@ -15646,11 +15739,11 @@
},
{
"name": "hierarchy",
- "type": "629"
+ "type": "637"
},
{
"name": "data-type",
- "type": "630"
+ "type": "638"
},
{
"name": "latency",
@@ -15666,7 +15759,7 @@
"meta-type": "object"
},
{
- "name": "481",
+ "name": "485",
"members": [
{
"name": "node-id",
@@ -15682,11 +15775,11 @@
},
{
"name": "associativity",
- "type": "631"
+ "type": "639"
},
{
"name": "policy",
- "type": "632"
+ "type": "640"
},
{
"name": "line",
@@ -15696,7 +15789,7 @@
"meta-type": "object"
},
{
- "name": "482",
+ "name": "486",
"members": [
{
"name": "dimm"
@@ -15724,47 +15817,47 @@
]
},
{
- "name": "483",
+ "name": "487",
"members": [
{
"name": "data",
- "type": "633"
+ "type": "641"
}
],
"meta-type": "object"
},
{
- "name": "484",
+ "name": "488",
"members": [
{
"name": "data",
- "type": "634"
+ "type": "642"
}
],
"meta-type": "object"
},
{
- "name": "485",
+ "name": "489",
"members": [
{
"name": "data",
- "type": "635"
+ "type": "643"
}
],
"meta-type": "object"
},
{
- "name": "486",
+ "name": "490",
"members": [
{
"name": "data",
- "type": "636"
+ "type": "644"
}
],
"meta-type": "object"
},
{
- "name": "487",
+ "name": "491",
"members": [
{
"name": "name",
@@ -15779,7 +15872,7 @@
"meta-type": "object"
},
{
- "name": "488",
+ "name": "492",
"members": [
{
"name": "incompatible"
@@ -15803,7 +15896,7 @@
]
},
{
- "name": "489",
+ "name": "493",
"members": [
{
"name": "static"
@@ -15819,7 +15912,7 @@
]
},
{
- "name": "490",
+ "name": "494",
"members": [
{
"name": "none"
@@ -15839,7 +15932,7 @@
]
},
{
- "name": "491",
+ "name": "495",
"members": [
{
"name": "block-node"
@@ -15859,7 +15952,7 @@
]
},
{
- "name": "492",
+ "name": "496",
"members": [
{
"name": "node-name",
@@ -15869,7 +15962,7 @@
"meta-type": "object"
},
{
- "name": "493",
+ "name": "497",
"members": [
{
"name": "id",
@@ -15879,12 +15972,12 @@
"meta-type": "object"
},
{
- "name": "[494]",
- "element-type": "494",
+ "name": "[498]",
+ "element-type": "498",
"meta-type": "array"
},
{
- "name": "494",
+ "name": "498",
"members": [
{
"name": "fd",
@@ -15899,12 +15992,12 @@
"meta-type": "object"
},
{
- "name": "[495]",
- "element-type": "495",
+ "name": "[499]",
+ "element-type": "499",
"meta-type": "array"
},
{
- "name": "495",
+ "name": "499",
"members": [
{
"name": "name",
@@ -15912,7 +16005,7 @@
},
{
"name": "type",
- "type": "637"
+ "type": "645"
},
{
"name": "help",
@@ -15928,7 +16021,7 @@
"meta-type": "object"
},
{
- "name": "496",
+ "name": "500",
"members": [
{
"name": "uninit"
@@ -15960,12 +16053,12 @@
]
},
{
- "name": "[497]",
- "element-type": "497",
+ "name": "[501]",
+ "element-type": "501",
"meta-type": "array"
},
{
- "name": "497",
+ "name": "501",
"members": [
{
"name": "node",
@@ -15979,7 +16072,7 @@
"meta-type": "object"
},
{
- "name": "498",
+ "name": "502",
"members": [
{
"name": "closed"
@@ -16011,7 +16104,7 @@
]
},
{
- "name": "499",
+ "name": "503",
"members": [
{
"name": "none"
@@ -16051,33 +16144,33 @@
]
},
{
- "name": "500",
+ "name": "504",
"members": [
{
"name": "in",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "out",
"default": null,
- "type": "638"
+ "type": "646"
}
],
"meta-type": "object"
},
{
- "name": "501",
+ "name": "505",
"members": [
{
"name": "in",
"default": null,
- "type": "639"
+ "type": "647"
},
{
"name": "out",
"default": null,
- "type": "639"
+ "type": "647"
},
{
"name": "threshold",
@@ -16088,33 +16181,33 @@
"meta-type": "object"
},
{
- "name": "502",
+ "name": "506",
"members": [
{
"name": "in",
"default": null,
- "type": "640"
+ "type": "648"
},
{
"name": "out",
"default": null,
- "type": "640"
+ "type": "648"
}
],
"meta-type": "object"
},
{
- "name": "503",
+ "name": "507",
"members": [
{
"name": "in",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "out",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "latency",
@@ -16125,33 +16218,33 @@
"meta-type": "object"
},
{
- "name": "504",
+ "name": "508",
"members": [
{
"name": "in",
"default": null,
- "type": "641"
+ "type": "649"
},
{
"name": "out",
"default": null,
- "type": "641"
+ "type": "649"
}
],
"meta-type": "object"
},
{
- "name": "505",
+ "name": "509",
"members": [
{
"name": "in",
"default": null,
- "type": "642"
+ "type": "650"
},
{
"name": "out",
"default": null,
- "type": "642"
+ "type": "650"
},
{
"name": "try-mmap",
@@ -16172,17 +16265,17 @@
"meta-type": "object"
},
{
- "name": "506",
+ "name": "510",
"members": [
{
"name": "in",
"default": null,
- "type": "643"
+ "type": "651"
},
{
"name": "out",
"default": null,
- "type": "643"
+ "type": "651"
},
{
"name": "server",
@@ -16193,33 +16286,33 @@
"meta-type": "object"
},
{
- "name": "507",
+ "name": "511",
"members": [
{
"name": "in",
"default": null,
- "type": "644"
+ "type": "652"
},
{
"name": "out",
"default": null,
- "type": "644"
+ "type": "652"
}
],
"meta-type": "object"
},
{
- "name": "508",
+ "name": "512",
"members": [
{
"name": "in",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "out",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "dev",
@@ -16235,17 +16328,17 @@
"meta-type": "object"
},
{
- "name": "509",
+ "name": "513",
"members": [
{
"name": "in",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "out",
"default": null,
- "type": "638"
+ "type": "646"
},
{
"name": "path",
@@ -16256,7 +16349,7 @@
"meta-type": "object"
},
{
- "name": "510",
+ "name": "514",
"members": [
{
"name": "DIMM"
@@ -16272,12 +16365,12 @@
]
},
{
- "name": "[511]",
- "element-type": "511",
+ "name": "[515]",
+ "element-type": "515",
"meta-type": "array"
},
{
- "name": "511",
+ "name": "515",
"members": [
{
"name": "bus",
@@ -16293,11 +16386,11 @@
},
{
"name": "class_info",
- "type": "645"
+ "type": "653"
},
{
"name": "id",
- "type": "646"
+ "type": "654"
},
{
"name": "irq",
@@ -16315,42 +16408,46 @@
{
"name": "pci_bridge",
"default": null,
- "type": "647"
+ "type": "655"
},
{
"name": "regions",
- "type": "[648]"
+ "type": "[656]"
}
],
"meta-type": "object"
},
{
- "name": "512",
+ "name": "516",
"members": [
{
"name": "vm"
},
{
"name": "vcpu"
+ },
+ {
+ "name": "cryptodev"
}
],
"meta-type": "enum",
"values": [
"vm",
- "vcpu"
+ "vcpu",
+ "cryptodev"
]
},
{
- "name": "[513]",
- "element-type": "513",
+ "name": "[517]",
+ "element-type": "517",
"meta-type": "array"
},
{
- "name": "513",
+ "name": "517",
"members": [
{
"name": "provider",
- "type": "515"
+ "type": "519"
},
{
"name": "names",
@@ -16361,7 +16458,7 @@
"meta-type": "object"
},
{
- "name": "514",
+ "name": "518",
"members": [
{
"name": "vcpus",
@@ -16372,24 +16469,28 @@
"meta-type": "object"
},
{
- "name": "515",
+ "name": "519",
"members": [
{
"name": "kvm"
+ },
+ {
+ "name": "cryptodev"
}
],
"meta-type": "enum",
"values": [
- "kvm"
+ "kvm",
+ "cryptodev"
]
},
{
- "name": "[516]",
- "element-type": "516",
+ "name": "[520]",
+ "element-type": "520",
"meta-type": "array"
},
{
- "name": "516",
+ "name": "520",
"members": [
{
"name": "name",
@@ -16397,18 +16498,18 @@
},
{
"name": "value",
- "type": "649"
+ "type": "657"
}
],
"meta-type": "object"
},
{
- "name": "[517]",
- "element-type": "517",
+ "name": "[521]",
+ "element-type": "521",
"meta-type": "array"
},
{
- "name": "517",
+ "name": "521",
"members": [
{
"name": "name",
@@ -16416,12 +16517,12 @@
},
{
"name": "type",
- "type": "650"
+ "type": "658"
},
{
"name": "unit",
"default": null,
- "type": "651"
+ "type": "659"
},
{
"name": "base",
@@ -16441,7 +16542,7 @@
"meta-type": "object"
},
{
- "name": "518",
+ "name": "522",
"members": [
{
"name": "transports",
@@ -16461,7 +16562,7 @@
"meta-type": "object"
},
{
- "name": "519",
+ "name": "523",
"members": [
{
"name": "statuses",
@@ -16476,7 +16577,7 @@
"meta-type": "object"
},
{
- "name": "520",
+ "name": "524",
"members": [
{
"name": "n-mem-sections",
@@ -16496,19 +16597,19 @@
},
{
"name": "features",
- "type": "518"
+ "type": "522"
},
{
"name": "acked-features",
- "type": "518"
+ "type": "522"
},
{
"name": "backend-features",
- "type": "518"
+ "type": "522"
},
{
"name": "protocol-features",
- "type": "652"
+ "type": "660"
},
{
"name": "max-queues",
@@ -16530,12 +16631,12 @@
"meta-type": "object"
},
{
- "name": "[521]",
- "element-type": "521",
+ "name": "[525]",
+ "element-type": "525",
"meta-type": "array"
},
{
- "name": "521",
+ "name": "525",
"members": [
{
"name": "addr",
@@ -16553,7 +16654,7 @@
"meta-type": "object"
},
{
- "name": "522",
+ "name": "526",
"members": [
{
"name": "flags",
@@ -16571,7 +16672,7 @@
"meta-type": "object"
},
{
- "name": "523",
+ "name": "527",
"members": [
{
"name": "flags",
@@ -16585,7 +16686,114 @@
"meta-type": "object"
},
{
- "name": "524",
+ "name": "[528]",
+ "element-type": "528",
+ "meta-type": "array"
+ },
+ {
+ "name": "528",
+ "members": [
+ {
+ "name": "cipher"
+ },
+ {
+ "name": "hash"
+ },
+ {
+ "name": "mac"
+ },
+ {
+ "name": "aead"
+ },
+ {
+ "name": "akcipher"
+ }
+ ],
+ "meta-type": "enum",
+ "values": [
+ "cipher",
+ "hash",
+ "mac",
+ "aead",
+ "akcipher"
+ ]
+ },
+ {
+ "name": "[529]",
+ "element-type": "529",
+ "meta-type": "array"
+ },
+ {
+ "name": "529",
+ "members": [
+ {
+ "name": "queue",
+ "type": "int"
+ },
+ {
+ "name": "type",
+ "type": "661"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "[530]",
+ "element-type": "530",
+ "meta-type": "array"
+ },
+ {
+ "name": "530",
+ "members": [
+ {
+ "name": "type",
+ "type": "662"
+ },
+ {
+ "name": "header",
+ "type": "[int]"
+ }
+ ],
+ "meta-type": "object"
+ },
+ {
+ "name": "531",
+ "members": [
+ {
+ "name": "cache-data-ecc"
+ },
+ {
+ "name": "mem-data-ecc"
+ },
+ {
+ "name": "crc-threshold"
+ },
+ {
+ "name": "retry-threshold"
+ },
+ {
+ "name": "cache-poison-received"
+ },
+ {
+ "name": "mem-poison-received"
+ },
+ {
+ "name": "physical"
+ }
+ ],
+ "meta-type": "enum",
+ "values": [
+ "cache-data-ecc",
+ "mem-data-ecc",
+ "crc-threshold",
+ "retry-threshold",
+ "cache-poison-received",
+ "mem-poison-received",
+ "physical"
+ ]
+ },
+ {
+ "name": "532",
"members": [
{
"name": "hyper-v"
@@ -16601,7 +16809,7 @@
]
},
{
- "name": "525",
+ "name": "533",
"members": [
{
"name": "arg1",
@@ -16627,7 +16835,7 @@
"meta-type": "object"
},
{
- "name": "526",
+ "name": "534",
"members": [
{
"name": "core",
@@ -16643,18 +16851,18 @@
},
{
"name": "reason",
- "type": "653"
+ "type": "663"
}
],
"meta-type": "object"
},
{
- "name": "[527]",
- "element-type": "527",
+ "name": "[535]",
+ "element-type": "535",
"meta-type": "array"
},
{
- "name": "527",
+ "name": "535",
"members": [
{
"name": "interval_length",
@@ -16708,7 +16916,7 @@
"meta-type": "object"
},
{
- "name": "528",
+ "name": "536",
"members": [
{
"name": "boundaries",
@@ -16722,7 +16930,7 @@
"meta-type": "object"
},
{
- "name": "529",
+ "name": "537",
"members": [
{
"name": "discard-nb-ok",
@@ -16740,7 +16948,7 @@
"meta-type": "object"
},
{
- "name": "530",
+ "name": "538",
"members": [
{
"name": "completion-errors",
@@ -16763,40 +16971,40 @@
"meta-type": "array"
},
{
- "name": "531",
+ "name": "539",
"tag": "type",
"variants": [
{
"case": "qcow2",
- "type": "655"
+ "type": "665"
},
{
"case": "vmdk",
- "type": "656"
+ "type": "666"
},
{
"case": "luks",
- "type": "657"
+ "type": "667"
},
{
"case": "rbd",
- "type": "658"
+ "type": "668"
},
{
"case": "file",
- "type": "659"
+ "type": "669"
}
],
"members": [
{
"name": "type",
- "type": "654"
+ "type": "664"
}
],
"meta-type": "object"
},
{
- "name": "532",
+ "name": "540",
"members": [
{
"name": "block-backend"
@@ -16816,12 +17024,12 @@
]
},
{
- "name": "[533]",
- "element-type": "533",
+ "name": "[541]",
+ "element-type": "541",
"meta-type": "array"
},
{
- "name": "533",
+ "name": "541",
"members": [
{
"name": "consistent-read"
@@ -16845,7 +17053,7 @@
]
},
{
- "name": "534",
+ "name": "542",
"members": [
{
"type": "49"
@@ -16857,16 +17065,16 @@
"meta-type": "alternate"
},
{
- "name": "[535]",
- "element-type": "535",
+ "name": "[543]",
+ "element-type": "543",
"meta-type": "array"
},
{
- "name": "535",
+ "name": "543",
"members": [
{
"name": "event",
- "type": "660"
+ "type": "670"
},
{
"name": "state",
@@ -16876,7 +17084,7 @@
{
"name": "iotype",
"default": null,
- "type": "661"
+ "type": "671"
},
{
"name": "errno",
@@ -16902,16 +17110,16 @@
"meta-type": "object"
},
{
- "name": "[536]",
- "element-type": "536",
+ "name": "[544]",
+ "element-type": "544",
"meta-type": "array"
},
{
- "name": "536",
+ "name": "544",
"members": [
{
"name": "event",
- "type": "660"
+ "type": "670"
},
{
"name": "state",
@@ -16926,7 +17134,7 @@
"meta-type": "object"
},
{
- "name": "537",
+ "name": "545",
"members": [
{
"name": "break-guest-write"
@@ -16942,7 +17150,7 @@
]
},
{
- "name": "538",
+ "name": "546",
"members": [
{
"name": "auto"
@@ -16962,7 +17170,7 @@
]
},
{
- "name": "539",
+ "name": "547",
"members": [
{
"name": "threads"
@@ -16982,7 +17190,7 @@
]
},
{
- "name": "540",
+ "name": "548",
"members": [
{
"name": "tcp"
@@ -16998,7 +17206,7 @@
]
},
{
- "name": "541",
+ "name": "549",
"members": [
{
"name": "crc32c"
@@ -17022,11 +17230,11 @@
]
},
{
- "name": "542",
+ "name": "550",
"members": [
{
"name": "type",
- "type": "662"
+ "type": "672"
},
{
"name": "host",
@@ -17036,7 +17244,7 @@
"meta-type": "object"
},
{
- "name": "543",
+ "name": "551",
"members": [
{
"type": "49"
@@ -17051,62 +17259,62 @@
"meta-type": "alternate"
},
{
- "name": "544",
+ "name": "552",
"members": [
{
- "type": "663"
+ "type": "673"
},
{
- "type": "664"
+ "type": "674"
}
],
"meta-type": "alternate"
},
{
- "name": "545",
+ "name": "553",
"tag": "format",
"variants": [
{
"case": "aes",
- "type": "666"
+ "type": "676"
},
{
"case": "luks",
- "type": "667"
+ "type": "677"
}
],
"members": [
{
"name": "format",
- "type": "665"
+ "type": "675"
}
],
"meta-type": "object"
},
{
- "name": "546",
+ "name": "554",
"tag": "format",
"variants": [
{
"case": "aes",
- "type": "666"
+ "type": "676"
}
],
"members": [
{
"name": "format",
- "type": "668"
+ "type": "678"
}
],
"meta-type": "object"
},
{
- "name": "[534]",
- "element-type": "534",
+ "name": "[542]",
+ "element-type": "542",
"meta-type": "array"
},
{
- "name": "547",
+ "name": "555",
"members": [
{
"name": "quorum"
@@ -17122,42 +17330,42 @@
]
},
{
- "name": "548",
+ "name": "556",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "670"
+ "type": "680"
},
{
"case": "luks2",
- "type": "671"
+ "type": "681"
},
{
"case": "luks-any",
- "type": "672"
+ "type": "682"
}
],
"members": [
{
"name": "format",
- "type": "669"
+ "type": "679"
},
{
"name": "parent",
"default": null,
- "type": "548"
+ "type": "556"
}
],
"meta-type": "object"
},
{
- "name": "[549]",
- "element-type": "549",
+ "name": "[557]",
+ "element-type": "557",
"meta-type": "array"
},
{
- "name": "549",
+ "name": "557",
"members": [
{
"name": "cephx"
@@ -17173,12 +17381,12 @@
]
},
{
- "name": "[550]",
- "element-type": "550",
+ "name": "[558]",
+ "element-type": "558",
"meta-type": "array"
},
{
- "name": "550",
+ "name": "558",
"members": [
{
"name": "host",
@@ -17192,7 +17400,7 @@
"meta-type": "object"
},
{
- "name": "551",
+ "name": "559",
"members": [
{
"name": "primary"
@@ -17208,7 +17416,7 @@
]
},
{
- "name": "552",
+ "name": "560",
"members": [
{
"name": "host",
@@ -17252,12 +17460,12 @@
"meta-type": "object"
},
{
- "name": "553",
+ "name": "561",
"tag": "mode",
"variants": [
{
"case": "hash",
- "type": "674"
+ "type": "684"
},
{
"case": "none",
@@ -17271,13 +17479,13 @@
"members": [
{
"name": "mode",
- "type": "673"
+ "type": "683"
}
],
"meta-type": "object"
},
{
- "name": "554",
+ "name": "562",
"members": [
{
"name": "filename",
@@ -17290,7 +17498,7 @@
{
"name": "preallocation",
"default": null,
- "type": "675"
+ "type": "685"
},
{
"name": "nocow",
@@ -17306,11 +17514,11 @@
"meta-type": "object"
},
{
- "name": "555",
+ "name": "563",
"members": [
{
"name": "location",
- "type": "308"
+ "type": "312"
},
{
"name": "size",
@@ -17319,13 +17527,13 @@
{
"name": "preallocation",
"default": null,
- "type": "675"
+ "type": "685"
}
],
"meta-type": "object"
},
{
- "name": "556",
+ "name": "564",
"members": [
{
"name": "key-secret",
@@ -17335,27 +17543,27 @@
{
"name": "cipher-alg",
"default": null,
- "type": "676"
+ "type": "686"
},
{
"name": "cipher-mode",
"default": null,
- "type": "677"
+ "type": "687"
},
{
"name": "ivgen-alg",
"default": null,
- "type": "678"
+ "type": "688"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "679"
+ "type": "689"
},
{
"name": "hash-alg",
"default": null,
- "type": "679"
+ "type": "689"
},
{
"name": "iter-time",
@@ -17364,7 +17572,7 @@
},
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17373,17 +17581,17 @@
{
"name": "preallocation",
"default": null,
- "type": "675"
+ "type": "685"
}
],
"meta-type": "object"
},
{
- "name": "557",
+ "name": "565",
"members": [
{
"name": "location",
- "type": "315"
+ "type": "319"
},
{
"name": "size",
@@ -17393,11 +17601,11 @@
"meta-type": "object"
},
{
- "name": "558",
+ "name": "566",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17412,11 +17620,11 @@
"meta-type": "object"
},
{
- "name": "559",
+ "name": "567",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17430,22 +17638,22 @@
{
"name": "encrypt",
"default": null,
- "type": "680"
+ "type": "690"
}
],
"meta-type": "object"
},
{
- "name": "560",
+ "name": "568",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "data-file",
"default": null,
- "type": "534"
+ "type": "542"
},
{
"name": "data-file-raw",
@@ -17464,7 +17672,7 @@
{
"name": "version",
"default": null,
- "type": "681"
+ "type": "691"
},
{
"name": "backing-file",
@@ -17474,12 +17682,12 @@
{
"name": "backing-fmt",
"default": null,
- "type": "295"
+ "type": "299"
},
{
"name": "encrypt",
"default": null,
- "type": "680"
+ "type": "690"
},
{
"name": "cluster-size",
@@ -17489,7 +17697,7 @@
{
"name": "preallocation",
"default": null,
- "type": "675"
+ "type": "685"
},
{
"name": "lazy-refcounts",
@@ -17504,17 +17712,17 @@
{
"name": "compression-type",
"default": null,
- "type": "682"
+ "type": "692"
}
],
"meta-type": "object"
},
{
- "name": "561",
+ "name": "569",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17528,7 +17736,7 @@
{
"name": "backing-fmt",
"default": null,
- "type": "295"
+ "type": "299"
},
{
"name": "cluster-size",
@@ -17544,11 +17752,11 @@
"meta-type": "object"
},
{
- "name": "562",
+ "name": "570",
"members": [
{
"name": "location",
- "type": "325"
+ "type": "329"
},
{
"name": "size",
@@ -17562,17 +17770,17 @@
{
"name": "encrypt",
"default": null,
- "type": "683"
+ "type": "693"
}
],
"meta-type": "object"
},
{
- "name": "563",
+ "name": "571",
"members": [
{
"name": "location",
- "type": "327"
+ "type": "331"
},
{
"name": "size",
@@ -17582,11 +17790,11 @@
"meta-type": "object"
},
{
- "name": "564",
+ "name": "572",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17595,17 +17803,17 @@
{
"name": "preallocation",
"default": null,
- "type": "675"
+ "type": "685"
}
],
"meta-type": "object"
},
{
- "name": "565",
+ "name": "573",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17624,7 +17832,7 @@
{
"name": "subformat",
"default": null,
- "type": "684"
+ "type": "694"
},
{
"name": "block-state-zero",
@@ -17635,11 +17843,11 @@
"meta-type": "object"
},
{
- "name": "566",
+ "name": "574",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17648,12 +17856,12 @@
{
"name": "extents",
"default": null,
- "type": "[534]"
+ "type": "[542]"
},
{
"name": "subformat",
"default": null,
- "type": "685"
+ "type": "695"
},
{
"name": "backing-file",
@@ -17663,7 +17871,7 @@
{
"name": "adapter-type",
"default": null,
- "type": "686"
+ "type": "696"
},
{
"name": "hwversion",
@@ -17684,11 +17892,11 @@
"meta-type": "object"
},
{
- "name": "567",
+ "name": "575",
"members": [
{
"name": "file",
- "type": "534"
+ "type": "542"
},
{
"name": "size",
@@ -17697,7 +17905,7 @@
{
"name": "subformat",
"default": null,
- "type": "687"
+ "type": "697"
},
{
"name": "force-size",
@@ -17708,11 +17916,11 @@
"meta-type": "object"
},
{
- "name": "568",
+ "name": "576",
"members": [
{
"name": "state",
- "type": "688"
+ "type": "698"
},
{
"name": "new-secret",
@@ -17743,12 +17951,12 @@
"meta-type": "object"
},
{
- "name": "569",
+ "name": "577",
"members": [
{
"name": "encrypt",
"default": null,
- "type": "689"
+ "type": "699"
}
],
"meta-type": "object"
@@ -17759,7 +17967,7 @@
"meta-type": "builtin"
},
{
- "name": "570",
+ "name": "578",
"members": [
{
"name": "inet"
@@ -17783,47 +17991,47 @@
]
},
{
- "name": "571",
+ "name": "579",
"members": [
{
"name": "data",
- "type": "552"
+ "type": "560"
}
],
"meta-type": "object"
},
{
- "name": "572",
+ "name": "580",
"members": [
{
"name": "data",
- "type": "591"
+ "type": "599"
}
],
"meta-type": "object"
},
{
- "name": "573",
+ "name": "581",
"members": [
{
"name": "data",
- "type": "592"
+ "type": "600"
}
],
"meta-type": "object"
},
{
- "name": "574",
+ "name": "582",
"members": [
{
"name": "data",
- "type": "590"
+ "type": "598"
}
],
"meta-type": "object"
},
{
- "name": "575",
+ "name": "583",
"members": [
{
"name": "off"
@@ -17843,7 +18051,7 @@
]
},
{
- "name": "576",
+ "name": "584",
"members": [
{
"name": "file"
@@ -17939,142 +18147,142 @@
]
},
{
- "name": "577",
+ "name": "585",
"members": [
{
"name": "data",
- "type": "690"
+ "type": "700"
}
],
"meta-type": "object"
},
{
- "name": "578",
+ "name": "586",
"members": [
{
"name": "data",
- "type": "691"
+ "type": "701"
}
],
"meta-type": "object"
},
{
- "name": "579",
+ "name": "587",
"members": [
{
"name": "data",
- "type": "692"
+ "type": "702"
}
],
"meta-type": "object"
},
{
- "name": "580",
+ "name": "588",
"members": [
{
"name": "data",
- "type": "693"
+ "type": "703"
}
],
"meta-type": "object"
},
{
- "name": "581",
+ "name": "589",
"members": [
{
"name": "data",
- "type": "694"
+ "type": "704"
}
],
"meta-type": "object"
},
{
- "name": "582",
+ "name": "590",
"members": [
{
"name": "data",
- "type": "695"
+ "type": "705"
}
],
"meta-type": "object"
},
{
- "name": "583",
+ "name": "591",
"members": [
{
"name": "data",
- "type": "696"
+ "type": "706"
}
],
"meta-type": "object"
},
{
- "name": "584",
+ "name": "592",
"members": [
{
"name": "data",
- "type": "697"
+ "type": "707"
}
],
"meta-type": "object"
},
{
- "name": "585",
+ "name": "593",
"members": [
{
"name": "data",
- "type": "698"
+ "type": "708"
}
],
"meta-type": "object"
},
{
- "name": "586",
+ "name": "594",
"members": [
{
"name": "data",
- "type": "699"
+ "type": "709"
}
],
"meta-type": "object"
},
{
- "name": "587",
+ "name": "595",
"members": [
{
"name": "data",
- "type": "700"
+ "type": "710"
}
],
"meta-type": "object"
},
{
- "name": "588",
+ "name": "596",
"members": [
{
"name": "data",
- "type": "701"
+ "type": "711"
}
],
"meta-type": "object"
},
{
- "name": "589",
+ "name": "597",
"members": [
{
"name": "data",
- "type": "702"
+ "type": "712"
}
],
"meta-type": "object"
},
{
- "name": "[590]",
- "element-type": "590",
+ "name": "[598]",
+ "element-type": "598",
"meta-type": "array"
},
{
- "name": "590",
+ "name": "598",
"members": [
{
"name": "str",
@@ -18084,7 +18292,7 @@
"meta-type": "object"
},
{
- "name": "591",
+ "name": "599",
"members": [
{
"name": "path",
@@ -18104,7 +18312,7 @@
"meta-type": "object"
},
{
- "name": "592",
+ "name": "600",
"members": [
{
"name": "cid",
@@ -18118,27 +18326,27 @@
"meta-type": "object"
},
{
- "name": "593",
+ "name": "601",
"members": [
{
"name": "data",
- "type": "703"
+ "type": "713"
}
],
"meta-type": "object"
},
{
- "name": "594",
+ "name": "602",
"members": [
{
"name": "data",
- "type": "704"
+ "type": "714"
}
],
"meta-type": "object"
},
{
- "name": "595",
+ "name": "603",
"members": [
{
"name": "number"
@@ -18154,7 +18362,7 @@
]
},
{
- "name": "596",
+ "name": "604",
"members": [
{
"name": "data",
@@ -18164,17 +18372,17 @@
"meta-type": "object"
},
{
- "name": "597",
+ "name": "605",
"members": [
{
"name": "data",
- "type": "705"
+ "type": "715"
}
],
"meta-type": "object"
},
{
- "name": "598",
+ "name": "606",
"members": [
{
"name": "key"
@@ -18198,37 +18406,37 @@
]
},
{
- "name": "599",
+ "name": "607",
"members": [
{
"name": "data",
- "type": "706"
+ "type": "716"
}
],
"meta-type": "object"
},
{
- "name": "600",
+ "name": "608",
"members": [
{
"name": "data",
- "type": "707"
+ "type": "717"
}
],
"meta-type": "object"
},
{
- "name": "601",
+ "name": "609",
"members": [
{
"name": "data",
- "type": "708"
+ "type": "718"
}
],
"meta-type": "object"
},
{
- "name": "602",
+ "name": "610",
"members": [
{
"name": "lctrl-lalt"
@@ -18253,12 +18461,12 @@
"meta-type": "builtin"
},
{
- "name": "[603]",
- "element-type": "603",
+ "name": "[611]",
+ "element-type": "611",
"meta-type": "array"
},
{
- "name": "603",
+ "name": "611",
"members": [
{
"name": "name",
@@ -18271,13 +18479,13 @@
{
"name": "transform",
"default": null,
- "type": "709"
+ "type": "719"
}
],
"meta-type": "object"
},
{
- "name": "604",
+ "name": "612",
"members": [
{
"name": "abort"
@@ -18336,17 +18544,17 @@
]
},
{
- "name": "605",
+ "name": "613",
"members": [
{
"name": "data",
- "type": "710"
+ "type": "720"
}
],
"meta-type": "object"
},
{
- "name": "606",
+ "name": "614",
"members": [
{
"name": "data",
@@ -18356,7 +18564,7 @@
"meta-type": "object"
},
{
- "name": "607",
+ "name": "615",
"members": [
{
"name": "data",
@@ -18366,7 +18574,7 @@
"meta-type": "object"
},
{
- "name": "608",
+ "name": "616",
"members": [
{
"name": "data",
@@ -18376,7 +18584,7 @@
"meta-type": "object"
},
{
- "name": "609",
+ "name": "617",
"members": [
{
"name": "data",
@@ -18386,7 +18594,7 @@
"meta-type": "object"
},
{
- "name": "610",
+ "name": "618",
"members": [
{
"name": "data",
@@ -18396,7 +18604,7 @@
"meta-type": "object"
},
{
- "name": "611",
+ "name": "619",
"members": [
{
"name": "data",
@@ -18406,7 +18614,7 @@
"meta-type": "object"
},
{
- "name": "612",
+ "name": "620",
"members": [
{
"name": "data",
@@ -18416,7 +18624,7 @@
"meta-type": "object"
},
{
- "name": "613",
+ "name": "621",
"members": [
{
"name": "data",
@@ -18426,7 +18634,7 @@
"meta-type": "object"
},
{
- "name": "614",
+ "name": "622",
"members": [
{
"name": "individual"
@@ -18442,7 +18650,7 @@
]
},
{
- "name": "615",
+ "name": "623",
"members": [
{
"name": "string"
@@ -18482,12 +18690,12 @@
]
},
{
- "name": "[616]",
- "element-type": "616",
+ "name": "[624]",
+ "element-type": "624",
"meta-type": "array"
},
{
- "name": "616",
+ "name": "624",
"members": [
{
"name": "name",
@@ -18502,12 +18710,12 @@
"meta-type": "object"
},
{
- "name": "[617]",
- "element-type": "617",
+ "name": "[625]",
+ "element-type": "625",
"meta-type": "array"
},
{
- "name": "617",
+ "name": "625",
"members": [
{
"name": "name",
@@ -18531,12 +18739,12 @@
"meta-type": "object"
},
{
- "name": "[618]",
- "element-type": "618",
+ "name": "[626]",
+ "element-type": "626",
"meta-type": "array"
},
{
- "name": "618",
+ "name": "626",
"members": [
{
"name": "case",
@@ -18550,12 +18758,12 @@
"meta-type": "object"
},
{
- "name": "[619]",
- "element-type": "619",
+ "name": "[627]",
+ "element-type": "627",
"meta-type": "array"
},
{
- "name": "619",
+ "name": "627",
"members": [
{
"name": "type",
@@ -18565,7 +18773,7 @@
"meta-type": "object"
},
{
- "name": "620",
+ "name": "628",
"members": [
{
"name": "deny"
@@ -18581,12 +18789,12 @@
]
},
{
- "name": "[621]",
- "element-type": "621",
+ "name": "[629]",
+ "element-type": "629",
"meta-type": "array"
},
{
- "name": "621",
+ "name": "629",
"members": [
{
"name": "match",
@@ -18594,18 +18802,18 @@
},
{
"name": "policy",
- "type": "620"
+ "type": "628"
},
{
"name": "format",
"default": null,
- "type": "711"
+ "type": "721"
}
],
"meta-type": "object"
},
{
- "name": "622",
+ "name": "630",
"members": [
{
"name": "all"
@@ -18625,7 +18833,7 @@
]
},
{
- "name": "623",
+ "name": "631",
"members": [
{
"name": "before"
@@ -18641,7 +18849,7 @@
]
},
{
- "name": "624",
+ "name": "632",
"members": [
{
"name": "ctrl-ctrl"
@@ -18673,7 +18881,7 @@
]
},
{
- "name": "625",
+ "name": "633",
"members": [
{
"name": "raw"
@@ -18689,7 +18897,7 @@
]
},
{
- "name": "626",
+ "name": "634",
"members": [
{
"name": "iops-total",
@@ -18790,7 +18998,7 @@
"meta-type": "object"
},
{
- "name": "627",
+ "name": "635",
"members": [
{
"name": "client"
@@ -18806,7 +19014,7 @@
]
},
{
- "name": "628",
+ "name": "636",
"members": [
{
"name": "uninitialized"
@@ -18834,7 +19042,7 @@
]
},
{
- "name": "629",
+ "name": "637",
"members": [
{
"name": "memory"
@@ -18858,7 +19066,7 @@
]
},
{
- "name": "630",
+ "name": "638",
"members": [
{
"name": "access-latency"
@@ -18890,7 +19098,7 @@
]
},
{
- "name": "631",
+ "name": "639",
"members": [
{
"name": "none"
@@ -18910,7 +19118,7 @@
]
},
{
- "name": "632",
+ "name": "640",
"members": [
{
"name": "none"
@@ -18930,7 +19138,7 @@
]
},
{
- "name": "633",
+ "name": "641",
"members": [
{
"name": "id",
@@ -18969,7 +19177,7 @@
"meta-type": "object"
},
{
- "name": "634",
+ "name": "642",
"members": [
{
"name": "id",
@@ -18992,7 +19200,7 @@
"meta-type": "object"
},
{
- "name": "635",
+ "name": "643",
"members": [
{
"name": "id",
@@ -19031,7 +19239,7 @@
"meta-type": "object"
},
{
- "name": "636",
+ "name": "644",
"members": [
{
"name": "id",
@@ -19058,7 +19266,7 @@
"meta-type": "object"
},
{
- "name": "637",
+ "name": "645",
"members": [
{
"name": "string"
@@ -19082,7 +19290,7 @@
]
},
{
- "name": "638",
+ "name": "646",
"members": [
{
"name": "mixing-engine",
@@ -19112,7 +19320,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19123,7 +19331,7 @@
"meta-type": "object"
},
{
- "name": "639",
+ "name": "647",
"members": [
{
"name": "mixing-engine",
@@ -19153,7 +19361,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19179,7 +19387,7 @@
"meta-type": "object"
},
{
- "name": "640",
+ "name": "648",
"members": [
{
"name": "mixing-engine",
@@ -19209,7 +19417,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19225,7 +19433,7 @@
"meta-type": "object"
},
{
- "name": "641",
+ "name": "649",
"members": [
{
"name": "mixing-engine",
@@ -19255,7 +19463,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19291,7 +19499,7 @@
"meta-type": "object"
},
{
- "name": "642",
+ "name": "650",
"members": [
{
"name": "mixing-engine",
@@ -19321,7 +19529,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19347,7 +19555,7 @@
"meta-type": "object"
},
{
- "name": "643",
+ "name": "651",
"members": [
{
"name": "mixing-engine",
@@ -19377,7 +19585,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19403,7 +19611,7 @@
"meta-type": "object"
},
{
- "name": "644",
+ "name": "652",
"members": [
{
"name": "mixing-engine",
@@ -19433,7 +19641,7 @@
{
"name": "format",
"default": null,
- "type": "712"
+ "type": "722"
},
{
"name": "buffer-length",
@@ -19449,7 +19657,7 @@
"meta-type": "object"
},
{
- "name": "645",
+ "name": "653",
"members": [
{
"name": "desc",
@@ -19464,7 +19672,7 @@
"meta-type": "object"
},
{
- "name": "646",
+ "name": "654",
"members": [
{
"name": "device",
@@ -19488,27 +19696,27 @@
"meta-type": "object"
},
{
- "name": "647",
+ "name": "655",
"members": [
{
"name": "bus",
- "type": "713"
+ "type": "723"
},
{
"name": "devices",
"default": null,
- "type": "[511]"
+ "type": "[515]"
}
],
"meta-type": "object"
},
{
- "name": "[648]",
- "element-type": "648",
+ "name": "[656]",
+ "element-type": "656",
"meta-type": "array"
},
{
- "name": "648",
+ "name": "656",
"members": [
{
"name": "bar",
@@ -19540,7 +19748,7 @@
"meta-type": "object"
},
{
- "name": "649",
+ "name": "657",
"members": [
{
"type": "int"
@@ -19555,7 +19763,7 @@
"meta-type": "alternate"
},
{
- "name": "650",
+ "name": "658",
"members": [
{
"name": "cumulative"
@@ -19583,7 +19791,7 @@
]
},
{
- "name": "651",
+ "name": "659",
"members": [
{
"name": "bytes"
@@ -19607,7 +19815,7 @@
]
},
{
- "name": "652",
+ "name": "660",
"members": [
{
"name": "protocols",
@@ -19622,7 +19830,95 @@
"meta-type": "object"
},
{
- "name": "653",
+ "name": "661",
+ "members": [
+ {
+ "name": "builtin"
+ },
+ {
+ "name": "vhost-user"
+ },
+ {
+ "name": "lkcf"
+ }
+ ],
+ "meta-type": "enum",
+ "values": [
+ "builtin",
+ "vhost-user",
+ "lkcf"
+ ]
+ },
+ {
+ "name": "662",
+ "members": [
+ {
+ "name": "cache-data-parity"
+ },
+ {
+ "name": "cache-address-parity"
+ },
+ {
+ "name": "cache-be-parity"
+ },
+ {
+ "name": "cache-data-ecc"
+ },
+ {
+ "name": "mem-data-parity"
+ },
+ {
+ "name": "mem-address-parity"
+ },
+ {
+ "name": "mem-be-parity"
+ },
+ {
+ "name": "mem-data-ecc"
+ },
+ {
+ "name": "reinit-threshold"
+ },
+ {
+ "name": "rsvd-encoding"
+ },
+ {
+ "name": "poison-received"
+ },
+ {
+ "name": "receiver-overflow"
+ },
+ {
+ "name": "internal"
+ },
+ {
+ "name": "cxl-ide-tx"
+ },
+ {
+ "name": "cxl-ide-rx"
+ }
+ ],
+ "meta-type": "enum",
+ "values": [
+ "cache-data-parity",
+ "cache-address-parity",
+ "cache-be-parity",
+ "cache-data-ecc",
+ "mem-data-parity",
+ "mem-address-parity",
+ "mem-be-parity",
+ "mem-data-ecc",
+ "reinit-threshold",
+ "rsvd-encoding",
+ "poison-received",
+ "receiver-overflow",
+ "internal",
+ "cxl-ide-tx",
+ "cxl-ide-rx"
+ ]
+ },
+ {
+ "name": "663",
"members": [
{
"name": "unknown"
@@ -19650,7 +19946,7 @@
]
},
{
- "name": "654",
+ "name": "664",
"members": [
{
"name": "qcow2"
@@ -19678,57 +19974,57 @@
]
},
{
- "name": "655",
+ "name": "665",
"members": [
{
"name": "data",
- "type": "714"
+ "type": "724"
}
],
"meta-type": "object"
},
{
- "name": "656",
+ "name": "666",
"members": [
{
"name": "data",
- "type": "715"
+ "type": "725"
}
],
"meta-type": "object"
},
{
- "name": "657",
+ "name": "667",
"members": [
{
"name": "data",
- "type": "716"
+ "type": "726"
}
],
"meta-type": "object"
},
{
- "name": "658",
+ "name": "668",
"members": [
{
"name": "data",
- "type": "717"
+ "type": "727"
}
],
"meta-type": "object"
},
{
- "name": "659",
+ "name": "669",
"members": [
{
"name": "data",
- "type": "718"
+ "type": "728"
}
],
"meta-type": "object"
},
{
- "name": "660",
+ "name": "670",
"members": [
{
"name": "l1_update"
@@ -19928,7 +20224,7 @@
]
},
{
- "name": "661",
+ "name": "671",
"members": [
{
"name": "read"
@@ -19960,7 +20256,7 @@
]
},
{
- "name": "662",
+ "name": "672",
"members": [
{
"name": "inet"
@@ -19972,12 +20268,12 @@
]
},
{
- "name": "663",
+ "name": "673",
"members": [
{
"name": "template",
"default": null,
- "type": "664"
+ "type": "674"
},
{
"name": "main-header",
@@ -20028,7 +20324,7 @@
"meta-type": "object"
},
{
- "name": "664",
+ "name": "674",
"members": [
{
"name": "none"
@@ -20052,7 +20348,7 @@
]
},
{
- "name": "665",
+ "name": "675",
"members": [
{
"name": "aes"
@@ -20068,7 +20364,7 @@
]
},
{
- "name": "666",
+ "name": "676",
"members": [
{
"name": "key-secret",
@@ -20079,7 +20375,7 @@
"meta-type": "object"
},
{
- "name": "667",
+ "name": "677",
"members": [
{
"name": "key-secret",
@@ -20090,7 +20386,7 @@
"meta-type": "object"
},
{
- "name": "668",
+ "name": "678",
"members": [
{
"name": "aes"
@@ -20102,7 +20398,7 @@
]
},
{
- "name": "669",
+ "name": "679",
"members": [
{
"name": "luks"
@@ -20122,7 +20418,7 @@
]
},
{
- "name": "670",
+ "name": "680",
"members": [
{
"name": "key-secret",
@@ -20132,7 +20428,7 @@
"meta-type": "object"
},
{
- "name": "671",
+ "name": "681",
"members": [
{
"name": "key-secret",
@@ -20142,7 +20438,7 @@
"meta-type": "object"
},
{
- "name": "672",
+ "name": "682",
"members": [
{
"name": "key-secret",
@@ -20152,7 +20448,7 @@
"meta-type": "object"
},
{
- "name": "673",
+ "name": "683",
"members": [
{
"name": "none"
@@ -20172,11 +20468,11 @@
]
},
{
- "name": "674",
+ "name": "684",
"members": [
{
"name": "type",
- "type": "719"
+ "type": "729"
},
{
"name": "hash",
@@ -20186,7 +20482,7 @@
"meta-type": "object"
},
{
- "name": "675",
+ "name": "685",
"members": [
{
"name": "off"
@@ -20210,7 +20506,7 @@
]
},
{
- "name": "676",
+ "name": "686",
"members": [
{
"name": "aes-128"
@@ -20266,7 +20562,7 @@
]
},
{
- "name": "677",
+ "name": "687",
"members": [
{
"name": "ecb"
@@ -20290,7 +20586,7 @@
]
},
{
- "name": "678",
+ "name": "688",
"members": [
{
"name": "plain"
@@ -20310,7 +20606,7 @@
]
},
{
- "name": "679",
+ "name": "689",
"members": [
{
"name": "md5"
@@ -20346,28 +20642,28 @@
]
},
{
- "name": "680",
+ "name": "690",
"tag": "format",
"variants": [
{
"case": "qcow",
- "type": "666"
+ "type": "676"
},
{
"case": "luks",
- "type": "721"
+ "type": "731"
}
],
"members": [
{
"name": "format",
- "type": "720"
+ "type": "730"
}
],
"meta-type": "object"
},
{
- "name": "681",
+ "name": "691",
"members": [
{
"name": "v2"
@@ -20383,7 +20679,7 @@
]
},
{
- "name": "682",
+ "name": "692",
"members": [
{
"name": "zlib"
@@ -20399,16 +20695,16 @@
]
},
{
- "name": "683",
+ "name": "693",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "722"
+ "type": "732"
},
{
"case": "luks2",
- "type": "723"
+ "type": "733"
},
{
"case": "luks-any",
@@ -20418,13 +20714,13 @@
"members": [
{
"name": "format",
- "type": "669"
+ "type": "679"
}
],
"meta-type": "object"
},
{
- "name": "684",
+ "name": "694",
"members": [
{
"name": "dynamic"
@@ -20440,7 +20736,7 @@
]
},
{
- "name": "685",
+ "name": "695",
"members": [
{
"name": "monolithicSparse"
@@ -20468,7 +20764,7 @@
]
},
{
- "name": "686",
+ "name": "696",
"members": [
{
"name": "ide"
@@ -20492,7 +20788,7 @@
]
},
{
- "name": "687",
+ "name": "697",
"members": [
{
"name": "dynamic"
@@ -20508,7 +20804,7 @@
]
},
{
- "name": "688",
+ "name": "698",
"members": [
{
"name": "active"
@@ -20524,12 +20820,12 @@
]
},
{
- "name": "689",
+ "name": "699",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "724"
+ "type": "734"
},
{
"case": "qcow",
@@ -20539,13 +20835,13 @@
"members": [
{
"name": "format",
- "type": "720"
+ "type": "730"
}
],
"meta-type": "object"
},
{
- "name": "690",
+ "name": "700",
"members": [
{
"name": "logfile",
@@ -20575,7 +20871,7 @@
"meta-type": "object"
},
{
- "name": "691",
+ "name": "701",
"members": [
{
"name": "logfile",
@@ -20595,7 +20891,7 @@
"meta-type": "object"
},
{
- "name": "692",
+ "name": "702",
"members": [
{
"name": "logfile",
@@ -20609,7 +20905,7 @@
},
{
"name": "addr",
- "type": "340"
+ "type": "344"
},
{
"name": "tls-creds",
@@ -20660,7 +20956,7 @@
"meta-type": "object"
},
{
- "name": "693",
+ "name": "703",
"members": [
{
"name": "logfile",
@@ -20674,18 +20970,18 @@
},
{
"name": "remote",
- "type": "340"
+ "type": "344"
},
{
"name": "local",
"default": null,
- "type": "340"
+ "type": "344"
}
],
"meta-type": "object"
},
{
- "name": "694",
+ "name": "704",
"members": [
{
"name": "logfile",
@@ -20701,7 +20997,7 @@
"meta-type": "object"
},
{
- "name": "695",
+ "name": "705",
"members": [
{
"name": "logfile",
@@ -20721,7 +21017,7 @@
"meta-type": "object"
},
{
- "name": "696",
+ "name": "706",
"members": [
{
"name": "logfile",
@@ -20742,7 +21038,7 @@
"meta-type": "object"
},
{
- "name": "697",
+ "name": "707",
"members": [
{
"name": "logfile",
@@ -20762,7 +21058,7 @@
"meta-type": "object"
},
{
- "name": "698",
+ "name": "708",
"members": [
{
"name": "logfile",
@@ -20782,7 +21078,7 @@
"meta-type": "object"
},
{
- "name": "699",
+ "name": "709",
"members": [
{
"name": "logfile",
@@ -20808,7 +21104,7 @@
"meta-type": "object"
},
{
- "name": "700",
+ "name": "710",
"members": [
{
"name": "logfile",
@@ -20828,7 +21124,7 @@
"meta-type": "object"
},
{
- "name": "701",
+ "name": "711",
"members": [
{
"name": "logfile",
@@ -20864,7 +21160,7 @@
"meta-type": "object"
},
{
- "name": "702",
+ "name": "712",
"members": [
{
"name": "logfile",
@@ -20885,7 +21181,7 @@
"meta-type": "object"
},
{
- "name": "703",
+ "name": "713",
"members": [
{
"name": "path",
@@ -20901,7 +21197,7 @@
"meta-type": "object"
},
{
- "name": "704",
+ "name": "714",
"members": [
{
"name": "chardev",
@@ -20911,7 +21207,7 @@
"meta-type": "object"
},
{
- "name": "705",
+ "name": "715",
"members": [
{
"name": "unmapped"
@@ -21362,6 +21658,42 @@
},
{
"name": "lang2"
+ },
+ {
+ "name": "f13"
+ },
+ {
+ "name": "f14"
+ },
+ {
+ "name": "f15"
+ },
+ {
+ "name": "f16"
+ },
+ {
+ "name": "f17"
+ },
+ {
+ "name": "f18"
+ },
+ {
+ "name": "f19"
+ },
+ {
+ "name": "f20"
+ },
+ {
+ "name": "f21"
+ },
+ {
+ "name": "f22"
+ },
+ {
+ "name": "f23"
+ },
+ {
+ "name": "f24"
}
],
"meta-type": "enum",
@@ -21515,15 +21847,27 @@
"ac_refresh",
"ac_bookmarks",
"lang1",
- "lang2"
+ "lang2",
+ "f13",
+ "f14",
+ "f15",
+ "f16",
+ "f17",
+ "f18",
+ "f19",
+ "f20",
+ "f21",
+ "f22",
+ "f23",
+ "f24"
]
},
{
- "name": "706",
+ "name": "716",
"members": [
{
"name": "key",
- "type": "392"
+ "type": "396"
},
{
"name": "down",
@@ -21533,11 +21877,11 @@
"meta-type": "object"
},
{
- "name": "707",
+ "name": "717",
"members": [
{
"name": "button",
- "type": "725"
+ "type": "735"
},
{
"name": "down",
@@ -21547,11 +21891,11 @@
"meta-type": "object"
},
{
- "name": "708",
+ "name": "718",
"members": [
{
"name": "axis",
- "type": "726"
+ "type": "736"
},
{
"name": "value",
@@ -21561,7 +21905,7 @@
"meta-type": "object"
},
{
- "name": "709",
+ "name": "719",
"members": [
{
"name": "persistent",
@@ -21572,13 +21916,13 @@
"meta-type": "object"
},
{
- "name": "710",
+ "name": "720",
"members": [
],
"meta-type": "object"
},
{
- "name": "711",
+ "name": "721",
"members": [
{
"name": "exact"
@@ -21594,7 +21938,7 @@
]
},
{
- "name": "712",
+ "name": "722",
"members": [
{
"name": "u8"
@@ -21630,7 +21974,7 @@
]
},
{
- "name": "713",
+ "name": "723",
"members": [
{
"name": "number",
@@ -21646,21 +21990,21 @@
},
{
"name": "io_range",
- "type": "727"
+ "type": "737"
},
{
"name": "memory_range",
- "type": "727"
+ "type": "737"
},
{
"name": "prefetchable_range",
- "type": "727"
+ "type": "737"
}
],
"meta-type": "object"
},
{
- "name": "714",
+ "name": "724",
"members": [
{
"name": "compat",
@@ -21698,22 +22042,22 @@
{
"name": "encrypt",
"default": null,
- "type": "728"
+ "type": "738"
},
{
"name": "bitmaps",
"default": null,
- "type": "[729]"
+ "type": "[739]"
},
{
"name": "compression-type",
- "type": "682"
+ "type": "692"
}
],
"meta-type": "object"
},
{
- "name": "715",
+ "name": "725",
"members": [
{
"name": "create-type",
@@ -21729,34 +22073,34 @@
},
{
"name": "extents",
- "type": "[730]"
+ "type": "[740]"
}
],
"meta-type": "object"
},
{
- "name": "716",
+ "name": "726",
"members": [
{
"name": "cipher-alg",
- "type": "676"
+ "type": "686"
},
{
"name": "cipher-mode",
- "type": "677"
+ "type": "687"
},
{
"name": "ivgen-alg",
- "type": "678"
+ "type": "688"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "679"
+ "type": "689"
},
{
"name": "hash-alg",
- "type": "679"
+ "type": "689"
},
{
"name": "payload-offset",
@@ -21772,24 +22116,24 @@
},
{
"name": "slots",
- "type": "[731]"
+ "type": "[741]"
}
],
"meta-type": "object"
},
{
- "name": "717",
+ "name": "727",
"members": [
{
"name": "encryption-format",
"default": null,
- "type": "669"
+ "type": "679"
}
],
"meta-type": "object"
},
{
- "name": "718",
+ "name": "728",
"members": [
{
"name": "extent-size-hint",
@@ -21800,7 +22144,7 @@
"meta-type": "object"
},
{
- "name": "719",
+ "name": "729",
"members": [
{
"name": "md5"
@@ -21820,7 +22164,7 @@
]
},
{
- "name": "720",
+ "name": "730",
"members": [
{
"name": "qcow"
@@ -21836,7 +22180,7 @@
]
},
{
- "name": "721",
+ "name": "731",
"members": [
{
"name": "key-secret",
@@ -21846,27 +22190,27 @@
{
"name": "cipher-alg",
"default": null,
- "type": "676"
+ "type": "686"
},
{
"name": "cipher-mode",
"default": null,
- "type": "677"
+ "type": "687"
},
{
"name": "ivgen-alg",
"default": null,
- "type": "678"
+ "type": "688"
},
{
"name": "ivgen-hash-alg",
"default": null,
- "type": "679"
+ "type": "689"
},
{
"name": "hash-alg",
"default": null,
- "type": "679"
+ "type": "689"
},
{
"name": "iter-time",
@@ -21877,7 +22221,7 @@
"meta-type": "object"
},
{
- "name": "722",
+ "name": "732",
"members": [
{
"name": "key-secret",
@@ -21886,13 +22230,13 @@
{
"name": "cipher-alg",
"default": null,
- "type": "676"
+ "type": "686"
}
],
"meta-type": "object"
},
{
- "name": "723",
+ "name": "733",
"members": [
{
"name": "key-secret",
@@ -21901,17 +22245,17 @@
{
"name": "cipher-alg",
"default": null,
- "type": "676"
+ "type": "686"
}
],
"meta-type": "object"
},
{
- "name": "724",
+ "name": "734",
"members": [
{
"name": "state",
- "type": "688"
+ "type": "698"
},
{
"name": "new-secret",
@@ -21942,7 +22286,7 @@
"meta-type": "object"
},
{
- "name": "725",
+ "name": "735",
"members": [
{
"name": "left"
@@ -21986,7 +22330,7 @@
]
},
{
- "name": "726",
+ "name": "736",
"members": [
{
"name": "x"
@@ -22002,7 +22346,7 @@
]
},
{
- "name": "727",
+ "name": "737",
"members": [
{
"name": "base",
@@ -22016,12 +22360,12 @@
"meta-type": "object"
},
{
- "name": "728",
+ "name": "738",
"tag": "format",
"variants": [
{
"case": "luks",
- "type": "716"
+ "type": "726"
},
{
"case": "aes",
@@ -22031,18 +22375,18 @@
"members": [
{
"name": "format",
- "type": "665"
+ "type": "675"
}
],
"meta-type": "object"
},
{
- "name": "[729]",
- "element-type": "729",
+ "name": "[739]",
+ "element-type": "739",
"meta-type": "array"
},
{
- "name": "729",
+ "name": "739",
"members": [
{
"name": "name",
@@ -22054,18 +22398,18 @@
},
{
"name": "flags",
- "type": "[732]"
+ "type": "[742]"
}
],
"meta-type": "object"
},
{
- "name": "[730]",
- "element-type": "730",
+ "name": "[740]",
+ "element-type": "740",
"meta-type": "array"
},
{
- "name": "730",
+ "name": "740",
"members": [
{
"name": "filename",
@@ -22093,12 +22437,12 @@
"meta-type": "object"
},
{
- "name": "[731]",
- "element-type": "731",
+ "name": "[741]",
+ "element-type": "741",
"meta-type": "array"
},
{
- "name": "731",
+ "name": "741",
"members": [
{
"name": "active",
@@ -22122,12 +22466,12 @@
"meta-type": "object"
},
{
- "name": "[732]",
- "element-type": "732",
+ "name": "[742]",
+ "element-type": "742",
"meta-type": "array"
},
{
- "name": "732",
+ "name": "742",
"members": [
{
"name": "in-use"
@@ -22156,6 +22500,15 @@
{
"name": "device_add"
},
+ {
+ "name": "cxl-inject-correctable-error"
+ },
+ {
+ "name": "cxl-inject-uncorrectable-errors"
+ },
+ {
+ "name": "query-cryptodev"
+ },
{
"name": "x-query-virtio-queue-element"
},
@@ -23185,14 +23538,14 @@
"name": "pci-ipmi-kcs",
"parent": "pci-device"
},
- {
- "name": "intel-iommu-iommu-memory-region",
- "parent": "iommu-memory-region"
- },
{
"name": "xio3130-downstream",
"parent": "pcie-slot"
},
+ {
+ "name": "intel-iommu-iommu-memory-region",
+ "parent": "iommu-memory-region"
+ },
{
"name": "vhost-user-vsock-pci-non-transitional",
"parent": "vhost-user-vsock-pci-base"
@@ -23226,8 +23579,8 @@
"parent": "pci-device"
},
{
- "name": "pc-i440fx-6.0-machine",
- "parent": "generic-pc-machine"
+ "name": "vhost-vsock-pci-non-transitional",
+ "parent": "vhost-vsock-pci-base"
},
{
"name": "vhost-user-i2c-device",
@@ -23265,6 +23618,10 @@
"name": "pc-q35-7.2-machine",
"parent": "generic-pc-machine"
},
+ {
+ "name": "pc-i440fx-6.0-machine",
+ "parent": "generic-pc-machine"
+ },
{
"name": "qemu32-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -23274,17 +23631,13 @@
"parent": "x86_64-cpu"
},
{
- "name": "vhost-vsock-pci-non-transitional",
- "parent": "vhost-vsock-pci-base"
+ "name": "xen-gnttab",
+ "parent": "sys-bus-device"
},
{
"name": "usb-net",
"parent": "usb-device"
},
- {
- "name": "xen-gnttab",
- "parent": "sys-bus-device"
- },
{
"name": "CXL",
"parent": "PCIE"
@@ -23361,6 +23714,10 @@
"name": "pr-manager-helper",
"parent": "pr-manager"
},
+ {
+ "name": "virtio-scsi-device",
+ "parent": "virtio-scsi-common"
+ },
{
"name": "pc-i440fx-2.10-machine",
"parent": "generic-pc-machine"
@@ -23378,16 +23735,16 @@
"parent": "object"
},
{
- "name": "virtio-scsi-device",
- "parent": "virtio-scsi-common"
+ "name": "Haswell-IBRS-x86_64-cpu",
+ "parent": "x86_64-cpu"
},
{
"name": "pxb-pcie",
"parent": "pci-device"
},
{
- "name": "Haswell-IBRS-x86_64-cpu",
- "parent": "x86_64-cpu"
+ "name": "cpu-cluster",
+ "parent": "device"
},
{
"name": "vhost-user-i2c-pci",
@@ -23398,7 +23755,7 @@
"parent": "object"
},
{
- "name": "cpu-cluster",
+ "name": "xen-backend",
"parent": "device"
},
{
@@ -23461,6 +23818,10 @@
"name": "virtio-mouse-pci",
"parent": "virtio-mouse-pci-base-type"
},
+ {
+ "name": "vhost-vsock-device",
+ "parent": "vhost-vsock-common"
+ },
{
"name": "pc-q35-5.0-machine",
"parent": "generic-pc-machine"
@@ -23517,17 +23878,17 @@
"name": "virtio-9p-pci-non-transitional",
"parent": "virtio-9p-pci-base"
},
- {
- "name": "memory-backend-file",
- "parent": "memory-backend"
- },
{
"name": "Nehalem-v2-x86_64-cpu",
"parent": "x86_64-cpu"
},
{
- "name": "vhost-vsock-device",
- "parent": "vhost-vsock-common"
+ "name": "memory-backend-file",
+ "parent": "memory-backend"
+ },
+ {
+ "name": "xen-disk",
+ "parent": "xen-block"
},
{
"name": "isa-pcspk",
@@ -23561,6 +23922,10 @@
"name": "pc-q35-4.0.1-machine",
"parent": "generic-pc-machine"
},
+ {
+ "name": "IvyBridge-v2-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "virtio-blk-pci-non-transitional",
"parent": "virtio-blk-pci-base"
@@ -23573,10 +23938,6 @@
"name": "tcg-accel",
"parent": "accel"
},
- {
- "name": "IvyBridge-v2-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "isabus-bridge",
"parent": "sys-bus-device"
@@ -23701,14 +24062,14 @@
"name": "kvm-apic",
"parent": "apic-common"
},
- {
- "name": "isa-pit",
- "parent": "pit-common"
- },
{
"name": "kvm64-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "isa-pit",
+ "parent": "pit-common"
+ },
{
"name": "Broadwell-v4-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -23737,6 +24098,10 @@
"name": "Denverton-v2-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "xen-bridge",
+ "parent": "sys-bus-device"
+ },
{
"name": "vhost-user-gpu-pci",
"parent": "vhost-user-gpu-pci-base-type"
@@ -23777,14 +24142,14 @@
"name": "isa-serial",
"parent": "isa-device"
},
- {
- "name": "x-remote-object",
- "parent": "object"
- },
{
"name": "pc-q35-8.0-machine",
"parent": "generic-pc-machine"
},
+ {
+ "name": "x-remote-object",
+ "parent": "object"
+ },
{
"name": "core2duo-v1-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -23801,6 +24166,10 @@
"name": "cirrus-vga",
"parent": "pci-device"
},
+ {
+ "name": "main-loop",
+ "parent": "event-loop-base"
+ },
{
"name": "kvm32-v1-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -23834,8 +24203,8 @@
"parent": "x86_64-cpu"
},
{
- "name": "main-loop",
- "parent": "event-loop-base"
+ "name": "xen-cdrom",
+ "parent": "xen-block"
},
{
"name": "Cooperlake-v2-x86_64-cpu",
@@ -23889,6 +24258,10 @@
"name": "e1000-82545em",
"parent": "e1000-base"
},
+ {
+ "name": "vhost-user-scsi",
+ "parent": "vhost-scsi-common"
+ },
{
"name": "pxb-pcie-bus",
"parent": "PCIE"
@@ -23898,8 +24271,8 @@
"parent": "pci-device"
},
{
- "name": "vhost-user-scsi",
- "parent": "vhost-scsi-common"
+ "name": "igbvf",
+ "parent": "pci-device"
},
{
"name": "PIIX4_PM",
@@ -23941,6 +24314,10 @@
"name": "i440FX",
"parent": "pci-device"
},
+ {
+ "name": "xen-bus",
+ "parent": "bus"
+ },
{
"name": "Penryn-v1-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -24069,6 +24446,10 @@
"name": "Dhyana-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "Nehalem-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "pc-i440fx-5.1-machine",
"parent": "generic-pc-machine"
@@ -24097,10 +24478,6 @@
"name": "i82559b",
"parent": "pci-device"
},
- {
- "name": "Nehalem-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "usb-mouse",
"parent": "usb-hid"
@@ -24246,16 +24623,16 @@
"parent": "generic-pc-machine"
},
{
- "name": "vmcoreinfo",
- "parent": "device"
+ "name": "chardev-braille",
+ "parent": "chardev"
},
{
"name": "vhost-vdpa-device-pci-non-transitional",
"parent": "vhost-vdpa-device-pci-base"
},
{
- "name": "chardev-braille",
- "parent": "chardev"
+ "name": "vmcoreinfo",
+ "parent": "device"
},
{
"name": "tpci200",
@@ -24349,6 +24726,10 @@
"name": "nvme-bus",
"parent": "bus"
},
+ {
+ "name": "xen-sysbus",
+ "parent": "bus"
+ },
{
"name": "cs4231a",
"parent": "isa-device"
@@ -24793,6 +25174,10 @@
"name": "virtio-balloon-pci-transitional",
"parent": "virtio-balloon-pci-base"
},
+ {
+ "name": "igb",
+ "parent": "pci-device"
+ },
{
"name": "Haswell-v4-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -24849,6 +25234,10 @@
"name": "qemu32-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "xen-sysdev",
+ "parent": "sys-bus-device"
+ },
{
"name": "Haswell-noTSX-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -24905,10 +25294,6 @@
"name": "adlib",
"parent": "isa-device"
},
- {
- "name": "vhost-user-rng-pci",
- "parent": "vhost-user-rng-pci-base"
- },
{
"name": "vhost-user-gpio-pci",
"parent": "vhost-user-gpio-pci-base"
@@ -24938,25 +25323,33 @@
"parent": "pci-device"
},
{
- "name": "Cascadelake-Server-v3-x86_64-cpu",
+ "name": "Cooperlake-v1-x86_64-cpu",
"parent": "x86_64-cpu"
},
{
- "name": "Cooperlake-v1-x86_64-cpu",
+ "name": "Cascadelake-Server-v3-x86_64-cpu",
"parent": "x86_64-cpu"
},
{
- "name": "virtio-balloon-device",
- "parent": "virtio-device"
+ "name": "vhost-user-rng-pci",
+ "parent": "vhost-user-rng-pci-base"
},
{
- "name": "Skylake-Server-x86_64-cpu",
+ "name": "Nehalem-IBRS-x86_64-cpu",
"parent": "x86_64-cpu"
},
+ {
+ "name": "virtio-balloon-device",
+ "parent": "virtio-device"
+ },
{
"name": "cfi.pflash01",
"parent": "sys-bus-device"
},
+ {
+ "name": "Skylake-Server-x86_64-cpu",
+ "parent": "x86_64-cpu"
+ },
{
"name": "pc-q35-2.7-machine",
"parent": "generic-pc-machine"
@@ -24965,10 +25358,6 @@
"name": "isa-parallel",
"parent": "isa-device"
},
- {
- "name": "Nehalem-IBRS-x86_64-cpu",
- "parent": "x86_64-cpu"
- },
{
"name": "pentium2-v1-x86_64-cpu",
"parent": "x86_64-cpu"
@@ -32126,18 +32515,18 @@
},
{
"hotpluggable-cpus": true,
- "name": "pc-q35-7.2",
+ "name": "pc-i440fx-6.0",
"numa-mem-supported": false,
"default-cpu-type": "qemu64-x86_64-cpu",
"acpi": true,
- "cpu-max": 288,
+ "cpu-max": 255,
"deprecated": false,
"default-ram-id": "pc.ram"
},
{
"hotpluggable-cpus": true,
- "name": "pc-q35-4.0",
- "numa-mem-supported": true,
+ "name": "pc-q35-7.2",
+ "numa-mem-supported": false,
"default-cpu-type": "qemu64-x86_64-cpu",
"acpi": true,
"cpu-max": 288,
@@ -32146,11 +32535,11 @@
},
{
"hotpluggable-cpus": true,
- "name": "pc-i440fx-6.0",
- "numa-mem-supported": false,
+ "name": "pc-q35-4.0",
+ "numa-mem-supported": true,
"default-cpu-type": "qemu64-x86_64-cpu",
"acpi": true,
- "cpu-max": 255,
+ "cpu-max": 288,
"deprecated": false,
"default-ram-id": "pc.ram"
},
@@ -40910,18 +41299,18 @@
},
{
"hotpluggable-cpus": true,
- "name": "pc-q35-7.2",
+ "name": "pc-i440fx-6.0",
"numa-mem-supported": false,
"default-cpu-type": "qemu64-x86_64-cpu",
"acpi": true,
- "cpu-max": 288,
+ "cpu-max": 255,
"deprecated": false,
"default-ram-id": "pc.ram"
},
{
"hotpluggable-cpus": true,
- "name": "pc-q35-4.0",
- "numa-mem-supported": true,
+ "name": "pc-q35-7.2",
+ "numa-mem-supported": false,
"default-cpu-type": "qemu64-x86_64-cpu",
"acpi": true,
"cpu-max": 288,
@@ -40930,11 +41319,11 @@
},
{
"hotpluggable-cpus": true,
- "name": "pc-i440fx-6.0",
- "numa-mem-supported": false,
+ "name": "pc-q35-4.0",
+ "numa-mem-supported": true,
"default-cpu-type": "qemu64-x86_64-cpu",
"acpi": true,
- "cpu-max": 255,
+ "cpu-max": 288,
"deprecated": false,
"default-ram-id": "pc.ram"
},
diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
index 73924e1163..28e2c6427c 100644
--- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml
@@ -206,9 +206,9 @@
<flag name='virtio-gpu.blob'/>
<flag name='rbd-encryption-layering'/>
<flag name='rbd-encryption-luks-any'/>
- <version>7002050</version>
+ <version>7002093</version>
<microcodeVersion>43100244</microcodeVersion>
- <package>v7.2.0-2146-g2946e1af27</package>
+ <package>v8.0.0-rc3-28-g9d177b7f87</package>
<arch>x86_64</arch>
<hostCPU type='kvm' model='base' migratability='yes'>
<property name='vmx-entry-load-rtit-ctl' type='boolean' value='false'/>
@@ -1637,9 +1637,9 @@
<machine type='kvm' name='pc-q35-2.8' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='kvm' name='pc-i440fx-2.10' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='kvm' name='pc-q35-3.0' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
+ <machine type='kvm' name='pc-i440fx-6.0' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='kvm' name='pc-q35-7.2' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='kvm' name='pc-q35-4.0' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
- <machine type='kvm' name='pc-i440fx-6.0' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='kvm' name='microvm' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='microvm.ram' acpi='yes'/>
<machine type='kvm' name='pc-i440fx-2.3' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='kvm' name='pc-i440fx-4.0' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
@@ -3432,9 +3432,9 @@
<machine type='tcg' name='pc-q35-2.8' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='tcg' name='pc-i440fx-2.10' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='tcg' name='pc-q35-3.0' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
+ <machine type='tcg' name='pc-i440fx-6.0' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='tcg' name='pc-q35-7.2' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='tcg' name='pc-q35-4.0' hotplugCpus='yes' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
- <machine type='tcg' name='pc-i440fx-6.0' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='tcg' name='microvm' maxCpus='288' defaultCPU='qemu64-x86_64-cpu' defaultRAMid='microvm.ram' acpi='yes'/>
<machine type='tcg' name='pc-i440fx-2.3' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
<machine type='tcg' name='pc-i440fx-4.0' hotplugCpus='yes' maxCpus='255' defaultCPU='qemu64-x86_64-cpu' numaMemSupported='yes' defaultRAMid='pc.ram' acpi='yes'/>
--
2.39.2
2
1
[PATCH 0/3] virt-host-validate: Detect SMMU presence on ARMs by parsing IORT table
by Michal Privoznik 12 Apr '23
by Michal Privoznik 12 Apr '23
12 Apr '23
*** BLURB HERE ***
Michal PrÃvoznÃk (3):
util: Introduce virAcpi module
tests: Introduce viracpitest
virt-host-validate: Detect SMMU presence on ARMs by parsing IORT table
build-aux/syntax-check.mk | 2 +-
po/POTFILES | 1 +
src/libvirt_private.syms | 7 +
src/util/meson.build | 1 +
src/util/viracpi.c | 225 ++++++++++++++++++++++++++++
src/util/viracpi.h | 23 +++
src/util/viracpipriv.h | 59 ++++++++
tests/meson.build | 1 +
tests/viracpidata/IORT_ampere | Bin 0 -> 2304 bytes
tests/viracpidata/IORT_empty | Bin 0 -> 65 bytes
tests/viracpidata/IORT_gigabyte | Bin 0 -> 10100 bytes
tests/viracpidata/IORT_qualcom | Bin 0 -> 3560 bytes
tests/viracpidata/IORT_virt_aarch64 | Bin 0 -> 128 bytes
tests/viracpitest.c | 135 +++++++++++++++++
tools/virt-host-validate-common.c | 18 ++-
15 files changed, 468 insertions(+), 4 deletions(-)
create mode 100644 src/util/viracpi.c
create mode 100644 src/util/viracpi.h
create mode 100644 src/util/viracpipriv.h
create mode 100644 tests/viracpidata/IORT_ampere
create mode 100644 tests/viracpidata/IORT_empty
create mode 100644 tests/viracpidata/IORT_gigabyte
create mode 100644 tests/viracpidata/IORT_qualcom
create mode 100644 tests/viracpidata/IORT_virt_aarch64
create mode 100644 tests/viracpitest.c
--
2.39.2
4
15
[libvirt PATCH v4] Conf: Move validation of virDomainGraphicsListenDef out of Parser
by K Shiva 12 Apr '23
by K Shiva 12 Apr '23
12 Apr '23
From: K Shiva Kiran <shiva_kr(a)riseup.net>
In an effort to separate the validation steps from the Parse stage,
a few validation checks of virDomainGraphicsListenDef have been moved from
virDomainGraphicsListenDefParseXML() in domain_conf.c to
virDomainGraphicsDefListensValidate() in domain_validate.c
Signed-off-by: K Shiva <shiva_kr(a)riseup.net>
---
This is a v4 of:
https://listman.redhat.com/archives/libvir-list/2023-April/239286.html
This commit has been squashed with v3.
diff to v3:
- Dropped virDomainGraphicsListenDefValidate() as per suggestion
- Moved the above's code to virDomainGraphicsDefListensValidate()
- Moved an existing if() condition in virDomainGraphicsDefListensValidate()
into the switch() statement of the freshly moved code
src/conf/domain_conf.c | 30 +-----------------------------
src/conf/domain_validate.c | 37 +++++++++++++++++++++++++++++++------
2 files changed, 32 insertions(+), 35 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 70e4d52ee6..8df751cc46 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -10986,7 +10986,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
/**
* virDomainGraphicsListenDefParseXML:
* @def: listen def pointer to be filled
- * @graphics: graphics def pointer
* @node: xml node of <listen/> element
* @parent: xml node of <graphics/> element
* @flags: bit-wise or of VIR_DOMAIN_DEF_PARSE_*
@@ -10998,13 +10997,11 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
*/
static int
virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
- virDomainGraphicsDef *graphics,
xmlNodePtr node,
xmlNodePtr parent,
unsigned int flags)
{
int ret = -1;
- const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
g_autofree char *address = virXMLPropString(node, "address");
g_autofree char *network = virXMLPropString(node, "network");
g_autofree char *socketPath = virXMLPropString(node, "socket");
@@ -11021,31 +11018,6 @@ virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
VIR_XML_PROP_REQUIRED, &def->type) < 0)
goto error;
- switch (def->type) {
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'socket' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'none' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
- break;
- }
-
if (def->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) {
if (address && addressCompat && STRNEQ(address, addressCompat)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -11148,7 +11120,7 @@ virDomainGraphicsListensParseXML(virDomainGraphicsDef *def,
def->listens = g_new0(virDomainGraphicsListenDef, nListens);
for (i = 0; i < nListens; i++) {
- if (virDomainGraphicsListenDefParseXML(&def->listens[i], def,
+ if (virDomainGraphicsListenDefParseXML(&def->listens[i],
listenNodes[i],
i == 0 ? node : NULL,
flags) < 0)
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index 9265fef4f9..988f0854a5 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2631,14 +2631,39 @@ static int
virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
{
size_t i;
+ const char *graphicsType = virDomainGraphicsTypeToString(def->type);
for (i = 0; i < def->nListens; i++) {
- if (def->listens[i].type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK &&
- !def->listens[i].network) {
- virReportError(VIR_ERR_XML_ERROR, "%s",
- _("'network' attribute is required for "
- "listen type 'network'"));
- return -1;
+ switch (def->listens[i].type) {
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
+ if (!def->listens[i].network) {
+ virReportError(VIR_ERR_XML_ERROR, "%s",
+ _("'network' attribute is required for "
+ "listen type 'network'"));
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
+ if (def->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ def->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'socket' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
+ if (def->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
+ def->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'none' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
+ break;
}
}
--
2.40.0
2
1
[libvirt PATCH 0/2] conf: Fix migration in some firmware autoselection scenarios
by Andrea Bolognani 12 Apr '23
by Andrea Bolognani 12 Apr '23
12 Apr '23
See commit 2/2 for details.
Andrea Bolognani (2):
tests: Tweak input file
conf: Fix migration in some firmware autoselection scenarios
src/conf/domain_conf.c | 39 ++++++++++++++++++-
...are-manual-efi-features.x86_64-latest.args | 35 +++++++++++++++++
.../firmware-manual-efi-features.xml | 2 +-
tests/qemuxml2argvtest.c | 6 ++-
...ware-manual-efi-features.x86_64-latest.xml | 36 +++++++++++++++++
tests/qemuxml2xmltest.c | 1 +
6 files changed, 115 insertions(+), 4 deletions(-)
create mode 100644 tests/qemuxml2argvdata/firmware-manual-efi-features.x86_64-latest.args
create mode 100644 tests/qemuxml2xmloutdata/firmware-manual-efi-features.x86_64-latest.xml
--
2.39.2
2
7
During qemu driver shutdown, objects are freed in qemuStateCleanup that
could still be used by active worker threads, resulting in crashes. E.g.
a worker thread could be processing a monitor EOF event after the
security manager is already disposed
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007fd9a9a1e1fe in virSecurityManagerMoveImageMetadata (mgr=0x7fd948012160, pid=-1, src=src@entry=0x7fd98c072c90, dst=dst@entry=0x0)
at ../../src/security/security_manager.c:468
#1 0x00007fd9646ff0f0 in qemuSecurityMoveImageMetadata (driver=driver@entry=0x7fd948043830, vm=vm@entry=0x7fd98c066db0, src=src@entry=0x7fd98c072c90,
dst=dst@entry=0x0) at ../../src/qemu/qemu_security.c:182
#2 0x00007fd96462c7b0 in qemuBlockRemoveImageMetadata (driver=driver@entry=0x7fd948043830, vm=vm@entry=0x7fd98c066db0, diskTarget=0x7fd98c072530 "vda",
src=<optimized out>) at ../../src/qemu/qemu_block.c:2628
#3 0x00007fd9646929d6 in qemuProcessStop (driver=driver@entry=0x7fd948043830, vm=vm@entry=0x7fd98c066db0, reason=reason@entry=VIR_DOMAIN_SHUTOFF_SHUTDOWN,
asyncJob=asyncJob@entry=QEMU_ASYNC_JOB_NONE, flags=<optimized out>) at ../../src/qemu/qemu_process.c:7585
#4 0x00007fd9646fc842 in processMonitorEOFEvent (vm=0x7fd98c066db0, driver=0x7fd948043830) at ../../src/qemu/qemu_driver.c:4794
#5 qemuProcessEventHandler (data=0x561a93febb60, opaque=0x7fd948043830) at ../../src/qemu/qemu_driver.c:4900
#6 0x00007fd9a9971a31 in virThreadPoolWorker (opaque=opaque@entry=0x561a93fb58e0) at ../../src/util/virthreadpool.c:163
(gdb) p mgr->drv
$2 = (virSecurityDriverPtr) 0x0
Prior to commit 7cf76d4e3ab, the worker thread pool was freed before
disposing any driver objects. Let's return to that pattern, but leave
the other changes made by 7cf76d4e3ab.
Signed-off-by: Jim Fehlig <jfehlig(a)suse.com>
---
src/qemu/qemu_driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index b4fb7ec1df..28e470e4a2 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -1062,6 +1062,7 @@ qemuStateCleanup(void)
if (!qemu_driver)
return -1;
+ virThreadPoolFree(qemu_driver->workerPool);
virObjectUnref(qemu_driver->migrationErrors);
virLockManagerPluginUnref(qemu_driver->lockManager);
virSysinfoDefFree(qemu_driver->hostsysinfo);
@@ -1078,7 +1079,6 @@ qemuStateCleanup(void)
ebtablesContextFree(qemu_driver->ebtables);
VIR_FREE(qemu_driver->qemuImgBinary);
virObjectUnref(qemu_driver->domains);
- virThreadPoolFree(qemu_driver->workerPool);
if (qemu_driver->lockFD != -1)
virPidFileRelease(qemu_driver->config->stateDir, "driver", qemu_driver->lockFD);
--
2.40.0
2
1
Re: [PATCH] qemu-options.hx: Update descriptions of memory options for NUMA node
by Yohei Kojima 11 Apr '23
by Yohei Kojima 11 Apr '23
11 Apr '23
ping
This patch updates an outdated description in qemu-options.hx .
The patch reflects the changes in qemu behavior already described in
another documentation, and it also changes paragraph structure for
further readability.
The original patch is:
https://patchew.org/QEMU/TYZPR06MB5418D6B0175A49E8E76988439D8E9@TYZPR06MB54…
On 2023/03/30 19:09, Yohei Kojima wrote:
> This commit adds the following description:
> 1. `memdev` option is recommended over `mem` option (see [1,2])
> 2. users must specify memory for all NUMA nodes (see [2])
>
> This commit also separates descriptions for `mem` and `memdev` into two
> paragraphs. The old doc describes legacy `mem` option first, and it was
> a bit confusing.
>
> Related documantations:
> [1] https://wiki.qemu.org/ChangeLog/5.1#Incompatible_changes
> [2] https://www.qemu.org/docs/master/about/removed-features.html
>
> Signed-off-by: Yohei Kojima <y-koj(a)outlook.jp>
> ---
> qemu-options.hx | 25 ++++++++++++++++---------
> 1 file changed, 16 insertions(+), 9 deletions(-)
>
> diff --git a/qemu-options.hx b/qemu-options.hx
> index 59bdf67a2c..174f0d0c2d 100644
> --- a/qemu-options.hx
> +++ b/qemu-options.hx
> @@ -405,15 +405,22 @@ SRST
> -numa node,nodeid=0 -numa node,nodeid=1 \
> -numa cpu,node-id=0,socket-id=0 -numa cpu,node-id=1,socket-id=1
>
> - Legacy '\ ``mem``\ ' assigns a given RAM amount to a node (not supported
> - for 5.1 and newer machine types). '\ ``memdev``\ ' assigns RAM from
> - a given memory backend device to a node. If '\ ``mem``\ ' and
> - '\ ``memdev``\ ' are omitted in all nodes, RAM is split equally between them.
> -
> -
> - '\ ``mem``\ ' and '\ ``memdev``\ ' are mutually exclusive.
> - Furthermore, if one node uses '\ ``memdev``\ ', all of them have to
> - use it.
> + '\ ``memdev``\ ' option assigns RAM from a given memory backend
> + device to a node. It is recommended to use '\ ``memdev``\ ' option
> + over legacy '\ ``mem``\ ' option. This is because '\ ``memdev``\ '
> + option provides better performance and more control over the
> + backend's RAM (e.g. '\ ``prealloc``\ ' parameter of
> + '\ ``-memory-backend-ram``\ ' allows memory preallocation).
> +
> + For compatibility reasons, legacy '\ ``mem``\ ' option is
> + supported in 5.0 and older machine types. Note that '\ ``mem``\ '
> + and '\ ``memdev``\ ' are mutually exclusive. If one node uses
> + '\ ``memdev``\ ', the rest nodes have to use '\ ``memdev``\ '
> + option, and vice versa.
> +
> + Users must specify memory for all NUMA nodes by '\ ``memdev``\ '
> + (or legacy '\ ``mem``\ ' if available). In QEMU 5.2, the support
> + for '\ ``-numa node``\ ' without memory specified was removed.
>
> '\ ``initiator``\ ' is an additional option that points to an
> initiator NUMA node that has best performance (the lowest latency or
1
0
11 Apr '23
From: Marc-André Lureau <marcandre.lureau(a)redhat.com>
Hi,
libvirt fails to compile on msys2/win32. Here is a few patches that solve it,
but the way python scripts are being handled in general is a bit odd, so this is
RFC. (fwiw, a lot of tests fail though, I can send the log if anyone is
interested - or attach it to a gitlab issue)
Fixes:
https://gitlab.com/libvirt/libvirt/-/issues/453
Marc-André Lureau (3):
meson: don't look for unix paths on win32
meson: drop explicit python interpreter
rpc/ssh: ssh_userauth_agent() is not supported on win32
docs/manpages/meson.build | 4 ++--
docs/meson.build | 6 ++----
meson.build | 14 +++++++++-----
src/admin/meson.build | 4 ++--
src/esx/meson.build | 4 ++--
src/hyperv/meson.build | 2 +-
src/meson.build | 8 ++++----
src/rpc/virnetlibsshsession.c | 14 ++++++++++++--
src/util/meson.build | 4 ++--
9 files changed, 36 insertions(+), 24 deletions(-)
--
2.39.2
3
9
11 Apr '23
This series applies on top of 'part 4' fetch everything from my repo:
git fetch https://gitlab.com/pipo.sk/libvirt.git aarch-send
In this part tests for the 'aarch64' platform are converted to use real
capabilities.
Peter Krempa (21):
virDomainPCIAddressSetExtensionAlloc: Remove return value
qemuxml2argvdata: Do not symlink output files for aarch64 gic tests
qemuxml2argvtest: Use real capabilities in tests for picking the
aarch64 GIC version
qemuxml2argvtest: Convert DO_TEST_GIC to use real latest capabilities
qemuxml2argvtest: Convert the rest of GIC tests to latest capabilities
qemuxml2argvtest: Add real-caps versions of 'aarch64-virt-virtio'
qemuxml2argvtest: Drop "aarch64-virt-2.6-virtio-pci-default" case
qemuxml2argv: Test default aarch64 cofig without PCIe support
qemuxml2argvtest: Modernize 'balloon-mmio-deflate'
qemuxml2argvtest: Don't symlink output files for 'mach-virt-' cases
qemuxml2argvtest: Modernize all 'mach-virt-' aarch64 test cases
qemuxml2argvtest: Update 'aarch64-virtio-pci-manual-addresses' case
qemuxml2*test: Drop fake-caps invocation of
'aarch64-virtio-pci-manual-addresses'
qemuxml2(argv|xml)test: Modernize testing of USB controllers on
aarch64
qemuxml2argvtest: Modernize the rest of 'aarch64' cases
qemuxml2xmlout: Do not symlink output files for 'aarch64-gic' cases
qemuxml2xmltest: Modernize 'aarch64-gic*' test cases
qemuxml2xmloutdata: Don't symlink output data for 'mach-virt*' cases
qemuxml2xmltest: Modernize 'mach-virt*' cases
qemuxml2xmltest: Convert rest of 'aarch64' cases to real capabilities
testutilsqemu: Drop fake capability testing infrastructure for
'aarch64'
src/conf/domain_addr.c | 13 +-
...h64-aavmf-virtio-mmio.aarch64-latest.args} | 20 +-
...rch64-cpu-passthrough.aarch64-latest.args} | 26 +--
.../aarch64-gic-default-both.args | 33 ++-
.../aarch64-gic-default-v2.args | 33 ++-
.../aarch64-gic-default-v3.args | 33 ++-
...=> aarch64-gic-default.aarch64-4.2.0.args} | 14 +-
...> aarch64-gic-default.aarch64-latest.args} | 17 +-
.../qemuxml2argvdata/aarch64-gic-default.args | 1 -
tests/qemuxml2argvdata/aarch64-gic-host.args | 6 +-
...=> aarch64-gic-invalid.aarch64-latest.err} | 0
.../aarch64-gic-none-both.args | 33 ++-
.../aarch64-gic-none-tcg.args | 6 +-
.../qemuxml2argvdata/aarch64-gic-none-v2.args | 33 ++-
.../qemuxml2argvdata/aarch64-gic-none-v3.args | 33 ++-
...gs => aarch64-gic-none.aarch64-4.2.0.args} | 8 +-
.../aarch64-gic-none.aarch64-latest.args | 32 +++
tests/qemuxml2argvdata/aarch64-gic-none.args | 1 -
...> aarch64-gic-not-virt.aarch64-latest.err} | 0
tests/qemuxml2argvdata/aarch64-gic-v2.args | 6 +-
tests/qemuxml2argvdata/aarch64-gic-v3.args | 6 +-
.../aarch64-pci-serial.aarch64-latest.args | 38 +++
...arch64-tpm-wrong-model.aarch64-latest.err} | 0
...arch64-traditional-pci.aarch64-latest.args | 37 +++
.../aarch64-traditional-pci.args | 34 ---
.../aarch64-usb-controller-qemu-xhci.args | 30 ---
.../aarch64-usb-controller-qemu-xhci.xml | 16 --
...arch64-usb-controller.aarch64-latest.args} | 11 +-
...ec-xhci.xml => aarch64-usb-controller.xml} | 6 +
...aarch64-video-default.aarch64-latest.args} | 13 +-
...4-video-virtio-gpu-pci.aarch64-latest.args | 37 +++
.../aarch64-video-virtio-gpu-pci.args | 35 ---
.../aarch64-virt-2.6-virtio-pci-default.xml | 46 ----
...ch64-virt-default-nic.aarch64-latest.args} | 10 +-
...ch64-virt-virtio-MMIO.aarch64.latest.args} | 20 +-
...=> aarch64-virt-virtio.aarch64-4.2.0.args} | 22 +-
.../aarch64-virt-virtio.aarch64-latest.args | 55 +++++
...o-pci-manual-addresses.aarch64-latest.args | 49 ++++
.../aarch64-virtio-pci-manual-addresses.xml | 4 +-
.../balloon-mmio-deflate.aarch64-latest.args | 37 +++
...h-virt-console-native.aarch64-latest.args} | 7 +-
.../mach-virt-console-native.args | 1 -
...ch-virt-console-virtio.aarch64-latest.args | 37 +++
...serial+console-native.aarch64-latest.args} | 12 +-
.../mach-virt-serial+console-native.args | 1 -
...ch-virt-serial-compat.aarch64-latest.args} | 12 +-
.../mach-virt-serial-compat.args | 1 -
...-serial-invalid-machine.x86_64-latest.err} | 0
...ch-virt-serial-native.aarch64-latest.args} | 12 +-
.../mach-virt-serial-pci.aarch64-latest.args | 37 +++
.../mach-virt-serial-usb.aarch64-latest.args | 37 +++
tests/qemuxml2argvtest.c | 217 +++++++-----------
...ch64-aavmf-virtio-mmio.aarch64-latest.xml} | 1 +
...arch64-gic-default-both.aarch64-latest.xml | 26 +++
.../aarch64-gic-default-both.xml | 1 -
.../aarch64-gic-default-v2.aarch64-latest.xml | 26 +++
.../aarch64-gic-default-v2.xml | 1 -
.../aarch64-gic-default-v3.aarch64-latest.xml | 26 +++
.../aarch64-gic-default-v3.xml | 1 -
.../aarch64-gic-default.aarch64-latest.xml | 26 +++
.../aarch64-gic-default.xml | 1 -
.../aarch64-gic-host.aarch64-latest.xml | 26 +++
tests/qemuxml2xmloutdata/aarch64-gic-host.xml | 1 -
.../aarch64-gic-none-both.aarch64-latest.xml | 26 +++
.../aarch64-gic-none-both.xml | 1 -
...> aarch64-gic-none-tcg.aarch64-latest.xml} | 1 +
.../aarch64-gic-none-v2.aarch64-latest.xml | 26 +++
.../aarch64-gic-none-v2.xml | 1 -
.../aarch64-gic-none-v3.aarch64-latest.xml | 26 +++
.../aarch64-gic-none-v3.xml | 1 -
.../aarch64-gic-none.aarch64-latest.xml | 26 +++
tests/qemuxml2xmloutdata/aarch64-gic-none.xml | 1 -
.../aarch64-gic-v2.aarch64-latest.xml | 26 +++
tests/qemuxml2xmloutdata/aarch64-gic-v2.xml | 1 -
.../aarch64-gic-v3.aarch64-latest.xml | 26 +++
tests/qemuxml2xmloutdata/aarch64-gic-v3.xml | 1 -
... => aarch64-pci-serial.aarch64-latest.xml} | 19 +-
...arch64-traditional-pci.aarch64-latest.xml} | 3 +
.../aarch64-usb-controller.aarch64-latest.xml | 36 +++
... aarch64-video-default.aarch64-latest.xml} | 22 +-
...4-video-virtio-gpu-pci.aarch64-latest.xml} | 4 +-
...o-pci-manual-addresses.aarch64-latest.xml} | 24 +-
...ch-virt-console-native.aarch64-latest.xml} | 4 +
.../mach-virt-console-native.xml | 1 -
...ach-virt-console-virtio.aarch64-latest.xml | 44 ++++
...-serial+console-native.aarch64-latest.xml} | 14 +-
.../mach-virt-serial+console-native.xml | 1 -
...mach-virt-serial-compat.aarch64-latest.xml | 36 +++
...mach-virt-serial-native.aarch64-latest.xml | 36 +++
.../mach-virt-serial-native.xml | 1 -
...> mach-virt-serial-pci.aarch64-latest.xml} | 19 +-
...> mach-virt-serial-usb.aarch64-latest.xml} | 3 +
tests/qemuxml2xmltest.c | 153 ++++++------
tests/testutilsqemu.c | 6 -
94 files changed, 1396 insertions(+), 557 deletions(-)
rename tests/qemuxml2argvdata/{aarch64-aavmf-virtio-mmio.args => aarch64-aavmf-virtio-mmio.aarch64-latest.args} (57%)
rename tests/qemuxml2argvdata/{aarch64-virtio-pci-manual-addresses.args => aarch64-cpu-passthrough.aarch64-latest.args} (52%)
mode change 120000 => 100644 tests/qemuxml2argvdata/aarch64-gic-default-both.args
mode change 120000 => 100644 tests/qemuxml2argvdata/aarch64-gic-default-v2.args
mode change 120000 => 100644 tests/qemuxml2argvdata/aarch64-gic-default-v3.args
rename tests/qemuxml2argvdata/{balloon-mmio-deflate.args => aarch64-gic-default.aarch64-4.2.0.args} (71%)
rename tests/qemuxml2argvdata/{aarch64-pci-serial.args => aarch64-gic-default.aarch64-latest.args} (55%)
delete mode 120000 tests/qemuxml2argvdata/aarch64-gic-default.args
rename tests/qemuxml2argvdata/{aarch64-gic-invalid.err => aarch64-gic-invalid.aarch64-latest.err} (100%)
mode change 120000 => 100644 tests/qemuxml2argvdata/aarch64-gic-none-both.args
mode change 120000 => 100644 tests/qemuxml2argvdata/aarch64-gic-none-v2.args
mode change 120000 => 100644 tests/qemuxml2argvdata/aarch64-gic-none-v3.args
rename tests/qemuxml2argvdata/{aarch64-cpu-passthrough.args => aarch64-gic-none.aarch64-4.2.0.args} (67%)
create mode 100644 tests/qemuxml2argvdata/aarch64-gic-none.aarch64-latest.args
delete mode 120000 tests/qemuxml2argvdata/aarch64-gic-none.args
rename tests/qemuxml2argvdata/{aarch64-gic-not-virt.err => aarch64-gic-not-virt.aarch64-latest.err} (100%)
create mode 100644 tests/qemuxml2argvdata/aarch64-pci-serial.aarch64-latest.args
rename tests/qemuxml2argvdata/{aarch64-tpm-wrong-model.err => aarch64-tpm-wrong-model.aarch64-latest.err} (100%)
create mode 100644 tests/qemuxml2argvdata/aarch64-traditional-pci.aarch64-latest.args
delete mode 100644 tests/qemuxml2argvdata/aarch64-traditional-pci.args
delete mode 100644 tests/qemuxml2argvdata/aarch64-usb-controller-qemu-xhci.args
delete mode 100644 tests/qemuxml2argvdata/aarch64-usb-controller-qemu-xhci.xml
rename tests/qemuxml2argvdata/{aarch64-usb-controller-nec-xhci.args => aarch64-usb-controller.aarch64-latest.args} (55%)
rename tests/qemuxml2argvdata/{aarch64-usb-controller-nec-xhci.xml => aarch64-usb-controller.xml} (61%)
rename tests/qemuxml2argvdata/{aarch64-video-default.args => aarch64-video-default.aarch64-latest.args} (54%)
create mode 100644 tests/qemuxml2argvdata/aarch64-video-virtio-gpu-pci.aarch64-latest.args
delete mode 100644 tests/qemuxml2argvdata/aarch64-video-virtio-gpu-pci.args
delete mode 100644 tests/qemuxml2argvdata/aarch64-virt-2.6-virtio-pci-default.xml
rename tests/qemuxml2argvdata/{aarch64-virt-default-nic.args => aarch64-virt-default-nic.aarch64-latest.args} (56%)
rename tests/qemuxml2argvdata/{aarch64-virt-virtio.args => aarch64-virt-virtio-MMIO.aarch64.latest.args} (58%)
rename tests/qemuxml2argvdata/{aarch64-virt-2.6-virtio-pci-default.args => aarch64-virt-virtio.aarch64-4.2.0.args} (63%)
create mode 100644 tests/qemuxml2argvdata/aarch64-virt-virtio.aarch64-latest.args
create mode 100644 tests/qemuxml2argvdata/aarch64-virtio-pci-manual-addresses.aarch64-latest.args
create mode 100644 tests/qemuxml2argvdata/balloon-mmio-deflate.aarch64-latest.args
rename tests/qemuxml2argvdata/{mach-virt-serial-native.args => mach-virt-console-native.aarch64-latest.args} (67%)
delete mode 120000 tests/qemuxml2argvdata/mach-virt-console-native.args
create mode 100644 tests/qemuxml2argvdata/mach-virt-console-virtio.aarch64-latest.args
rename tests/qemuxml2argvdata/{mach-virt-serial-pci.args => mach-virt-serial+console-native.aarch64-latest.args} (65%)
delete mode 120000 tests/qemuxml2argvdata/mach-virt-serial+console-native.args
rename tests/qemuxml2argvdata/{mach-virt-serial-usb.args => mach-virt-serial-compat.aarch64-latest.args} (64%)
delete mode 120000 tests/qemuxml2argvdata/mach-virt-serial-compat.args
rename tests/qemuxml2argvdata/{mach-virt-serial-invalid-machine.err => mach-virt-serial-invalid-machine.x86_64-latest.err} (100%)
rename tests/qemuxml2argvdata/{mach-virt-console-virtio.args => mach-virt-serial-native.aarch64-latest.args} (62%)
create mode 100644 tests/qemuxml2argvdata/mach-virt-serial-pci.aarch64-latest.args
create mode 100644 tests/qemuxml2argvdata/mach-virt-serial-usb.aarch64-latest.args
rename tests/qemuxml2xmloutdata/{aarch64-aavmf-virtio-mmio.xml => aarch64-aavmf-virtio-mmio.aarch64-latest.xml} (96%)
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-default-both.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-default-both.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-default-v2.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-default-v2.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-default-v3.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-default-v3.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-default.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-default.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-host.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-host.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-none-both.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-none-both.xml
rename tests/qemuxml2xmloutdata/{aarch64-gic-none-tcg.xml => aarch64-gic-none-tcg.aarch64-latest.xml} (93%)
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-none-v2.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-none-v2.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-none-v3.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-none-v3.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-none.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-none.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-v2.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-v2.xml
create mode 100644 tests/qemuxml2xmloutdata/aarch64-gic-v3.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/aarch64-gic-v3.xml
rename tests/qemuxml2xmloutdata/{aarch64-pci-serial.xml => aarch64-pci-serial.aarch64-latest.xml} (70%)
rename tests/qemuxml2xmloutdata/{aarch64-traditional-pci.xml => aarch64-traditional-pci.aarch64-latest.xml} (93%)
create mode 100644 tests/qemuxml2xmloutdata/aarch64-usb-controller.aarch64-latest.xml
rename tests/qemuxml2xmloutdata/{aarch64-video-default.xml => aarch64-video-default.aarch64-latest.xml} (67%)
rename tests/qemuxml2xmloutdata/{aarch64-video-virtio-gpu-pci.xml => aarch64-video-virtio-gpu-pci.aarch64-latest.xml} (95%)
rename tests/qemuxml2xmloutdata/{aarch64-virtio-pci-manual-addresses.xml => aarch64-virtio-pci-manual-addresses.aarch64-latest.xml} (68%)
rename tests/qemuxml2xmloutdata/{mach-virt-serial-compat.xml => mach-virt-console-native.aarch64-latest.xml} (84%)
delete mode 120000 tests/qemuxml2xmloutdata/mach-virt-console-native.xml
create mode 100644 tests/qemuxml2xmloutdata/mach-virt-console-virtio.aarch64-latest.xml
rename tests/qemuxml2xmloutdata/{mach-virt-console-virtio.xml => mach-virt-serial+console-native.aarch64-latest.xml} (68%)
delete mode 120000 tests/qemuxml2xmloutdata/mach-virt-serial+console-native.xml
create mode 100644 tests/qemuxml2xmloutdata/mach-virt-serial-compat.aarch64-latest.xml
create mode 100644 tests/qemuxml2xmloutdata/mach-virt-serial-native.aarch64-latest.xml
delete mode 120000 tests/qemuxml2xmloutdata/mach-virt-serial-native.xml
rename tests/qemuxml2xmloutdata/{mach-virt-serial-pci.xml => mach-virt-serial-pci.aarch64-latest.xml} (71%)
rename tests/qemuxml2xmloutdata/{mach-virt-serial-usb.xml => mach-virt-serial-usb.aarch64-latest.xml} (93%)
--
2.39.2
2
22
[PATCHv2] storage_file_probe: change maximum len value in vmdk4GetBackingStore
by Anastasia Belova 11 Apr '23
by Anastasia Belova 11 Apr '23
11 Apr '23
desc length should be always less than VIR_STORAGE_MAX_HEADER.
If len = VIR_STORAGE_MAX_HEADER, desc may be out of bounds.
Fixes: 348b4e254b ("storage: always probe type with buffer")
Signed-off-by: Anastasia Belova <abelova(a)astralinux.ru>
---
v2: change Fixes: line
src/storage_file/storage_file_probe.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/storage_file/storage_file_probe.c b/src/storage_file/storage_file_probe.c
index 9465af5d96..0dcc9c2c54 100644
--- a/src/storage_file/storage_file_probe.c
+++ b/src/storage_file/storage_file_probe.c
@@ -586,8 +586,8 @@ vmdk4GetBackingStore(char **res,
return BACKING_STORE_INVALID;
len = buf_size - 0x200;
- if (len > VIR_STORAGE_MAX_HEADER)
- len = VIR_STORAGE_MAX_HEADER;
+ if (len >= VIR_STORAGE_MAX_HEADER)
+ len = VIR_STORAGE_MAX_HEADER - 1;
memcpy(desc, buf + 0x200, len);
desc[len] = '\0';
start = strstr(desc, prefix);
--
2.30.2
2
1
[libvirt PATCH v3] Conf: Move validation of virDomainGraphicsListenDef out of Parser
by K Shiva 06 Apr '23
by K Shiva 06 Apr '23
06 Apr '23
In an effort to separate the validation steps from the Parse stage, a
part of the validation of virDomainGraphicsListenDef has been moved to
domain_validate.h.
Signed-off-by: K Shiva <shiva_kr(a)riseup.net>
---
This is a v3 of:
https://listman.redhat.com/archives/libvir-list/2023-April/239265.html
diff to v2:
- Cleaned patch as to be directly applied onto master branch
src/conf/domain_conf.c | 30 +-----------------------------
src/conf/domain_validate.c | 35 +++++++++++++++++++++++++++++++++++
2 files changed, 36 insertions(+), 29 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 70e4d52ee6..8df751cc46 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -10986,7 +10986,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
/**
* virDomainGraphicsListenDefParseXML:
* @def: listen def pointer to be filled
- * @graphics: graphics def pointer
* @node: xml node of <listen/> element
* @parent: xml node of <graphics/> element
* @flags: bit-wise or of VIR_DOMAIN_DEF_PARSE_*
@@ -10998,13 +10997,11 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
*/
static int
virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
- virDomainGraphicsDef *graphics,
xmlNodePtr node,
xmlNodePtr parent,
unsigned int flags)
{
int ret = -1;
- const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
g_autofree char *address = virXMLPropString(node, "address");
g_autofree char *network = virXMLPropString(node, "network");
g_autofree char *socketPath = virXMLPropString(node, "socket");
@@ -11021,31 +11018,6 @@ virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
VIR_XML_PROP_REQUIRED, &def->type) < 0)
goto error;
- switch (def->type) {
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'socket' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'none' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
- break;
- }
-
if (def->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) {
if (address && addressCompat && STRNEQ(address, addressCompat)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -11148,7 +11120,7 @@ virDomainGraphicsListensParseXML(virDomainGraphicsDef *def,
def->listens = g_new0(virDomainGraphicsListenDef, nListens);
for (i = 0; i < nListens; i++) {
- if (virDomainGraphicsListenDefParseXML(&def->listens[i], def,
+ if (virDomainGraphicsListenDefParseXML(&def->listens[i],
listenNodes[i],
i == 0 ? node : NULL,
flags) < 0)
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index 9265fef4f9..9a1a8ee156 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2627,6 +2627,39 @@ virDomainAudioDefValidate(const virDomainDef *def,
return 0;
}
+static int
+virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
+ const virDomainGraphicsDef *graphics)
+{
+ const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
+
+ switch (def->type) {
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
+ if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'socket' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
+ if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
+ graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'none' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
+ break;
+ }
+ return 0;
+}
+
static int
virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
{
@@ -2640,6 +2673,8 @@ virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
"listen type 'network'"));
return -1;
}
+ if (virDomainGraphicsListenDefValidate(&def->listens[i], def) < 0)
+ return -1;
}
return 0;
--
2.40.0
3
3
Re: [libvirt PATCH v4] Conf: Move validation of virDomainGraphicsListenDef out of Parser
by K Shiva 06 Apr '23
by K Shiva 06 Apr '23
06 Apr '23
In an effort to separate the validation steps from the Parse stage,
a few validation checks of virDomainGraphicsListenDef have been moved from
virDomainGraphicsListenDefParseXML() in domain_conf.c to
virDomainGraphicsDefListensValidate() in domain_validate.c
Signed-off-by: Koninty Shiva Kiran <shiva_kr(a)riseup.net>
---
src/conf/domain_conf.c | 30 +-----------------------------
src/conf/domain_validate.c | 37 +++++++++++++++++++++++++++++++------
2 files changed, 32 insertions(+), 35 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 70e4d52ee6..8df751cc46 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -10986,7 +10986,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
/**
* virDomainGraphicsListenDefParseXML:
* @def: listen def pointer to be filled
- * @graphics: graphics def pointer
* @node: xml node of <listen/> element
* @parent: xml node of <graphics/> element
* @flags: bit-wise or of VIR_DOMAIN_DEF_PARSE_*
@@ -10998,13 +10997,11 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
*/
static int
virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
- virDomainGraphicsDef *graphics,
xmlNodePtr node,
xmlNodePtr parent,
unsigned int flags)
{
int ret = -1;
- const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
g_autofree char *address = virXMLPropString(node, "address");
g_autofree char *network = virXMLPropString(node, "network");
g_autofree char *socketPath = virXMLPropString(node, "socket");
@@ -11021,31 +11018,6 @@ virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
VIR_XML_PROP_REQUIRED, &def->type) < 0)
goto error;
- switch (def->type) {
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'socket' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'none' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
- break;
- }
-
if (def->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) {
if (address && addressCompat && STRNEQ(address, addressCompat)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -11148,7 +11120,7 @@ virDomainGraphicsListensParseXML(virDomainGraphicsDef *def,
def->listens = g_new0(virDomainGraphicsListenDef, nListens);
for (i = 0; i < nListens; i++) {
- if (virDomainGraphicsListenDefParseXML(&def->listens[i], def,
+ if (virDomainGraphicsListenDefParseXML(&def->listens[i],
listenNodes[i],
i == 0 ? node : NULL,
flags) < 0)
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index 9265fef4f9..988f0854a5 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2631,14 +2631,39 @@ static int
virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
{
size_t i;
+ const char *graphicsType = virDomainGraphicsTypeToString(def->type);
for (i = 0; i < def->nListens; i++) {
- if (def->listens[i].type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK &&
- !def->listens[i].network) {
- virReportError(VIR_ERR_XML_ERROR, "%s",
- _("'network' attribute is required for "
- "listen type 'network'"));
- return -1;
+ switch (def->listens[i].type) {
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
+ if (!def->listens[i].network) {
+ virReportError(VIR_ERR_XML_ERROR, "%s",
+ _("'network' attribute is required for "
+ "listen type 'network'"));
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
+ if (def->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ def->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'socket' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
+ if (def->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
+ def->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'none' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
+ break;
}
}
--
2.40.0
1
0
Re: [libvirt PATCH v3] Conf: Move validation of virDomainGraphicsListenDef out of Parser virDomainGraphicsListenDef out of Parser
by K Shiva 06 Apr '23
by K Shiva 06 Apr '23
06 Apr '23
In an effort to separate the validation steps from the Parse stage,
a few validation checks of virDomainGraphicsListenDef have been moved from
virDomainGraphicsListenDefParseXML() in domain_conf.c to
virDomainGraphicsDefListensValidate() in domain_validate.c
Signed-off-by: Koninty Shiva Kiran <shiva_kr(a)riseup.net>
---
Change to previous mail:
https://listman.redhat.com/archives/libvir-list/2023-April/239286.html
- Previously forgot to add full name under signoff, added it here
src/conf/domain_conf.c | 30 +-----------------------------
src/conf/domain_validate.c | 37 +++++++++++++++++++++++++++++++------
2 files changed, 32 insertions(+), 35 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 70e4d52ee6..8df751cc46 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -10986,7 +10986,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
/**
* virDomainGraphicsListenDefParseXML:
* @def: listen def pointer to be filled
- * @graphics: graphics def pointer
* @node: xml node of <listen/> element
* @parent: xml node of <graphics/> element
* @flags: bit-wise or of VIR_DOMAIN_DEF_PARSE_*
@@ -10998,13 +10997,11 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
*/
static int
virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
- virDomainGraphicsDef *graphics,
xmlNodePtr node,
xmlNodePtr parent,
unsigned int flags)
{
int ret = -1;
- const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
g_autofree char *address = virXMLPropString(node, "address");
g_autofree char *network = virXMLPropString(node, "network");
g_autofree char *socketPath = virXMLPropString(node, "socket");
@@ -11021,31 +11018,6 @@ virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
VIR_XML_PROP_REQUIRED, &def->type) < 0)
goto error;
- switch (def->type) {
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'socket' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'none' is not available for graphics type '%1$s'"),
- graphicsType);
- goto error;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
- break;
- }
-
if (def->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) {
if (address && addressCompat && STRNEQ(address, addressCompat)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -11148,7 +11120,7 @@ virDomainGraphicsListensParseXML(virDomainGraphicsDef *def,
def->listens = g_new0(virDomainGraphicsListenDef, nListens);
for (i = 0; i < nListens; i++) {
- if (virDomainGraphicsListenDefParseXML(&def->listens[i], def,
+ if (virDomainGraphicsListenDefParseXML(&def->listens[i],
listenNodes[i],
i == 0 ? node : NULL,
flags) < 0)
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index 9265fef4f9..988f0854a5 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2631,14 +2631,39 @@ static int
virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
{
size_t i;
+ const char *graphicsType = virDomainGraphicsTypeToString(def->type);
for (i = 0; i < def->nListens; i++) {
- if (def->listens[i].type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK &&
- !def->listens[i].network) {
- virReportError(VIR_ERR_XML_ERROR, "%s",
- _("'network' attribute is required for "
- "listen type 'network'"));
- return -1;
+ switch (def->listens[i].type) {
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
+ if (!def->listens[i].network) {
+ virReportError(VIR_ERR_XML_ERROR, "%s",
+ _("'network' attribute is required for "
+ "listen type 'network'"));
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
+ if (def->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ def->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'socket' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
+ if (def->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
+ def->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'none' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
+ break;
}
}
--
2.40.0
1
0
For lseek.
Signed-off-by: Ján Tomko <jtomko(a)redhat.com>
---
Pushed as a build breaker fix.
src/util/viracpi.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/util/viracpi.c b/src/util/viracpi.c
index e66df99f03..c96b7c296b 100644
--- a/src/util/viracpi.c
+++ b/src/util/viracpi.c
@@ -22,6 +22,7 @@
#include <inttypes.h>
#include <fcntl.h>
+#include <unistd.h>
#define LIBVIRT_VIRACPIPRIV_H_ALLOW
#include "internal.h"
--
2.39.2
1
0
06 Apr '23
Historically the snapshot code attempted to forbid internal snapshots
with UEFI both in active and inactive case. Unfortunately due to the
intricacies of UEFI probing this didn't really work for inactive VMs
which made users rely on the feature.
Now with the changes to store detected UEFI environment also in the
inactive definition this broke the feature for those users.
Since the varstore doesn't really change that much in the lifecycle of a
VM it usually is okay to simply leave it as is.
Restore the functionality for inactive snapshots by disabling the check.
In the future when uefi snapshotting will be added the rest of the
condition will also be removed.
Resolves: https://gitlab.com/libvirt/libvirt/-/issues/460
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_snapshot.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_snapshot.c b/src/qemu/qemu_snapshot.c
index 12ddf19c48..91de8b0c31 100644
--- a/src/qemu/qemu_snapshot.c
+++ b/src/qemu/qemu_snapshot.c
@@ -749,11 +749,17 @@ qemuSnapshotPrepare(virDomainObj *vm,
* - if the variable store is raw, the snapshot fails
* - allowing a qcow2 image as the varstore would make it eligible to receive
* the vmstate dump, which would make it huge
- * - offline snapshot would not snapshot the varstore at all
*
- * Avoid the issues by forbidding internal snapshot with pflash completely.
+ * While offline snapshot would not snapshot the varstore at all, this used
+ * to work as auto-detected UEFI firmware was not present in the offline
+ * definition. Since in most cases the varstore doesn't change it's usually
+ * not an issue. Allow this as there are existing users of this case.
+ *
+ * Avoid the issues by forbidding internal snapshot with pflash if the
+ * VM is active.
*/
- if (found_internal &&
+ if (active &&
+ found_internal &&
virDomainDefHasOldStyleUEFI(vm->def)) {
virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
_("internal snapshots of a VM with pflash based "
--
2.39.2
2
1
[PATCH] viracpi: Fir error format string in virAcpiParseIORTNodeHeader()
by Michal Privoznik 06 Apr '23
by Michal Privoznik 06 Apr '23
06 Apr '23
Inside of virAcpiParseIORTNodeHeader() there's an
virReportError() which reports size of a structure using sizeof()
operator. Well, it's not well documented but the returned type of
sizeof() is apparently size_t but the format string uses %lu.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
Pushed under build breaker rule. Also verified this builds successfully
on a 32bit ARM.
src/util/viracpi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/util/viracpi.c b/src/util/viracpi.c
index 74fff0f0ac..e66df99f03 100644
--- a/src/util/viracpi.c
+++ b/src/util/viracpi.c
@@ -102,7 +102,7 @@ virAcpiParseIORTNodeHeader(int fd,
* least size of header itself. */
if (nodeHeader->len < sizeof(*nodeHeader)) {
virReportError(VIR_ERR_INTERNAL_ERROR,
- _("IORT table node type %1$s has invalid length: got %2$u, expected at least %3$lu"),
+ _("IORT table node type %1$s has invalid length: got %2$u, expected at least %3$zu"),
NULLSTR(typeStr), (unsigned int)nodeHeader->len, sizeof(*nodeHeader));
return -1;
}
--
2.39.2
1
0
06 Apr '23
From: skran <shiva_kr(a)riseup.net>
In an effort to separate the validation steps from the Parse stage, a
part of the validation of virDomainGraphicsListenDef has been moved to
domain_validate.h.
Signed-off-by: K Shiva <shiva_kr(a)riseup.net>
---
This is a v2 of:
https://listman.redhat.com/archives/libvir-list/2023-April/239205.html
diff to v1:
- Made virDomainGraphicsListenDefValidate() static, called by
virDomainGraphicsDefListensValidate()
- Removed unused Parameter (*graphics) out of Parse Function definition i.e
virDomainGraphicsListenParseXML()
- Corrected code format
src/conf/domain_conf.c | 9 ++---
src/conf/domain_validate.c | 68 ++++++++++++++++++++------------------
src/conf/domain_validate.h | 4 ---
3 files changed, 37 insertions(+), 44 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 1e0ac737bb..746bb4efdf 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -5836,7 +5836,7 @@ virDomainStorageNetworkParseHost(xmlNodePtr hostnode,
host->socket = virXMLPropString(hostnode, "socket");
- // Socket Validation
+ /* Socket Validation */
if (virDomainStorageNetHostSocketValidate(host, transport) < 0)
goto cleanup;
@@ -10975,7 +10975,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
/**
* virDomainGraphicsListenDefParseXML:
* @def: listen def pointer to be filled
- * @graphics: graphics def pointer
* @node: xml node of <listen/> element
* @parent: xml node of <graphics/> element
* @flags: bit-wise or of VIR_DOMAIN_DEF_PARSE_*
@@ -10987,7 +10986,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
*/
static int
virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
- virDomainGraphicsDef *graphics,
xmlNodePtr node,
xmlNodePtr parent,
unsigned int flags)
@@ -11009,9 +11007,6 @@ virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
VIR_XML_PROP_REQUIRED, &def->type) < 0)
goto error;
- if (virDomainGraphicsListenDefValidate(def, graphics) == -1)
- goto error;
-
if (def->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) {
if (address && addressCompat && STRNEQ(address, addressCompat)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -11114,7 +11109,7 @@ virDomainGraphicsListensParseXML(virDomainGraphicsDef *def,
def->listens = g_new0(virDomainGraphicsListenDef, nListens);
for (i = 0; i < nListens; i++) {
- if (virDomainGraphicsListenDefParseXML(&def->listens[i], def,
+ if (virDomainGraphicsListenDefParseXML(&def->listens[i],
listenNodes[i],
i == 0 ? node : NULL,
flags) < 0)
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index 10f8242c84..a84dbe8bc9 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2627,6 +2627,39 @@ virDomainAudioDefValidate(const virDomainDef *def,
return 0;
}
+static int
+virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
+ const virDomainGraphicsDef *graphics)
+{
+ const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
+
+ switch (def->type) {
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
+ if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'socket' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
+ if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
+ graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'none' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
+ break;
+ }
+ return 0;
+}
+
static int
virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
{
@@ -2640,6 +2673,8 @@ virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
"listen type 'network'"));
return -1;
}
+ if (virDomainGraphicsListenDefValidate(&def->listens[i], def) < 0)
+ return -1;
}
return 0;
@@ -2669,39 +2704,6 @@ virDomainGraphicsDefValidate(const virDomainDef *def,
return 0;
}
-int
-virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
- const virDomainGraphicsDef *graphics)
-{
- const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
-
- switch (def->type) {
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'socket' is not available for graphics type '%1$s'"),
- graphicsType);
- return -1;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'none' is not available for graphics type '%1$s'"),
- graphicsType);
- return -1;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
- break;
- }
- return 0;
-}
-
static int
virDomainIOMMUDefValidate(const virDomainIOMMUDef *iommu)
{
diff --git a/src/conf/domain_validate.h b/src/conf/domain_validate.h
index baeae4b2a3..7772a62e18 100644
--- a/src/conf/domain_validate.h
+++ b/src/conf/domain_validate.h
@@ -48,9 +48,5 @@ int virDomainDiskDefSourceLUNValidate(const virStorageSource *src);
int virDomainDefOSValidate(const virDomainDef *def,
virDomainXMLOption *xmlopt);
-int
-virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
- const virDomainGraphicsDef *graphics);
-
int virDomainStorageNetHostSocketValidate(const virStorageNetHostDef *host,
const char *transport);
--
2.40.0
3
3
[PATCH v2 0/3] virt-host-validate: Detect SMMU presence on ARMs by parsing IORT table
by Michal Privoznik 06 Apr '23
by Michal Privoznik 06 Apr '23
06 Apr '23
v2 of:
https://listman.redhat.com/archives/libvir-list/2023-April/239251.html
diff to v1:
- Renamed couple of enum values,
- fixed their string translations,
- Other small nits pointed out by Andrea
Michal PrÃvoznÃk (3):
util: Introduce virAcpi module
tests: Introduce viracpitest
virt-host-validate: Detect SMMU presence on ARMs by parsing IORT table
build-aux/syntax-check.mk | 2 +-
po/POTFILES | 1 +
src/libvirt_private.syms | 7 +
src/util/meson.build | 1 +
src/util/viracpi.c | 226 ++++++++++++++++++++++++++++
src/util/viracpi.h | 23 +++
src/util/viracpipriv.h | 58 +++++++
tests/meson.build | 1 +
tests/viracpidata/IORT_ampere | Bin 0 -> 2304 bytes
tests/viracpidata/IORT_empty | Bin 0 -> 65 bytes
tests/viracpidata/IORT_gigabyte | Bin 0 -> 10100 bytes
tests/viracpidata/IORT_qualcomm | Bin 0 -> 3560 bytes
tests/viracpidata/IORT_virt_aarch64 | Bin 0 -> 128 bytes
tests/viracpitest.c | 135 +++++++++++++++++
tools/virt-host-validate-common.c | 18 ++-
15 files changed, 468 insertions(+), 4 deletions(-)
create mode 100644 src/util/viracpi.c
create mode 100644 src/util/viracpi.h
create mode 100644 src/util/viracpipriv.h
create mode 100644 tests/viracpidata/IORT_ampere
create mode 100644 tests/viracpidata/IORT_empty
create mode 100644 tests/viracpidata/IORT_gigabyte
create mode 100644 tests/viracpidata/IORT_qualcomm
create mode 100644 tests/viracpidata/IORT_virt_aarch64
create mode 100644 tests/viracpitest.c
--
2.39.2
2
4
05 Apr '23
Testing 32-bit host OS support takes a lot of precious time during the QEMU
contiguous integration tests, and considering that many OS vendors stopped
shipping 32-bit variants of their OS distributions and most hardware from
the past >10 years is capable of 64-bit, keeping the 32-bit support alive
is an inadequate burden for the QEMU project. Let's mark the 32-bit
support as deprecated so we can drop it after a while - this will help
us to cut down our limited CI minutes in the gitlab CI, for example.
Signed-off-by: Thomas Huth <thuth(a)redhat.com>
---
docs/about/deprecated.rst | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index 9f1bbc495d..ce6463e72b 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -181,9 +181,20 @@ As Debian 10 ("Buster") moved into LTS the big endian 32 bit version of
MIPS moved out of support making it hard to maintain our
cross-compilation CI tests of the architecture. As we no longer have
CI coverage support may bitrot away before the deprecation process
-completes. The little endian variants of MIPS (both 32 and 64 bit) are
+completes. The little endian variants of MIPS are
still a supported host architecture.
+32-bit host operating systems (since 8.0)
+'''''''''''''''''''''''''''''''''''''''''
+
+Testing 32-bit host OS support takes a lot of precious time during the QEMU
+contiguous integration tests, and considering that many OS vendors stopped
+shipping 32-bit variants of their OS distributions and most hardware from
+the past >10 years is capable of 64-bit, keeping the 32-bit support alive
+is an inadequate burden for the QEMU project. Thus QEMU will soon drop the
+support for 32-bit host systems.
+
+
QEMU API (QAPI) events
----------------------
--
2.31.1
16
44
[PATCH] Conf: Move validation of Graphics Transport and StorageNetwork Socket out of parser
by skran 05 Apr '23
by skran 05 Apr '23
05 Apr '23
Thank you for the corrections. I understand it now.
[1] I have made the Graphics Transport validation function static and moved its call out of the parser, to virDomainGraphicsDefListensValidate() in domain_validate.h. Is this a correct implementation?, it does pass the tests.
I have removed the *graphics def parameter from ParseXML function as it became unused after moving the validation out of the Parser.
[2] I can't find a way to implement virDomainStorageNetHostSocketValidate() as static. Could you please point as to which function within domain_validate.h could be used to call this validation function? similar to virDomainGraphicsDefListensValidate() for [1].
[3] How do I obtain char *transport within the validation function without parameter passing?
It's used only to report this error in the below snippet
virReportError(VIR_ERR_XML_ERROR,
_("transport '%1$s' does not support socket attribute"),
transport);
Do I use virXMLPropString(hostnode, "transport") after passing xmlNodePtr hostnode as a parameter? How do I obtain these in domain_validate.h.
Thank you for your help!
Signed-off-by: K Shiva <shiva_kr(a)riseup.net>
---
src/conf/domain_conf.c | 9 ++---
src/conf/domain_validate.c | 68 ++++++++++++++++++++------------------
src/conf/domain_validate.h | 4 ---
3 files changed, 37 insertions(+), 44 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 1e0ac737bb..746bb4efdf 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -5836,7 +5836,7 @@ virDomainStorageNetworkParseHost(xmlNodePtr hostnode,
host->socket = virXMLPropString(hostnode, "socket");
- // Socket Validation
+ /* Socket Validation */
if (virDomainStorageNetHostSocketValidate(host, transport) < 0)
goto cleanup;
@@ -10975,7 +10975,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
/**
* virDomainGraphicsListenDefParseXML:
* @def: listen def pointer to be filled
- * @graphics: graphics def pointer
* @node: xml node of <listen/> element
* @parent: xml node of <graphics/> element
* @flags: bit-wise or of VIR_DOMAIN_DEF_PARSE_*
@@ -10987,7 +10986,6 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
*/
static int
virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
- virDomainGraphicsDef *graphics,
xmlNodePtr node,
xmlNodePtr parent,
unsigned int flags)
@@ -11009,9 +11007,6 @@ virDomainGraphicsListenDefParseXML(virDomainGraphicsListenDef *def,
VIR_XML_PROP_REQUIRED, &def->type) < 0)
goto error;
- if (virDomainGraphicsListenDefValidate(def, graphics) == -1)
- goto error;
-
if (def->type == VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS) {
if (address && addressCompat && STRNEQ(address, addressCompat)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -11114,7 +11109,7 @@ virDomainGraphicsListensParseXML(virDomainGraphicsDef *def,
def->listens = g_new0(virDomainGraphicsListenDef, nListens);
for (i = 0; i < nListens; i++) {
- if (virDomainGraphicsListenDefParseXML(&def->listens[i], def,
+ if (virDomainGraphicsListenDefParseXML(&def->listens[i],
listenNodes[i],
i == 0 ? node : NULL,
flags) < 0)
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index 10f8242c84..a84dbe8bc9 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2627,6 +2627,39 @@ virDomainAudioDefValidate(const virDomainDef *def,
return 0;
}
+static int
+virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
+ const virDomainGraphicsDef *graphics)
+{
+ const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
+
+ switch (def->type) {
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
+ if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'socket' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
+ if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
+ graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ _("listen type 'none' is not available for graphics type '%1$s'"),
+ graphicsType);
+ return -1;
+ }
+ break;
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
+ case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
+ break;
+ }
+ return 0;
+}
+
static int
virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
{
@@ -2640,6 +2673,8 @@ virDomainGraphicsDefListensValidate(const virDomainGraphicsDef *def)
"listen type 'network'"));
return -1;
}
+ if (virDomainGraphicsListenDefValidate(&def->listens[i], def) < 0)
+ return -1;
}
return 0;
@@ -2669,39 +2704,6 @@ virDomainGraphicsDefValidate(const virDomainDef *def,
return 0;
}
-int
-virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
- const virDomainGraphicsDef *graphics)
-{
- const char *graphicsType = virDomainGraphicsTypeToString(graphics->type);
-
- switch (def->type) {
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_SOCKET:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'socket' is not available for graphics type '%1$s'"),
- graphicsType);
- return -1;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NONE:
- if (graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_SPICE &&
- graphics->type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("listen type 'none' is not available for graphics type '%1$s'"),
- graphicsType);
- return -1;
- }
- break;
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_ADDRESS:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_NETWORK:
- case VIR_DOMAIN_GRAPHICS_LISTEN_TYPE_LAST:
- break;
- }
- return 0;
-}
-
static int
virDomainIOMMUDefValidate(const virDomainIOMMUDef *iommu)
{
diff --git a/src/conf/domain_validate.h b/src/conf/domain_validate.h
index baeae4b2a3..7772a62e18 100644
--- a/src/conf/domain_validate.h
+++ b/src/conf/domain_validate.h
@@ -48,9 +48,5 @@ int virDomainDiskDefSourceLUNValidate(const virStorageSource *src);
int virDomainDefOSValidate(const virDomainDef *def,
virDomainXMLOption *xmlopt);
-int
-virDomainGraphicsListenDefValidate(const virDomainGraphicsListenDef *def,
- const virDomainGraphicsDef *graphics);
-
int virDomainStorageNetHostSocketValidate(const virStorageNetHostDef *host,
const char *transport);
--
2.40.0
2
1
libxl added support for specifying custom firmware paths long ago. This series
adds support to the libxl driver and the XML to xl.cfg config converter.
Jim Fehlig (2):
libxl: Support specifying a custom firmware path
libxl: Add support for custom firmware path in config converter
src/libxl/libxl_conf.c | 14 ++--
src/libxl/xen_xl.c | 19 +++--
tests/libxlxml2domconfigdata/efi-hvm.json | 91 +++++++++++++++++++++++
tests/libxlxml2domconfigdata/efi-hvm.xml | 36 +++++++++
tests/libxlxml2domconfigtest.c | 1 +
tests/xlconfigdata/test-fullvirt-ovmf.cfg | 1 +
tests/xlconfigdata/test-fullvirt-ovmf.xml | 2 +-
7 files changed, 150 insertions(+), 14 deletions(-)
create mode 100644 tests/libxlxml2domconfigdata/efi-hvm.json
create mode 100644 tests/libxlxml2domconfigdata/efi-hvm.xml
--
2.39.1
3
5