Hi guys,
In vfio migration resume phase, the cost would increase if the
vfio device has more unmasked vectors. We try to optimize it in
this series.
You can see the commit message in PATCH 9 for details.
Patch 1-5 are simple cleanups and fixup.
Patch 6-8 are the preparations for the optimization.
Patch 9 optimizes the vfio msix setup path.
Changes v2->v3:
- fix two errors [Longpeng]
Changes v1->v2:
- fix several typos and grammatical errors [Alex, Philippe]
- split fixups and cleanups into separate patches [Alex, Philippe]
- introduce kvm_irqchip_add_deferred_msi_route to
minimize code changes [Alex]
- enable the optimization in msi setup path [Alex]
Longpeng (Mike) (9):
vfio: simplify the conditional statements in vfio_msi_enable
vfio: move re-enabling INTX out of the common helper
vfio: simplify the failure path in vfio_msi_enable
msix: simplify the conditional in msix_set/unset_vector_notifiers
msix: reset poll_notifier to NULL if fail to set notifiers
kvm: irqchip: extract kvm_irqchip_add_deferred_msi_route
vfio: add infrastructure to commit the deferred kvm routing
Revert "vfio: Avoid disabling and enabling vectors repeatedly in VFIO
migration"
vfio: defer to commit kvm irq routing when enable msi/msix
accel/kvm/kvm-all.c | 15 +++++-
hw/pci/msix.c | 7 ++-
hw/vfio/pci.c | 126 ++++++++++++++++++++++++++++---------------
hw/vfio/pci.h | 1 +
include/sysemu/kvm.h | 6 +++
5 files changed, 106 insertions(+), 49 deletions(-)
--
2.23.0