This is based-on [1], which adds MSI-X support to virtio-balloon-pci, but can be applied independently.
Turns out it is fairly easy to get virtio-mem-pci running on s390x. We only have to add MSI-X support to virtio-mem-pci, and wire-up the (un)plugging in the machine. Tried some simple stuff (hotplug/hotunplug/resize/reboot), and all seems to be working as expected. The kernel in the VM needs both, CONFIG_VIRTIO_PCI and CONFIG_VIRTIO_MEM for it to work. [1] https://lkml.kernel.org/r/[email protected] Cc: Eduardo Habkost <[email protected]> Cc: Marcel Apfelbaum <[email protected]> Cc: Richard Henderson <[email protected]> Cc: David Hildenbrand <[email protected]> Cc: Ilya Leoshkevich <[email protected]> Cc: Halil Pasic <[email protected]> Cc: Christian Borntraeger <[email protected]> Cc: Eric Farman <[email protected]> Cc: Thomas Huth <[email protected]> Cc: "Michael S. Tsirkin" <[email protected]> Cc: Cornelia Huck <[email protected]> Cc: Boris Fiuczynski <[email protected]> Cc: Michal Privoznik <[email protected]> David Hildenbrand (2): virtio-mem-pci: Allow setting nvectors, so we can use MSI-X s390x/s390-virtio-ccw: support plugging PCI-based virtio memory devices hw/core/machine.c | 3 +++ hw/s390x/s390-virtio-ccw.c | 20 ++++++++++++++------ hw/virtio/virtio-mem-pci.c | 12 ++++++++++++ 3 files changed, 29 insertions(+), 6 deletions(-) -- 2.48.1
