The following changes since commit a51e5124a655b3dad80b36b18547cb1eca2c5eb2:
Merge tag 'pull-omnibus-111023-1' of https://gitlab.com/stsquad/qemu into staging (2023-10-11 09:43:10 -0400) are available in the Git repository at: https://github.com/davidhildenbrand/qemu.git tags/mem-2023-10-12 for you to fetch changes up to ee6398d862c108f8136a26d93d26680f3d222a3a: virtio-mem: Mark memslot alias memory regions unmergeable (2023-10-12 14:15:22 +0200) ---------------------------------------------------------------- Hi, "Host Memory Backends" and "Memory devices" queue ("mem"): - Support memory devices with multiple memslots - Support memory devices that dynamically consume memslots - Support memory devices that can automatically decide on the number of memslots to use - virtio-mem support for exposing memory dynamically via multiple memslots - Some required cleanups/refactorings ---------------------------------------------------------------- David Hildenbrand (18): vhost: Rework memslot filtering and fix "used_memslot" tracking vhost: Remove vhost_backend_can_merge() callback softmmu/physmem: Fixup qemu_ram_block_from_host() documentation kvm: Return number of free memslots vhost: Return number of free memslots memory-device: Support memory devices with multiple memslots stubs: Rename qmp_memory_device.c to memory_device.c memory-device: Track required and actually used memslots in DeviceMemoryState memory-device,vhost: Support memory devices that dynamically consume memslots kvm: Add stub for kvm_get_max_memslots() vhost: Add vhost_get_max_memslots() memory-device,vhost: Support automatic decision on the number of memslots memory: Clarify mapping requirements for RamDiscardManager virtio-mem: Pass non-const VirtIOMEM via virtio_mem_range_cb virtio-mem: Update state to match bitmap as soon as it's been migrated virtio-mem: Expose device memory dynamically via multiple memslots if enabled memory,vhost: Allow for marking memory device memory regions unmergeable virtio-mem: Mark memslot alias memory regions unmergeable MAINTAINERS | 1 + accel/kvm/kvm-all.c | 35 +- accel/stubs/kvm-stub.c | 9 +- hw/mem/memory-device.c | 196 ++++++++++- hw/virtio/vhost-stub.c | 9 +- hw/virtio/vhost-user.c | 21 +- hw/virtio/vhost-vdpa.c | 1 - hw/virtio/vhost.c | 103 +++++- hw/virtio/virtio-mem-pci.c | 21 ++ hw/virtio/virtio-mem.c | 330 +++++++++++++++++- include/exec/cpu-common.h | 15 + include/exec/memory.h | 27 +- include/hw/boards.h | 14 +- include/hw/mem/memory-device.h | 57 +++ include/hw/virtio/vhost-backend.h | 9 +- include/hw/virtio/vhost.h | 3 +- include/hw/virtio/virtio-mem.h | 32 +- include/sysemu/kvm.h | 4 +- include/sysemu/kvm_int.h | 1 + .../{qmp_memory_device.c => memory_device.c} | 10 + stubs/meson.build | 2 +- system/memory.c | 35 +- system/physmem.c | 17 - 23 files changed, 839 insertions(+), 113 deletions(-) rename stubs/{qmp_memory_device.c => memory_device.c} (56%) -- 2.41.0