DISCLAIMER: These patches depend on a yet not merged QEMU patch: https://lists.nongnu.org/archive/html/qemu-devel/2020-05/msg07255.html This is another round of patches that are adapting Libvirt to new QEMU command line so that they can deprecate the old one. See 8/8 for explanation. Michal Prívozník (8): qemuBuildMemoryBackendProps: Move @prealloc setting to backend agnostic part qemuBuildMemoryBackendProps: Respect //memoryBacking/allocation/@mode=immediate qemuBuildMemoryBackendProps: Prealloc mem for memfd backend qemuBuildMemoryBackendProps: Fix const correctness qemu: Introduce QEMU_CAPS_MACHINE_MEMORY_BACKEND qemu: Track default-ram-id machine attribute qemucapabilitiestest: Update 5.1.0 data qemu: Use memory-backend-* for regular guest memory src/qemu/qemu_capabilities.c | 42 ++- src/qemu/qemu_capabilities.h | 6 + src/qemu/qemu_capspriv.h | 3 +- src/qemu/qemu_command.c | 98 ++++-- src/qemu/qemu_command.h | 4 +- src/qemu/qemu_monitor.c | 1 + src/qemu/qemu_monitor.h | 1 + src/qemu/qemu_monitor_json.c | 11 + .../caps_5.0.0.aarch64.xml | 1 + .../qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + .../caps_5.0.0.riscv64.xml | 1 + .../caps_5.0.0.x86_64.xml | 1 + .../caps_5.1.0.x86_64.replies | 280 ++++++++++++------ .../caps_5.1.0.x86_64.xml | 181 +++++------ .../blkdeviotune-group-num.x86_64-latest.args | 3 +- ...blkdeviotune-max-length.x86_64-latest.args | 3 +- .../blkdeviotune-max.x86_64-latest.args | 3 +- .../channel-unix-guestfwd.x86_64-latest.args | 3 +- .../console-virtio-unix.x86_64-latest.args | 3 +- .../controller-virtio-scsi.x86_64-latest.args | 3 +- ...-Icelake-Server-pconfig.x86_64-latest.args | 3 +- .../cpu-translation.x86_64-latest.args | 3 +- .../disk-aio-io_uring.x86_64-latest.args | 3 +- .../disk-aio.x86_64-latest.args | 3 +- ...-backing-chains-noindex.x86_64-latest.args | 3 +- .../disk-cache.x86_64-latest.args | 4 +- .../disk-cdrom-bus-other.x86_64-latest.args | 3 +- ...m-empty-network-invalid.x86_64-latest.args | 3 +- .../disk-cdrom-network.x86_64-latest.args | 3 +- .../disk-cdrom-tray.x86_64-latest.args | 3 +- .../disk-cdrom.x86_64-latest.args | 3 +- .../disk-copy_on_read.x86_64-latest.args | 3 +- .../disk-detect-zeroes.x86_64-latest.args | 3 +- .../disk-discard.x86_64-latest.args | 3 +- .../disk-error-policy.x86_64-latest.args | 3 +- .../disk-floppy-q35-2_11.x86_64-latest.args | 4 +- .../disk-floppy-q35-2_9.x86_64-latest.args | 4 +- .../disk-floppy.x86_64-latest.args | 3 +- .../disk-network-gluster.x86_64-latest.args | 3 +- .../disk-network-http.x86_64-latest.args | 3 +- .../disk-network-iscsi.x86_64-latest.args | 3 +- .../disk-network-nbd.x86_64-latest.args | 3 +- .../disk-network-rbd.x86_64-latest.args | 3 +- .../disk-network-sheepdog.x86_64-latest.args | 3 +- ...isk-network-source-auth.x86_64-latest.args | 3 +- .../disk-network-tlsx509.x86_64-latest.args | 3 +- .../disk-nvme.x86_64-latest.args | 3 +- .../disk-readonly-disk.x86_64-latest.args | 3 +- .../disk-scsi-device-auto.x86_64-latest.args | 3 +- .../disk-scsi.x86_64-latest.args | 3 +- .../disk-shared.x86_64-latest.args | 3 +- .../disk-slices.x86_64-latest.args | 3 +- ...irtio-scsi-reservations.x86_64-latest.args | 3 +- .../eoi-disabled.x86_64-latest.args | 3 +- .../eoi-enabled.x86_64-latest.args | 3 +- .../floppy-drive-fat.x86_64-latest.args | 3 +- .../qemuxml2argvdata/fs9p.x86_64-latest.args | 3 +- .../genid-auto.x86_64-latest.args | 3 +- .../qemuxml2argvdata/genid.x86_64-latest.args | 3 +- ...egl-headless-rendernode.x86_64-latest.args | 3 +- .../graphics-egl-headless.x86_64-latest.args | 3 +- ...pice-gl-auto-rendernode.x86_64-latest.args | 3 +- ...graphics-vnc-tls-secret.x86_64-latest.args | 3 +- .../graphics-vnc-tls.x86_64-latest.args | 3 +- ...tdev-mdev-display-ramfb.x86_64-latest.args | 3 +- ...play-spice-egl-headless.x86_64-latest.args | 3 +- ...ev-display-spice-opengl.x86_64-latest.args | 3 +- ...isplay-vnc-egl-headless.x86_64-latest.args | 3 +- ...ostdev-mdev-display-vnc.x86_64-latest.args | 3 +- .../qemuxml2argvdata/hugepages-memaccess.args | 30 +- .../hugepages-memaccess2.args | 12 +- .../hugepages-numa-nodeset-part.args | 5 +- .../hugepages-numa-nodeset.args | 20 +- .../hugepages-nvdimm.x86_64-latest.args | 15 +- tests/qemuxml2argvdata/hugepages-shared.args | 24 +- .../hyperv-off.x86_64-latest.args | 3 +- .../hyperv-panic.x86_64-latest.args | 3 +- .../hyperv-stimer-direct.x86_64-latest.args | 3 +- .../hyperv.x86_64-latest.args | 3 +- ...ntel-iommu-caching-mode.x86_64-latest.args | 4 +- ...ntel-iommu-device-iotlb.x86_64-latest.args | 4 +- .../intel-iommu-eim.x86_64-latest.args | 4 +- .../intel-iommu.x86_64-latest.args | 3 +- ...threads-virtio-scsi-pci.x86_64-latest.args | 3 +- .../kvmclock+eoi-disabled.x86_64-latest.args | 3 +- ...luks-disks-source-qcow2.x86_64-latest.args | 4 +- ...memory-default-hugepage.x86_64-latest.args | 8 +- .../memfd-memory-numa.x86_64-latest.args | 8 +- .../memory-hotplug-dimm-addr.args | 6 +- .../qemuxml2argvdata/memory-hotplug-dimm.args | 6 +- ...y-hotplug-nvdimm-access.x86_64-latest.args | 8 +- ...ry-hotplug-nvdimm-align.x86_64-latest.args | 8 +- ...ry-hotplug-nvdimm-label.x86_64-latest.args | 8 +- ...ory-hotplug-nvdimm-pmem.x86_64-latest.args | 8 +- ...ory-hotplug-nvdimm-ppc64.ppc64-latest.args | 2 +- ...hotplug-nvdimm-readonly.x86_64-latest.args | 8 +- .../memory-hotplug-nvdimm.x86_64-latest.args | 6 +- .../mlock-off.x86_64-latest.args | 3 +- .../mlock-on.x86_64-latest.args | 3 +- .../net-vhostuser.x86_64-latest.args | 3 +- .../os-firmware-bios.x86_64-latest.args | 4 +- ...os-firmware-efi-secboot.x86_64-latest.args | 4 +- .../os-firmware-efi.x86_64-latest.args | 4 +- .../qemuxml2argvdata/pages-dimm-discard.args | 4 +- .../parallel-unix-chardev.x86_64-latest.args | 3 +- ...cie-root-port-nohotplug.x86_64-latest.args | 3 +- .../pv-spinlock-disabled.x86_64-latest.args | 3 +- .../pv-spinlock-enabled.x86_64-latest.args | 3 +- .../qemu-ns.x86_64-latest.args | 3 +- .../serial-unix-chardev.x86_64-latest.args | 3 +- ...rtcard-passthrough-unix.x86_64-latest.args | 3 +- .../tpm-emulator-tpm2-enc.x86_64-latest.args | 4 +- .../tpm-emulator-tpm2.x86_64-latest.args | 4 +- .../tpm-emulator.x86_64-latest.args | 4 +- .../tpm-passthrough-crb.x86_64-latest.args | 4 +- .../tpm-passthrough.x86_64-latest.args | 4 +- .../tseg-explicit-size.x86_64-latest.args | 4 +- .../usb-redir-unix.x86_64-latest.args | 3 +- tests/qemuxml2argvdata/user-aliases.args | 16 +- ...vhost-user-fs-fd-memory.x86_64-latest.args | 4 +- ...vhost-user-fs-hugepages.x86_64-latest.args | 10 +- ...host-user-gpu-secondary.x86_64-latest.args | 3 +- .../vhost-user-vga.x86_64-latest.args | 3 +- .../vhost-vsock-auto.x86_64-latest.args | 4 +- .../vhost-vsock.x86_64-latest.args | 3 +- ...eo-bochs-display-device.x86_64-latest.args | 3 +- ...video-qxl-device-vram64.x86_64-latest.args | 3 +- ...o-qxl-sec-device-vram64.x86_64-latest.args | 3 +- ...eo-ramfb-display-device.x86_64-latest.args | 3 +- .../virtio-9p-multidevs.x86_64-latest.args | 3 +- ...virtio-non-transitional.x86_64-latest.args | 3 +- ...-options-controller-ats.x86_64-latest.args | 3 +- ...ptions-controller-iommu.x86_64-latest.args | 3 +- ...tions-controller-packed.x86_64-latest.args | 3 +- ...virtio-options-disk-ats.x86_64-latest.args | 3 +- ...rtio-options-disk-iommu.x86_64-latest.args | 3 +- ...tio-options-disk-packed.x86_64-latest.args | 3 +- .../virtio-options-fs-ats.x86_64-latest.args | 3 +- ...virtio-options-fs-iommu.x86_64-latest.args | 3 +- ...irtio-options-fs-packed.x86_64-latest.args | 3 +- ...irtio-options-input-ats.x86_64-latest.args | 3 +- ...tio-options-input-iommu.x86_64-latest.args | 3 +- ...io-options-input-packed.x86_64-latest.args | 3 +- ...-options-memballoon-ats.x86_64-latest.args | 3 +- ...ptions-memballoon-iommu.x86_64-latest.args | 3 +- ...tions-memballoon-packed.x86_64-latest.args | 3 +- .../virtio-options-net-ats.x86_64-latest.args | 3 +- ...irtio-options-net-iommu.x86_64-latest.args | 3 +- ...rtio-options-net-packed.x86_64-latest.args | 3 +- .../virtio-options-rng-ats.x86_64-latest.args | 3 +- ...irtio-options-rng-iommu.x86_64-latest.args | 3 +- ...rtio-options-rng-packed.x86_64-latest.args | 3 +- ...irtio-options-video-ats.x86_64-latest.args | 3 +- ...tio-options-video-iommu.x86_64-latest.args | 3 +- ...io-options-video-packed.x86_64-latest.args | 3 +- .../virtio-options.x86_64-latest.args | 3 +- .../virtio-rng-builtin.x86_64-latest.args | 3 +- .../virtio-rng-egd-unix.x86_64-latest.args | 3 +- .../virtio-transitional.x86_64-latest.args | 3 +- ...-default-cpu-kvm-pc-4.2.x86_64-latest.args | 4 +- ...default-cpu-kvm-q35-4.2.x86_64-latest.args | 4 +- ...-default-cpu-tcg-pc-4.2.x86_64-latest.args | 4 +- ...default-cpu-tcg-q35-4.2.x86_64-latest.args | 4 +- .../x86_64-pc-graphics.x86_64-latest.args | 3 +- .../x86_64-pc-headless.x86_64-latest.args | 3 +- .../x86_64-q35-graphics.x86_64-latest.args | 3 +- .../x86_64-q35-headless.x86_64-latest.args | 3 +- tests/testutilsqemu.c | 15 +- 168 files changed, 843 insertions(+), 436 deletions(-) -- 2.26.2