The following changes since commit 887cba855bb6ff4775256f7968409281350b568c:
configure: Fix cross-building for RISCV host (v5) (2023-07-11 17:56:09 +0100) are available in the Git repository at: https://github.com/davidhildenbrand/qemu.git tags/mem-2023-07-12 for you to fetch changes up to 339a8bbdfed910d0baa392c2071fd0e09b30aed9: virtio-mem-pci: Device unplug support (2023-07-12 09:27:32 +0200) ---------------------------------------------------------------- Hi, "Host Memory Backends" and "Memory devices" queue ("mem"): - Memory device cleanups (especially around machine initialization) - "x-ignore-shared" migration support for virtio-mem - Add an abstract virtio-md-pci device as a common parent for virtio-mem-pci and virtio-pmem-pci (virtio based memory devices) - Device unplug support for virtio-mem-pci ---------------------------------------------------------------- David Hildenbrand (21): memory-device: Unify enabled vs. supported error messages memory-device: Introduce machine_memory_devices_init() hw/arm/virt: Use machine_memory_devices_init() hw/ppc/spapr: Use machine_memory_devices_init() hw/loongarch/virt: Use machine_memory_devices_init() hw/i386/pc: Use machine_memory_devices_init() hw/i386/acpi-build: Rely on machine->device_memory when building SRAT hw/i386/pc: Remove PC_MACHINE_DEVMEM_REGION_SIZE memory-device: Refactor memory_device_pre_plug() memory-device: Track used region size in DeviceMemoryState softmmu/physmem: Warn with ram_block_discard_range() on MAP_PRIVATE file mapping virtio-mem: Skip most of virtio_mem_unplug_all() without plugged memory migration/ram: Expose ramblock_is_ignored() as migrate_ram_is_ignored() virtio-mem: Support "x-ignore-shared" migration virtio-md-pci: New parent type for virtio-mem-pci and virtio-pmem-pci pc: Factor out (un)plug handling of virtio-md-pci devices arm/virt: Use virtio-md-pci (un)plug functions virtio-md-pci: Handle unplug of virtio based memory devices virtio-md-pci: Support unplug requests for compatible devices virtio-mem: Prepare for device unplug support virtio-mem-pci: Device unplug support MAINTAINERS | 7 ++ hw/arm/virt.c | 90 ++++------------------- hw/i386/acpi-build.c | 9 +-- hw/i386/pc.c | 126 ++++--------------------------- hw/loongarch/virt.c | 12 +-- hw/mem/memory-device.c | 69 ++++++++--------- hw/ppc/spapr.c | 37 +++++----- hw/ppc/spapr_hcall.c | 2 +- hw/virtio/Kconfig | 8 +- hw/virtio/meson.build | 1 + hw/virtio/virtio-md-pci.c | 151 ++++++++++++++++++++++++++++++++++++++ hw/virtio/virtio-mem-pci.c | 54 ++++++++++++-- hw/virtio/virtio-mem-pci.h | 6 +- hw/virtio/virtio-mem.c | 92 ++++++++++++++++++----- hw/virtio/virtio-pmem-pci.c | 5 +- hw/virtio/virtio-pmem-pci.h | 6 +- include/hw/boards.h | 3 + include/hw/i386/pc.h | 1 - include/hw/virtio/virtio-md-pci.h | 44 +++++++++++ include/hw/virtio/virtio-mem.h | 1 + include/migration/misc.h | 1 + migration/postcopy-ram.c | 2 +- migration/ram.c | 14 ++-- migration/ram.h | 3 +- softmmu/physmem.c | 18 +++++ stubs/meson.build | 1 + stubs/virtio-md-pci.c | 24 ++++++ 27 files changed, 479 insertions(+), 308 deletions(-) create mode 100644 hw/virtio/virtio-md-pci.c create mode 100644 include/hw/virtio/virtio-md-pci.h create mode 100644 stubs/virtio-md-pci.c -- 2.41.0