One limitation of virtio-mem is that we cannot currently unplug virtio-mem devices that have all memory unplugged from the VM.
Let's properly handle forced unplug (as can be triggered by the VM) and add support for ordinary unplug (requests) of virtio-mem devices that are in a compatible state (no legacy mode, no plugged memory, no plug request). Briefly tested on both, x86_64 and aarch64. Cc: Peter Maydell <peter.mayd...@linaro.org> Cc: Paolo Bonzini <pbonz...@redhat.com> Cc: Richard Henderson <richard.hender...@linaro.org> Cc: Eduardo Habkost <edua...@habkost.net> Cc: "Michael S. Tsirkin" <m...@redhat.com> Cc: Marcel Apfelbaum <marcel.apfelb...@gmail.com> Cc: Igor Mammedov <imamm...@redhat.com> Cc: qemu-...@nongnu.org Cc: Gavin Shan <gs...@redhat.com> David Hildenbrand (5): pc: Properly handle unplug of virtio based memory devices arm/virt: Properly handle unplug of virtio based memory devices virtio-mem: Prepare for unplug support of virtio-mem-pci devices pc: Support unplug of virtio-mem-pci devices arm/virt: Support unplug of virtio-mem-pci devices hw/arm/virt.c | 60 +++++++++++++++++++++++++++++-- hw/i386/pc.c | 66 ++++++++++++++++++++++++++++++---- hw/virtio/virtio-mem-pci.c | 42 ++++++++++++++++++++-- hw/virtio/virtio-mem-pci.h | 2 ++ hw/virtio/virtio-mem.c | 24 +++++++++++++ include/hw/virtio/virtio-mem.h | 2 ++ 6 files changed, 183 insertions(+), 13 deletions(-) -- 2.40.1