diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 5082153a6ed0eee9549b4b7a1f503a3ae29952d8..e4984c03a55ebb74e18fd10c9d847514001bdd6c 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -511,6 +511,9 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
"vfio-ap",
"zpci",
"memory-backend-memfd",
+
+ /* 320 */
+ "memory-backend-memfd.hugetlb",
);
@@ -1360,6 +1363,10 @@ static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] =
{ "discard-data", QEMU_CAPS_OBJECT_MEMORY_FILE_DISCARD },
};
+static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendMemfd[] = {
+ { "hugetlb", QEMU_CAPS_OBJECT_MEMORY_MEMFD_HUGETLB },
+};
+
static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsSPAPRMachine[] = {
{ "cap-hpt-max-page-size", QEMU_CAPS_MACHINE_PSERIES_CAP_HPT_MAX_PAGE_SIZE },
{ "cap-htm", QEMU_CAPS_MACHINE_PSERIES_CAP_HTM },
@@ -1369,6 +1376,9 @@ static virQEMUCapsObjectTypeProps virQEMUCapsObjectProps[] = {
{ "memory-backend-file", virQEMUCapsObjectPropsMemoryBackendFile,
ARRAY_CARDINALITY(virQEMUCapsObjectPropsMemoryBackendFile),
QEMU_CAPS_OBJECT_MEMORY_FILE },
+ { "memory-backend-memfd", virQEMUCapsObjectPropsMemoryBackendMemfd,
+ ARRAY_CARDINALITY(virQEMUCapsObjectPropsMemoryBackendMemfd),
+ QEMU_CAPS_OBJECT_MEMORY_MEMFD },
{ "spapr-machine", virQEMUCapsObjectPropsSPAPRMachine,
ARRAY_CARDINALITY(virQEMUCapsObjectPropsSPAPRMachine),
-1 },
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 7e261f0ca2d81215bf317a1d2406bf6b12af31bd..0635eb4fc860349e8008ae126b6f0a35a782317a 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -496,6 +496,9 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
QEMU_CAPS_DEVICE_ZPCI, /* -device zpci */
QEMU_CAPS_OBJECT_MEMORY_MEMFD, /* -object memory-backend-memfd */
+ /* 320 */
+ QEMU_CAPS_OBJECT_MEMORY_MEMFD_HUGETLB, /* -object memory-backend-memfd.hugetlb */
+
QEMU_CAPS_LAST /* this must always be the last item */
} virQEMUCapsFlags;
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies
index 4208a661560830afef9d5470618e115be6680fdd..2cd6705d7807e3ca90c1a9ff768b1acd03711f11 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.replies
@@ -5403,13 +5403,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-31"
}
{
- "id": "libvirt-31",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-31"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-32"
+}
+
+{
+ "id": "libvirt-32",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -5418,7 +5476,7 @@
{
"execute": "query-machines",
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -5715,12 +5773,12 @@
"cpu-max": 1
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -5896,35 +5954,35 @@
"static": false
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"return": [
],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [
"emulator"
],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
@@ -7085,12 +7143,12 @@
"option": "drive"
}
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -7152,12 +7210,12 @@
"capability": "dirty-bitmaps"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -18525,12 +18583,12 @@
"meta-type": "object"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"execute": "query-gic-capabilities",
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -18546,7 +18604,7 @@
"kernel": false
}
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml
index 20b683aad96feabb934c6eea7619e09e9f8c5495..4254018d4c1f83948403815858b415bc7051fb87 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml
@@ -163,9 +163,10 @@
+
2011090
0
- 344910
+ 345725
v2.12.0-rc0
aarch64
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.replies b/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.replies
index bd28546275ea70028812178b5083ce9c6fc2e384..d8aef1e9d1654e4c7f260035cbf3a587fb30e74e 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.replies
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.replies
@@ -5458,11 +5458,69 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-32"
}
+{
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-32"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-33"
+}
+
{
"return": [
{
@@ -5621,12 +5679,12 @@
"type": "bool"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-machines",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -5764,12 +5822,12 @@
"cpu-max": 1
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
@@ -7965,35 +8023,35 @@
"static": false
}
],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [
],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"return": [
"emulator"
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -9149,12 +9207,12 @@
"option": "drive"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -9216,12 +9274,12 @@
"capability": "dirty-bitmaps"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -20589,7 +20647,7 @@
"meta-type": "object"
}
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml
index 3a63c369a41ec81816777890b83527380b01b243..0cbc6e31199cd409efbdaa7f8d1d1cb560304464 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml
@@ -161,9 +161,10 @@
+
2011090
0
- 425694
+ 426509
v2.12.0-rc0
ppc64
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.s390x.replies b/tests/qemucapabilitiesdata/caps_2.12.0.s390x.replies
index f98afbceae8d174573d77543ff9fd24c85908f8a..b5a14b5916b5e2b828660fe6d2b71124ab129bee 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.s390x.replies
@@ -3818,13 +3818,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-31"
}
{
- "id": "libvirt-31",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-31"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-32"
+}
+
+{
+ "id": "libvirt-32",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -3833,7 +3891,7 @@
{
"execute": "query-machines",
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -3891,12 +3949,12 @@
"alias": "s390-ccw-virtio"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -4431,35 +4489,35 @@
"migration-safe": true
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"return": [
],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [
"emulator"
],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
@@ -5584,12 +5642,12 @@
"option": "drive"
}
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -5651,12 +5709,12 @@
"capability": "dirty-bitmaps"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -17024,7 +17082,7 @@
"meta-type": "object"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -17035,7 +17093,7 @@
"name": "host"
}
},
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -17073,7 +17131,7 @@
}
}
},
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -17087,11 +17145,11 @@
}
}
},
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
- "id": "libvirt-40",
+ "id": "libvirt-41",
"error": {
"class": "GenericError",
"desc": "Property '.migratable' not found"
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml
index 41c9d9cd7ba78afa425a2385e60ef61ebac7cf1d..535107912e7ecf1c3ffcc1f3872cf3067762038a 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml
@@ -130,9 +130,10 @@
+
2012000
0
- 374287
+ 375102
s390x
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies
index e0b6d2f93770a09112e373380d24cad990ac8b66..675b85b43dae4d3f57ed679cc11319915316b6c5 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies
@@ -4816,13 +4816,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-36"
}
{
- "id": "libvirt-36",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-36"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-37"
+}
+
+{
+ "id": "libvirt-37",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -4831,7 +4889,7 @@
{
"execute": "query-machines",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -5030,12 +5088,12 @@
"cpu-max": 255
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -5549,12 +5607,12 @@
"migration-safe": true
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -5562,12 +5620,12 @@
"tpm-crb",
"tpm-tis"
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
@@ -5575,12 +5633,12 @@
"passthrough",
"emulator"
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
@@ -6867,12 +6925,12 @@
"option": "drive"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
@@ -6934,12 +6992,12 @@
"capability": "dirty-bitmaps"
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
@@ -18307,7 +18365,7 @@
"meta-type": "object"
}
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
@@ -18318,7 +18376,7 @@
"name": "host"
}
},
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
@@ -18508,7 +18566,7 @@
}
}
},
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
@@ -18700,7 +18758,7 @@
}
}
},
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
@@ -18955,7 +19013,7 @@
}
}
},
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
@@ -18969,7 +19027,7 @@
}
}
},
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
@@ -19159,7 +19217,7 @@
}
}
},
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
@@ -19351,7 +19409,7 @@
}
}
},
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
@@ -19606,12 +19664,12 @@
}
}
},
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
"execute": "query-sev-capabilities",
- "id": "libvirt-48"
+ "id": "libvirt-49"
}
{
@@ -19621,7 +19679,7 @@
"cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA",
"pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA"
},
- "id": "libvirt-48"
+ "id": "libvirt-49"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml
index e53f7621c042c24874867c44d4eda7393f494bd3..73df166bc786b9f9e10ad60ef82c381cb37b874d 100644
--- a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml
@@ -204,9 +204,10 @@
+
2011090
0
- 413556
+ 414371
v2.12.0-rc0
x86_64
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies
index eb57c77a904431d4b3d49603554b151e6f12b90d..aff01371a34c4bd4fd1c029d82c6bbe4ab49501d 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.replies
@@ -5541,11 +5541,69 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-32"
}
+{
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-32"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-33"
+}
+
{
"return": [
{
@@ -5714,12 +5772,12 @@
"type": "bool"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-machines",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -5862,12 +5920,12 @@
"cpu-max": 1
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
@@ -8063,35 +8121,35 @@
"static": false
}
],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [
],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"return": [
"emulator"
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -9221,12 +9279,12 @@
"option": "drive"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -9296,12 +9354,12 @@
"capability": "late-block-activate"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -21460,7 +21518,7 @@
"meta-type": "object"
}
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml
index 93b04260dab5d0b4da83dcbabaa351db170feeb6..7a8a4c782d47accdcc006b6241d0dad4964ac474 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml
@@ -161,9 +161,10 @@
+
2012050
0
- 444131
+ 444946
v2.12.0-1689-g518d23a
ppc64
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.replies b/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.replies
index 3e8d136a325d2a3dc18c4a70d8ce1cc3f2d3b3a8..663b4a49c087aa0ace4a715c963d3bedd1dfbfe9 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.replies
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.replies
@@ -1734,13 +1734,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-27"
}
{
- "id": "libvirt-27",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-27"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-28"
+}
+
+{
+ "id": "libvirt-28",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -1749,7 +1807,7 @@
{
"execute": "query-machines",
- "id": "libvirt-28"
+ "id": "libvirt-29"
}
{
@@ -1786,23 +1844,23 @@
"cpu-max": 1
}
],
- "id": "libvirt-28"
+ "id": "libvirt-29"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
"return": [
],
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -1810,12 +1868,12 @@
"passthrough",
"emulator"
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -2940,12 +2998,12 @@
"option": "drive"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -3015,12 +3073,12 @@
"capability": "late-block-activate"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -14695,5 +14753,5 @@
"meta-type": "object"
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml b/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml
index 57096e735eb98185c6032faa903f93f53634994b..634d76ef267668418f6c379749b4b5e6f9810ee2 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml
@@ -101,6 +101,7 @@
+
3000000
0
0
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.replies b/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.replies
index 3631193566073cf5c4106030312e86e4aca886a8..cc66c232aba45c2d0afbb2b21fdbc9d483427a4d 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.replies
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.replies
@@ -1734,13 +1734,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-27"
}
{
- "id": "libvirt-27",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-27"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-28"
+}
+
+{
+ "id": "libvirt-28",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -1749,7 +1807,7 @@
{
"execute": "query-machines",
- "id": "libvirt-28"
+ "id": "libvirt-29"
}
{
@@ -1786,23 +1844,23 @@
"cpu-max": 1
}
],
- "id": "libvirt-28"
+ "id": "libvirt-29"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
"return": [
],
- "id": "libvirt-29"
+ "id": "libvirt-30"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
@@ -1810,12 +1868,12 @@
"passthrough",
"emulator"
],
- "id": "libvirt-30"
+ "id": "libvirt-31"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
@@ -2940,12 +2998,12 @@
"option": "drive"
}
],
- "id": "libvirt-31"
+ "id": "libvirt-32"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
@@ -3015,12 +3073,12 @@
"capability": "late-block-activate"
}
],
- "id": "libvirt-32"
+ "id": "libvirt-33"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -14695,5 +14753,5 @@
"meta-type": "object"
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml
index e88c69b2c7d8c1a3759e61648623c00782e3a825..d042eda06c57e97fccffa083bebe0c95a6602883 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml
@@ -101,6 +101,7 @@
+
3000000
0
0
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.s390x.replies b/tests/qemucapabilitiesdata/caps_3.0.0.s390x.replies
index 0560835b9f2926cb5ae211c77d825b57ad9f2a94..3bcdfce2931be8db42c42026f4afb28a44c173f5 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.s390x.replies
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.s390x.replies
@@ -3978,13 +3978,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-32"
}
{
- "id": "libvirt-32",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-32"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-33"
+}
+
+{
+ "id": "libvirt-33",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -3993,7 +4051,7 @@
{
"execute": "query-machines",
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
@@ -4056,12 +4114,12 @@
"cpu-max": 248
}
],
- "id": "libvirt-33"
+ "id": "libvirt-34"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
@@ -4612,35 +4670,35 @@
"migration-safe": true
}
],
- "id": "libvirt-34"
+ "id": "libvirt-35"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"return": [
],
- "id": "libvirt-35"
+ "id": "libvirt-36"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"return": [
"emulator"
],
- "id": "libvirt-36"
+ "id": "libvirt-37"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -5800,12 +5858,12 @@
"option": "drive"
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -5875,12 +5933,12 @@
"capability": "late-block-activate"
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -17555,7 +17613,7 @@
"meta-type": "object"
}
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -17566,7 +17624,7 @@
"name": "host"
}
},
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
@@ -17608,7 +17666,7 @@
}
}
},
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
@@ -17622,11 +17680,11 @@
}
}
},
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
- "id": "libvirt-41",
+ "id": "libvirt-42",
"error": {
"class": "GenericError",
"desc": "Property '.migratable' not found"
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml b/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml
index 2d93b75335924f1205d0e3794e38c281882a5b5a..697c8d51b869a4d4d090c4acecb2b98ba4b29a1a 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml
@@ -132,9 +132,10 @@
+
3000000
0
- 387601
+ 388416
s390x
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies
index 17edb990e190d45cd457e4cf36c2002ac515cc15..f5bbe5c6505628c6c65978bb6e41b141327d59e5 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies
@@ -4928,13 +4928,71 @@
{
"execute": "qom-list-properties",
"arguments": {
- "typename": "spapr-machine"
+ "typename": "memory-backend-memfd"
},
"id": "libvirt-36"
}
{
- "id": "libvirt-36",
+ "return": [
+ {
+ "name": "policy",
+ "type": "HostMemPolicy"
+ },
+ {
+ "name": "share",
+ "type": "bool"
+ },
+ {
+ "name": "host-nodes",
+ "type": "int"
+ },
+ {
+ "name": "prealloc",
+ "type": "bool"
+ },
+ {
+ "name": "dump",
+ "type": "bool"
+ },
+ {
+ "name": "size",
+ "type": "int"
+ },
+ {
+ "name": "merge",
+ "type": "bool"
+ },
+ {
+ "name": "seal",
+ "type": "bool"
+ },
+ {
+ "name": "hugetlbsize",
+ "type": "int"
+ },
+ {
+ "name": "hugetlb",
+ "type": "bool"
+ },
+ {
+ "name": "type",
+ "type": "string"
+ }
+ ],
+ "id": "libvirt-36"
+}
+
+{
+ "execute": "qom-list-properties",
+ "arguments": {
+ "typename": "spapr-machine"
+ },
+ "id": "libvirt-37"
+}
+
+{
+ "id": "libvirt-37",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
@@ -4943,7 +5001,7 @@
{
"execute": "query-machines",
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
@@ -5152,12 +5210,12 @@
"cpu-max": 255
}
],
- "id": "libvirt-37"
+ "id": "libvirt-38"
}
{
"execute": "query-cpu-definitions",
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
@@ -5594,12 +5652,12 @@
"migration-safe": true
}
],
- "id": "libvirt-38"
+ "id": "libvirt-39"
}
{
"execute": "query-tpm-models",
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
@@ -5607,12 +5665,12 @@
"tpm-crb",
"tpm-tis"
],
- "id": "libvirt-39"
+ "id": "libvirt-40"
}
{
"execute": "query-tpm-types",
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
@@ -5620,12 +5678,12 @@
"passthrough",
"emulator"
],
- "id": "libvirt-40"
+ "id": "libvirt-41"
}
{
"execute": "query-command-line-options",
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
@@ -6924,12 +6982,12 @@
"option": "drive"
}
],
- "id": "libvirt-41"
+ "id": "libvirt-42"
}
{
"execute": "query-migrate-capabilities",
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
@@ -6999,12 +7057,12 @@
"capability": "late-block-activate"
}
],
- "id": "libvirt-42"
+ "id": "libvirt-43"
}
{
"execute": "query-qmp-schema",
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
@@ -18884,7 +18942,7 @@
"meta-type": "object"
}
],
- "id": "libvirt-43"
+ "id": "libvirt-44"
}
{
@@ -18895,7 +18953,7 @@
"name": "host"
}
},
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
@@ -19088,7 +19146,7 @@
}
}
},
- "id": "libvirt-44"
+ "id": "libvirt-45"
}
{
@@ -19283,7 +19341,7 @@
}
}
},
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
@@ -19546,7 +19604,7 @@
}
}
},
- "id": "libvirt-45"
+ "id": "libvirt-46"
}
{
@@ -19560,7 +19618,7 @@
}
}
},
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
@@ -19753,7 +19811,7 @@
}
}
},
- "id": "libvirt-46"
+ "id": "libvirt-47"
}
{
@@ -19948,7 +20006,7 @@
}
}
},
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
@@ -20211,16 +20269,16 @@
}
}
},
- "id": "libvirt-47"
+ "id": "libvirt-48"
}
{
"execute": "query-sev-capabilities",
- "id": "libvirt-48"
+ "id": "libvirt-49"
}
{
- "id": "libvirt-48",
+ "id": "libvirt-49",
"error": {
"class": "GenericError",
"desc": "SEV feature is not available"
diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml
index 689135a41cadd00b3e5cda8ad8e276fc02ac887d..ffe3e06236ad45375e7d302afb437225d31e5df6 100644
--- a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml
@@ -206,9 +206,10 @@
+
3000000
0
- 425157
+ 425972
v3.0.0
x86_64