]> git.ipfire.org Git - thirdparty/libvirt.git/commit
qemu: Use memory-backend-* for regular guest memory
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 25 May 2020 11:56:45 +0000 (13:56 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 1 Oct 2020 10:06:22 +0000 (12:06 +0200)
commit88957116c9d3cb4705380c3702c9d4315fb500bb
treede666cc41f0528b2b1232341ae5329e5075b3d34
parentb647654cbbe59589a8b014a63f43c38c91c03353
qemu: Use memory-backend-* for regular guest memory

So far, Libvirt configures memory-backend-* for memory hotplug,
possibly NUMA nodes and in a few other cases. This patch
switches to constructing the memory-backend-* command line for
all cases. To keep ability to migrate guests a little hack is
used: the ID of the object is set to the one that QEMU uses
internally anyways. These IDs are stable (first started to appear
somewhere around v0.13.0-rc0~96) and can't change.

In fact, this patch does exactly what QEMU does internally. The
reason for moving the logic into Libvirt is that QEMU wants to
deprecate the old style of specifying memory.

So far, only x84_64 test cases are changed, because tests for
other architectures use older capabilities, which still lack the
QEMU_CAPS_MACHINE_MEMORY_BACKEND capability and they don't report
the RAM ID.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1836043

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
150 files changed:
src/qemu/qemu_command.c
tests/qemuxml2argvdata/blkdeviotune-group-num.x86_64-latest.args
tests/qemuxml2argvdata/blkdeviotune-max-length.x86_64-latest.args
tests/qemuxml2argvdata/blkdeviotune-max.x86_64-latest.args
tests/qemuxml2argvdata/channel-unix-guestfwd.x86_64-latest.args
tests/qemuxml2argvdata/console-virtio-unix.x86_64-latest.args
tests/qemuxml2argvdata/controller-virtio-scsi.x86_64-latest.args
tests/qemuxml2argvdata/cpu-Icelake-Server-pconfig.x86_64-latest.args
tests/qemuxml2argvdata/cpu-translation.x86_64-latest.args
tests/qemuxml2argvdata/cputune-cpuset-big-id.x86_64-latest.args
tests/qemuxml2argvdata/disk-aio-io_uring.x86_64-latest.args
tests/qemuxml2argvdata/disk-aio.x86_64-latest.args
tests/qemuxml2argvdata/disk-backing-chains-noindex.x86_64-latest.args
tests/qemuxml2argvdata/disk-cache.x86_64-latest.args
tests/qemuxml2argvdata/disk-cdrom-bus-other.x86_64-latest.args
tests/qemuxml2argvdata/disk-cdrom-empty-network-invalid.x86_64-latest.args
tests/qemuxml2argvdata/disk-cdrom-network.x86_64-latest.args
tests/qemuxml2argvdata/disk-cdrom-tray.x86_64-latest.args
tests/qemuxml2argvdata/disk-cdrom.x86_64-latest.args
tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args
tests/qemuxml2argvdata/disk-detect-zeroes.x86_64-latest.args
tests/qemuxml2argvdata/disk-discard.x86_64-latest.args
tests/qemuxml2argvdata/disk-error-policy.x86_64-latest.args
tests/qemuxml2argvdata/disk-floppy-q35-2_11.x86_64-latest.args
tests/qemuxml2argvdata/disk-floppy-q35-2_9.x86_64-latest.args
tests/qemuxml2argvdata/disk-floppy.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-gluster.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-http.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-iscsi.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-nbd.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-rbd.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-sheepdog.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-source-auth.x86_64-latest.args
tests/qemuxml2argvdata/disk-network-tlsx509-nbd.x86_64-latest.args
tests/qemuxml2argvdata/disk-nvme.x86_64-latest.args
tests/qemuxml2argvdata/disk-readonly-disk.x86_64-latest.args
tests/qemuxml2argvdata/disk-scsi-device-auto.x86_64-latest.args
tests/qemuxml2argvdata/disk-scsi.x86_64-latest.args
tests/qemuxml2argvdata/disk-shared.x86_64-latest.args
tests/qemuxml2argvdata/disk-slices.x86_64-latest.args
tests/qemuxml2argvdata/disk-transient.x86_64-latest.args
tests/qemuxml2argvdata/disk-virtio-scsi-reservations.x86_64-latest.args
tests/qemuxml2argvdata/eoi-disabled.x86_64-latest.args
tests/qemuxml2argvdata/eoi-enabled.x86_64-latest.args
tests/qemuxml2argvdata/floppy-drive-fat.x86_64-latest.args
tests/qemuxml2argvdata/fs9p.x86_64-latest.args
tests/qemuxml2argvdata/genid-auto.x86_64-latest.args
tests/qemuxml2argvdata/genid.x86_64-latest.args
tests/qemuxml2argvdata/graphics-egl-headless-rendernode.x86_64-latest.args
tests/qemuxml2argvdata/graphics-egl-headless.x86_64-latest.args
tests/qemuxml2argvdata/graphics-spice-gl-auto-rendernode.x86_64-latest.args
tests/qemuxml2argvdata/graphics-vnc-tls-secret.x86_64-latest.args
tests/qemuxml2argvdata/graphics-vnc-tls.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-mdev-display-ramfb.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-mdev-display-spice-egl-headless.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-mdev-display-spice-opengl.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-mdev-display-vnc-egl-headless.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-mdev-display-vnc.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-scsi-lsi.x86_64-latest.args
tests/qemuxml2argvdata/hostdev-scsi-virtio-scsi.x86_64-latest.args
tests/qemuxml2argvdata/hugepages-nvdimm.x86_64-latest.args
tests/qemuxml2argvdata/hyperv-off.x86_64-latest.args
tests/qemuxml2argvdata/hyperv-panic.x86_64-latest.args
tests/qemuxml2argvdata/hyperv-stimer-direct.x86_64-latest.args
tests/qemuxml2argvdata/hyperv.x86_64-latest.args
tests/qemuxml2argvdata/intel-iommu-aw-bits.x86_64-latest.args
tests/qemuxml2argvdata/intel-iommu-caching-mode.x86_64-latest.args
tests/qemuxml2argvdata/intel-iommu-device-iotlb.x86_64-latest.args
tests/qemuxml2argvdata/intel-iommu-eim.x86_64-latest.args
tests/qemuxml2argvdata/intel-iommu.x86_64-latest.args
tests/qemuxml2argvdata/iothreads-virtio-scsi-pci.x86_64-latest.args
tests/qemuxml2argvdata/kvmclock+eoi-disabled.x86_64-latest.args
tests/qemuxml2argvdata/luks-disks-source-qcow2.x86_64-latest.args
tests/qemuxml2argvdata/memfd-memory-default-hugepage.x86_64-latest.args
tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args
tests/qemuxml2argvdata/memory-hotplug-nvdimm-access.x86_64-latest.args
tests/qemuxml2argvdata/memory-hotplug-nvdimm-align.x86_64-latest.args
tests/qemuxml2argvdata/memory-hotplug-nvdimm-label.x86_64-latest.args
tests/qemuxml2argvdata/memory-hotplug-nvdimm-pmem.x86_64-latest.args
tests/qemuxml2argvdata/memory-hotplug-nvdimm-readonly.x86_64-latest.args
tests/qemuxml2argvdata/memory-hotplug-nvdimm.x86_64-latest.args
tests/qemuxml2argvdata/mlock-off.x86_64-latest.args
tests/qemuxml2argvdata/mlock-on.x86_64-latest.args
tests/qemuxml2argvdata/net-vhostuser.x86_64-latest.args
tests/qemuxml2argvdata/numatune-hmat.x86_64-latest.args
tests/qemuxml2argvdata/os-firmware-bios.x86_64-latest.args
tests/qemuxml2argvdata/os-firmware-efi-secboot.x86_64-latest.args
tests/qemuxml2argvdata/os-firmware-efi.x86_64-latest.args
tests/qemuxml2argvdata/parallel-unix-chardev.x86_64-latest.args
tests/qemuxml2argvdata/pcie-root-port-nohotplug.x86_64-latest.args
tests/qemuxml2argvdata/pv-spinlock-disabled.x86_64-latest.args
tests/qemuxml2argvdata/pv-spinlock-enabled.x86_64-latest.args
tests/qemuxml2argvdata/qemu-ns.x86_64-latest.args
tests/qemuxml2argvdata/serial-unix-chardev.x86_64-latest.args
tests/qemuxml2argvdata/smartcard-passthrough-unix.x86_64-latest.args
tests/qemuxml2argvdata/tpm-emulator-tpm2-enc.x86_64-latest.args
tests/qemuxml2argvdata/tpm-emulator-tpm2.x86_64-latest.args
tests/qemuxml2argvdata/tpm-emulator.x86_64-latest.args
tests/qemuxml2argvdata/tpm-passthrough-crb.x86_64-latest.args
tests/qemuxml2argvdata/tpm-passthrough.x86_64-latest.args
tests/qemuxml2argvdata/tseg-explicit-size.x86_64-latest.args
tests/qemuxml2argvdata/usb-redir-unix.x86_64-latest.args
tests/qemuxml2argvdata/vhost-user-fs-fd-memory.x86_64-latest.args
tests/qemuxml2argvdata/vhost-user-fs-hugepages.x86_64-latest.args
tests/qemuxml2argvdata/vhost-user-gpu-secondary.x86_64-latest.args
tests/qemuxml2argvdata/vhost-user-vga.x86_64-latest.args
tests/qemuxml2argvdata/vhost-vsock-auto.x86_64-latest.args
tests/qemuxml2argvdata/vhost-vsock.x86_64-latest.args
tests/qemuxml2argvdata/video-bochs-display-device.x86_64-latest.args
tests/qemuxml2argvdata/video-qxl-device-vram64.x86_64-latest.args
tests/qemuxml2argvdata/video-qxl-sec-device-vram64.x86_64-latest.args
tests/qemuxml2argvdata/video-ramfb-display-device.x86_64-latest.args
tests/qemuxml2argvdata/virtio-9p-multidevs.x86_64-latest.args
tests/qemuxml2argvdata/virtio-non-transitional.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-controller-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-controller-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-controller-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-disk-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-disk-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-disk-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-fs-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-fs-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-fs-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-input-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-input-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-input-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-memballoon-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-memballoon-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-memballoon-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-net-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-net-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-net-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-rng-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-rng-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-rng-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-video-ats.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-video-iommu.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options-video-packed.x86_64-latest.args
tests/qemuxml2argvdata/virtio-options.x86_64-latest.args
tests/qemuxml2argvdata/virtio-rng-builtin.x86_64-latest.args
tests/qemuxml2argvdata/virtio-rng-egd-unix.x86_64-latest.args
tests/qemuxml2argvdata/virtio-transitional.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-pc-graphics.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-pc-headless.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-q35-graphics.x86_64-latest.args
tests/qemuxml2argvdata/x86_64-q35-headless.x86_64-latest.args