1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-01-05 13:17:51 +03:00

qemu: Add capability for the HPT maxpagesize feature

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
This commit is contained in:
Andrea Bolognani 2018-06-19 13:51:05 +02:00
parent 0a527017c4
commit 90e6e0fae8
12 changed files with 497 additions and 91 deletions

View File

@ -500,6 +500,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
/* 310 */ /* 310 */
"sev-guest", "sev-guest",
"machine.pseries.cap-hpt-max-page-size",
); );
@ -1428,10 +1429,17 @@ static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] =
{ "discard-data", QEMU_CAPS_OBJECT_MEMORY_FILE_DISCARD }, { "discard-data", QEMU_CAPS_OBJECT_MEMORY_FILE_DISCARD },
}; };
static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsSPAPRMachine[] = {
{ "cap-hpt-max-page-size", QEMU_CAPS_MACHINE_PSERIES_CAP_HPT_MAX_PAGE_SIZE },
};
static virQEMUCapsObjectTypeProps virQEMUCapsObjectProps[] = { static virQEMUCapsObjectTypeProps virQEMUCapsObjectProps[] = {
{ "memory-backend-file", virQEMUCapsObjectPropsMemoryBackendFile, { "memory-backend-file", virQEMUCapsObjectPropsMemoryBackendFile,
ARRAY_CARDINALITY(virQEMUCapsObjectPropsMemoryBackendFile), ARRAY_CARDINALITY(virQEMUCapsObjectPropsMemoryBackendFile),
QEMU_CAPS_OBJECT_MEMORY_FILE }, QEMU_CAPS_OBJECT_MEMORY_FILE },
{ "spapr-machine", virQEMUCapsObjectPropsSPAPRMachine,
ARRAY_CARDINALITY(virQEMUCapsObjectPropsSPAPRMachine),
-1 },
}; };
static void static void

View File

@ -484,6 +484,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
/* 310 */ /* 310 */
QEMU_CAPS_SEV_GUEST, /* -object sev-guest,... */ QEMU_CAPS_SEV_GUEST, /* -object sev-guest,... */
QEMU_CAPS_MACHINE_PSERIES_CAP_HPT_MAX_PAGE_SIZE, /* -machine pseries.cap-hpt-max-page-size */
QEMU_CAPS_LAST /* this must always be the last item */ QEMU_CAPS_LAST /* this must always be the last item */
} virQEMUCapsFlags; } virQEMUCapsFlags;

View File

