vfio-pci: Release all MSI-X vectors when disabled
authorAlex Williamson <alex.williamson@redhat.com>
Fri, 6 Dec 2013 18:16:40 +0000 (11:16 -0700)
committerAlex Williamson <alex.williamson@redhat.com>
Fri, 6 Dec 2013 18:16:40 +0000 (11:16 -0700)
commit3e40ba0faf0822fa78336fe6cd9d677ea9b14f1b
tree94f7b6e38cdc19275a986337d42814e996a34f89
parentb3ebc10c373ed5922d4bdb5076fd0e9fd7ff8056
vfio-pci: Release all MSI-X vectors when disabled

We were relying on msix_unset_vector_notifiers() to release all the
vectors when we disable MSI-X, but this only happens when MSI-X is
still enabled on the device.  Perform further cleanup by releasing
any remaining vectors listed as in-use after this call.  This caused
a leak of IRQ routes on hotplug depending on how the guest OS prepared
the device for removal.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Cc: qemu-stable@nongnu.org
hw/misc/vfio.c