@ -5582,10 +5582,26 @@
} }
{ {
"execute": "query-machines", "execute": "qom-list-properties",
"arguments": {
"typename": "spapr-machine"
},
"id": "libvirt-37" "id": "libvirt-37"
} }
{
"id": "libvirt-37",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
}
}
{
"execute": "query-machines",
"id": "libvirt-38"
}
{ {
"return": [ "return": [
{ {
@ -5880,12 +5896,12 @@
"cpu-max": 1 "cpu-max": 1
} }
], ],
"id": "libvirt-37" "id": "libvirt-38"
} }
{ {
"execute": "query-cpu-definitions", "execute": "query-cpu-definitions",
"id": "libvirt-38" "id": "libvirt-39"
} }
{ {
@ -6061,35 +6077,35 @@
"static": false "static": false
} }
], ],
"id": "libvirt-38" "id": "libvirt-39"
} }
{ {
"execute": "query-tpm-models", "execute": "query-tpm-models",
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
"return": [ "return": [
], ],
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
"execute": "query-tpm-types", "execute": "query-tpm-types",
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"return": [ "return": [
"emulator" "emulator"
], ],
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"execute": "query-command-line-options", "execute": "query-command-line-options",
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
@ -7250,12 +7266,12 @@
"option": "drive" "option": "drive"
} }
], ],
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
"execute": "query-migrate-capabilities", "execute": "query-migrate-capabilities",
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
@ -7317,12 +7333,12 @@
"capability": "dirty-bitmaps" "capability": "dirty-bitmaps"
} }
], ],
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
"execute": "query-qmp-schema", "execute": "query-qmp-schema",
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
@ -18690,12 +18706,12 @@
"meta-type": "object" "meta-type": "object"
} }
], ],
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
"execute": "query-gic-capabilities", "execute": "query-gic-capabilities",
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
@ -18711,7 +18727,7 @@
"kernel": false "kernel": false
} }
], ],
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {

View File

@ -171,7 +171,7 @@
<flag name='tpm-emulator'/> <flag name='tpm-emulator'/>
<version>2011090</version> <version>2011090</version>
<kvmVersion>0</kvmVersion> <kvmVersion>0</kvmVersion>
<microcodeVersion>347313</microcodeVersion> <microcodeVersion>347550</microcodeVersion>
<package>v2.12.0-rc0</package> <package>v2.12.0-rc0</package>
<arch>aarch64</arch> <arch>aarch64</arch>
<cpu type='kvm' name='pxa262'/> <cpu type='kvm' name='pxa262'/>

View File

@ -5637,10 +5637,179 @@
} }
{ {
"execute": "query-machines", "execute": "qom-list-properties",
"arguments": {
"typename": "spapr-machine"
},
"id": "libvirt-38" "id": "libvirt-38"
} }
{
"return": [
{
"name": "graphics",
"description": "Set on/off to enable/disable graphics emulation",
"type": "bool"
},
{
"name": "phandle-start",
"description": "The first phandle ID we may generate dynamically",
"type": "int"
},
{
"name": "dump-guest-core",
"description": "Include guest memory in a core dump",
"type": "bool"
},
{
"name": "kernel-irqchip",
"description": "Configure KVM in-kernel irqchip",
"type": "on|off|split"
},
{
"name": "accel",
"description": "Accelerator list",
"type": "string"
},
{
"name": "append",
"description": "Linux kernel command line",
"type": "string"
},
{
"name": "dumpdtb",
"description": "Dump current dtb to a file and quit",
"type": "string"
},
{
"name": "memory-encryption",
"description": "Set memory encyption object to use",
"type": "string"
},
{
"name": "igd-passthru",
"description": "Set on/off to enable/disable igd passthrou",
"type": "bool"
},
{
"name": "dt-compatible",
"description": "Overrides the \"compatible\" property of the dt root node",
"type": "string"
},
{
"name": "kernel",
"description": "Linux kernel image file",
"type": "string"
},
{
"name": "usb",
"description": "Set on/off to enable/disable usb",
"type": "bool"
},
{
"name": "suppress-vmdesc",
"description": "Set on to disable self-describing migration",
"type": "bool"
},
{
"name": "dtb",
"description": "Linux kernel device tree file",
"type": "string"
},
{
"name": "firmware",
"description": "Firmware image",
"type": "string"
},
{
"name": "mem-merge",
"description": "Enable/disable memory merge support",
"type": "bool"
},
{
"name": "initrd",
"description": "Linux initial ramdisk file",
"type": "string"
},
{
"name": "enforce-config-section",
"description": "Set on to enforce configuration section migration",
"type": "bool"
},
{
"name": "kvm-shadow-mem",
"description": "KVM shadow MMU size",
"type": "int"
},
{
"name": "cap-ibs",
"description": "Indirect Branch Speculation (broken, fixed-ibs, fixed-ccd)",
"type": "string"
},
{
"name": "cap-cfpc",
"description": "Cache Flush on Privilege Change (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-sbbc",
"description": "Speculation Barrier Bounds Checking (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-dfp",
"description": "Allow Decimal Floating Point (DFP)",
"type": "bool"
},
{
"name": "cap-htm",
"description": "Allow Hardware Transactional Memory (HTM)",
"type": "bool"
},
{
"name": "cap-vsx",
"description": "Allow Vector Scalar Extensions (VSX)",
"type": "bool"
},
{
"name": "cap-ibs",
"description": "Indirect Branch Speculation (broken, fixed-ibs, fixed-ccd)",
"type": "string"
},
{
"name": "cap-cfpc",
"description": "Cache Flush on Privilege Change (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-sbbc",
"description": "Speculation Barrier Bounds Checking (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-dfp",
"description": "Allow Decimal Floating Point (DFP)",
"type": "bool"
},
{
"name": "cap-htm",
"description": "Allow Hardware Transactional Memory (HTM)",
"type": "bool"
},
{
"name": "cap-vsx",
"description": "Allow Vector Scalar Extensions (VSX)",
"type": "bool"
}
],
"id": "libvirt-38"
}
{
"execute": "query-machines",
"id": "libvirt-39"
}
{ {
"return": [ "return": [
{ {
@ -5776,12 +5945,12 @@
"cpu-max": 1 "cpu-max": 1
} }
], ],
"id": "libvirt-38" "id": "libvirt-39"
} }
{ {
"execute": "query-cpu-definitions", "execute": "query-cpu-definitions",
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
@ -7977,35 +8146,35 @@
"static": false "static": false
} }
], ],
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
"execute": "query-tpm-models", "execute": "query-tpm-models",
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"return": [ "return": [
], ],
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"execute": "query-tpm-types", "execute": "query-tpm-types",
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
"return": [ "return": [
"emulator" "emulator"
], ],
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
"execute": "query-command-line-options", "execute": "query-command-line-options",
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
@ -9161,12 +9330,12 @@
"option": "drive" "option": "drive"
} }
], ],
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
"execute": "query-migrate-capabilities", "execute": "query-migrate-capabilities",
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
@ -9228,12 +9397,12 @@
"capability": "dirty-bitmaps" "capability": "dirty-bitmaps"
} }
], ],
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
"execute": "query-qmp-schema", "execute": "query-qmp-schema",
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
@ -20601,7 +20770,7 @@
"meta-type": "object" "meta-type": "object"
} }
], ],
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {

View File

@ -168,7 +168,7 @@
<flag name='tpm-emulator'/> <flag name='tpm-emulator'/>
<version>2011090</version> <version>2011090</version>
<kvmVersion>0</kvmVersion> <kvmVersion>0</kvmVersion>
<microcodeVersion>424244</microcodeVersion> <microcodeVersion>428334</microcodeVersion>
<package>v2.12.0-rc0</package> <package>v2.12.0-rc0</package>
<arch>ppc64</arch> <arch>ppc64</arch>
<cpu type='kvm' name='default'/> <cpu type='kvm' name='default'/>

View File

@ -3936,10 +3936,26 @@
} }
{ {
"execute": "query-machines", "execute": "qom-list-properties",
"arguments": {
"typename": "spapr-machine"
},
"id": "libvirt-37" "id": "libvirt-37"
} }
{
"id": "libvirt-37",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
}
}
{
"execute": "query-machines",
"id": "libvirt-38"
}
{ {
"return": [ "return": [
{ {
@ -3995,12 +4011,12 @@
"alias": "s390-ccw-virtio" "alias": "s390-ccw-virtio"
} }
], ],
"id": "libvirt-37" "id": "libvirt-38"
} }
{ {
"execute": "query-cpu-definitions", "execute": "query-cpu-definitions",
"id": "libvirt-38" "id": "libvirt-39"
} }
{ {
@ -4535,35 +4551,35 @@
"migration-safe": true "migration-safe": true
} }
], ],
"id": "libvirt-38" "id": "libvirt-39"
} }
{ {
"execute": "query-tpm-models", "execute": "query-tpm-models",
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
"return": [ "return": [
], ],
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
"execute": "query-tpm-types", "execute": "query-tpm-types",
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"return": [ "return": [
"emulator" "emulator"
], ],
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"execute": "query-command-line-options", "execute": "query-command-line-options",
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
@ -5688,12 +5704,12 @@
"option": "drive" "option": "drive"
} }
], ],
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
"execute": "query-migrate-capabilities", "execute": "query-migrate-capabilities",
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
@ -5755,12 +5771,12 @@
"capability": "dirty-bitmaps" "capability": "dirty-bitmaps"
} }
], ],
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
"execute": "query-qmp-schema", "execute": "query-qmp-schema",
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
@ -17128,7 +17144,7 @@
"meta-type": "object" "meta-type": "object"
} }
], ],
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
@ -17139,7 +17155,7 @@
"name": "host" "name": "host"
} }
}, },
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
@ -17177,7 +17193,7 @@
} }
} }
}, },
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
@ -17191,11 +17207,11 @@
} }
} }
}, },
"id": "libvirt-45" "id": "libvirt-46"
} }
{ {
"id": "libvirt-45", "id": "libvirt-46",
"error": { "error": {
"class": "GenericError", "class": "GenericError",
"desc": "Property '.migratable' not found" "desc": "Property '.migratable' not found"

View File

@ -135,7 +135,7 @@
<flag name='tpm-emulator'/> <flag name='tpm-emulator'/>
<version>2012000</version> <version>2012000</version>
<kvmVersion>0</kvmVersion> <kvmVersion>0</kvmVersion>
<microcodeVersion>375762</microcodeVersion> <microcodeVersion>375999</microcodeVersion>
<package></package> <package></package>
<arch>s390x</arch> <arch>s390x</arch>
<hostCPU type='kvm' model='z14-base' migratability='no'> <hostCPU type='kvm' model='z14-base' migratability='no'>

View File

@ -4995,10 +4995,26 @@
} }
{ {
"execute": "query-machines", "execute": "qom-list-properties",
"arguments": {
"typename": "spapr-machine"
},
"id": "libvirt-42" "id": "libvirt-42"
} }
{
"id": "libvirt-42",
"error": {
"class": "DeviceNotFound",
"desc": "Class 'spapr-machine' not found"
}
}
{
"execute": "query-machines",
"id": "libvirt-43"
}
{ {
"return": [ "return": [
{ {
@ -5195,12 +5211,12 @@
"cpu-max": 255 "cpu-max": 255
} }
], ],
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
"execute": "query-cpu-definitions", "execute": "query-cpu-definitions",
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
@ -5714,12 +5730,12 @@
"migration-safe": true "migration-safe": true
} }
], ],
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
"execute": "query-tpm-models", "execute": "query-tpm-models",
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
@ -5727,12 +5743,12 @@
"tpm-crb", "tpm-crb",
"tpm-tis" "tpm-tis"
], ],
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
"execute": "query-tpm-types", "execute": "query-tpm-types",
"id": "libvirt-45" "id": "libvirt-46"
} }
{ {
@ -5740,12 +5756,12 @@
"passthrough", "passthrough",
"emulator" "emulator"
], ],
"id": "libvirt-45" "id": "libvirt-46"
} }
{ {
"execute": "query-command-line-options", "execute": "query-command-line-options",
"id": "libvirt-46" "id": "libvirt-47"
} }
{ {
@ -7032,12 +7048,12 @@
"option": "drive" "option": "drive"
} }
], ],
"id": "libvirt-46" "id": "libvirt-47"
} }
{ {
"execute": "query-migrate-capabilities", "execute": "query-migrate-capabilities",
"id": "libvirt-47" "id": "libvirt-48"
} }
{ {
@ -7099,12 +7115,12 @@
"capability": "dirty-bitmaps" "capability": "dirty-bitmaps"
} }
], ],
"id": "libvirt-47" "id": "libvirt-48"
} }
{ {
"execute": "query-qmp-schema", "execute": "query-qmp-schema",
"id": "libvirt-48" "id": "libvirt-49"
} }
{ {
@ -18472,7 +18488,7 @@
"meta-type": "object" "meta-type": "object"
} }
], ],
"id": "libvirt-48" "id": "libvirt-49"
} }
{ {
@ -18483,7 +18499,7 @@
"name": "host" "name": "host"
} }
}, },
"id": "libvirt-49" "id": "libvirt-50"
} }
{ {
@ -18673,7 +18689,7 @@
} }
} }
}, },
"id": "libvirt-49" "id": "libvirt-50"
} }
{ {
@ -18865,7 +18881,7 @@
} }
} }
}, },
"id": "libvirt-50" "id": "libvirt-51"
} }
{ {
@ -19120,7 +19136,7 @@
} }
} }
}, },
"id": "libvirt-50" "id": "libvirt-51"
} }
{ {
@ -19134,7 +19150,7 @@
} }
} }
}, },
"id": "libvirt-51" "id": "libvirt-52"
} }
{ {
@ -19324,7 +19340,7 @@
} }
} }
}, },
"id": "libvirt-51" "id": "libvirt-52"
} }
{ {
@ -19516,7 +19532,7 @@
} }
} }
}, },
"id": "libvirt-52" "id": "libvirt-53"
} }
{ {
@ -19771,12 +19787,12 @@
} }
} }
}, },
"id": "libvirt-52" "id": "libvirt-53"
} }
{ {
"execute": "query-sev-capabilities", "execute": "query-sev-capabilities",
"id": "libvirt-53" "id": "libvirt-54"
} }
{ {
@ -19786,7 +19802,7 @@
"cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA",
"pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA"
}, },
"id": "libvirt-52" "id": "libvirt-54"
} }
{ {

View File

@ -213,7 +213,7 @@
<flag name='sev-guest'/> <flag name='sev-guest'/>
<version>2011090</version> <version>2011090</version>
<kvmVersion>0</kvmVersion> <kvmVersion>0</kvmVersion>
<microcodeVersion>415959</microcodeVersion> <microcodeVersion>416196</microcodeVersion>
<package>v2.12.0-rc0</package> <package>v2.12.0-rc0</package>
<arch>x86_64</arch> <arch>x86_64</arch>
<hostCPU type='kvm' model='base' migratability='yes'> <hostCPU type='kvm' model='base' migratability='yes'>

View File

@ -5720,10 +5720,189 @@
} }
{ {
"execute": "query-machines", "execute": "qom-list-properties",
"arguments": {
"typename": "spapr-machine"
},
"id": "libvirt-38" "id": "libvirt-38"
} }
{
"return": [
{
"name": "graphics",
"description": "Set on/off to enable/disable graphics emulation",
"type": "bool"
},
{
"name": "phandle-start",
"description": "The first phandle ID we may generate dynamically",
"type": "int"
},
{
"name": "dump-guest-core",
"description": "Include guest memory in a core dump",
"type": "bool"
},
{
"name": "kernel-irqchip",
"description": "Configure KVM in-kernel irqchip",
"type": "on|off|split"
},
{
"name": "accel",
"description": "Accelerator list",
"type": "string"
},
{
"name": "append",
"description": "Linux kernel command line",
"type": "string"
},
{
"name": "dumpdtb",
"description": "Dump current dtb to a file and quit",
"type": "string"
},
{
"name": "memory-encryption",
"description": "Set memory encyption object to use",
"type": "string"
},
{
"name": "igd-passthru",
"description": "Set on/off to enable/disable igd passthrou",
"type": "bool"
},
{
"name": "dt-compatible",
"description": "Overrides the \"compatible\" property of the dt root node",
"type": "string"
},
{
"name": "kernel",
"description": "Linux kernel image file",
"type": "string"
},
{
"name": "usb",
"description": "Set on/off to enable/disable usb",
"type": "bool"
},
{
"name": "suppress-vmdesc",
"description": "Set on to disable self-describing migration",
"type": "bool"
},
{
"name": "dtb",
"description": "Linux kernel device tree file",
"type": "string"
},
{
"name": "firmware",
"description": "Firmware image",
"type": "string"
},
{
"name": "mem-merge",
"description": "Enable/disable memory merge support",
"type": "bool"
},
{
"name": "initrd",
"description": "Linux initial ramdisk file",
"type": "string"
},
{
"name": "enforce-config-section",
"description": "Set on to enforce configuration section migration",
"type": "bool"
},
{
"name": "kvm-shadow-mem",
"description": "KVM shadow MMU size",
"type": "int"
},
{
"name": "cap-hpt-max-page-size",
"description": "Maximum page size for Hash Page Table guests",
"type": "int"
},
{
"name": "cap-ibs",
"description": "Indirect Branch Speculation (broken, fixed-ibs, fixed-ccd)",
"type": "string"
},
{
"name": "cap-cfpc",
"description": "Cache Flush on Privilege Change (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-sbbc",
"description": "Speculation Barrier Bounds Checking (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-dfp",
"description": "Allow Decimal Floating Point (DFP)",
"type": "bool"
},
{
"name": "cap-htm",
"description": "Allow Hardware Transactional Memory (HTM)",
"type": "bool"
},
{
"name": "cap-vsx",
"description": "Allow Vector Scalar Extensions (VSX)",
"type": "bool"
},
{
"name": "cap-hpt-max-page-size",
"description": "Maximum page size for Hash Page Table guests",
"type": "int"
},
{
"name": "cap-ibs",
"description": "Indirect Branch Speculation (broken, fixed-ibs, fixed-ccd)",
"type": "string"
},
{
"name": "cap-cfpc",
"description": "Cache Flush on Privilege Change (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-sbbc",
"description": "Speculation Barrier Bounds Checking (broken, workaround, fixed)",
"type": "string"
},
{
"name": "cap-dfp",
"description": "Allow Decimal Floating Point (DFP)",
"type": "bool"
},
{
"name": "cap-htm",
"description": "Allow Hardware Transactional Memory (HTM)",
"type": "bool"
},
{
"name": "cap-vsx",
"description": "Allow Vector Scalar Extensions (VSX)",
"type": "bool"
}
],
"id": "libvirt-38"
}
{
"execute": "query-machines",
"id": "libvirt-39"
}
{ {
"return": [ "return": [
{ {
@ -5864,12 +6043,12 @@
"cpu-max": 1 "cpu-max": 1
} }
], ],
"id": "libvirt-38" "id": "libvirt-39"
} }
{ {
"execute": "query-cpu-definitions", "execute": "query-cpu-definitions",
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
@ -8065,35 +8244,35 @@
"static": false "static": false
} }
], ],
"id": "libvirt-39" "id": "libvirt-40"
} }
{ {
"execute": "query-tpm-models", "execute": "query-tpm-models",
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"return": [ "return": [
], ],
"id": "libvirt-40" "id": "libvirt-41"
} }
{ {
"execute": "query-tpm-types", "execute": "query-tpm-types",
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
"return": [ "return": [
"emulator" "emulator"
], ],
"id": "libvirt-41" "id": "libvirt-42"
} }
{ {
"execute": "query-command-line-options", "execute": "query-command-line-options",
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
@ -9223,12 +9402,12 @@
"option": "drive" "option": "drive"
} }
], ],
"id": "libvirt-42" "id": "libvirt-43"
} }
{ {
"execute": "query-migrate-capabilities", "execute": "query-migrate-capabilities",
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
@ -9298,12 +9477,12 @@
"capability": "late-block-activate" "capability": "late-block-activate"
} }
], ],
"id": "libvirt-43" "id": "libvirt-44"
} }
{ {
"execute": "query-qmp-schema", "execute": "query-qmp-schema",
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {
@ -21462,7 +21641,7 @@
"meta-type": "object" "meta-type": "object"
} }
], ],
"id": "libvirt-44" "id": "libvirt-45"
} }
{ {

View File

@ -165,9 +165,10 @@
<flag name='vhost-vsock'/> <flag name='vhost-vsock'/>
<flag name='chardev-fd-pass'/> <flag name='chardev-fd-pass'/>
<flag name='tpm-emulator'/> <flag name='tpm-emulator'/>
<flag name='machine.pseries.cap-hpt-max-page-size'/>
<version>2012050</version> <version>2012050</version>
<kvmVersion>0</kvmVersion> <kvmVersion>0</kvmVersion>
<microcodeVersion>442399</microcodeVersion> <microcodeVersion>446771</microcodeVersion>
<package>v2.12.0-1689-g518d23a</package> <package>v2.12.0-1689-g518d23a</package>
<arch>ppc64</arch> <arch>ppc64</arch>
<cpu type='kvm' name='default'/> <cpu type='kvm' name='default'/>