Hi maintainers, Ping...
在 2021/8/25 15:56, Longpeng(Mike) 写道: > 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. > > Patch 1 & 2 are simple code cleanups. > Patch 3 defers to set irqs to vfio core. > Patch 4 & 5 defer to commit the route to KVM core. > > The test VM has 128 vcpus and 8 VF (with 65 vectors enabled), > we mesure the cost of the vfio_msix_enable for each one, and > we can see the total cost can be significantly reduced. > > Origin Apply Patch 3 Apply Patch 3/4/5 > 1st 8 4 2 > 2nd 15 11 2 > 3rd 22 18 2 > 4th 24 25 3 > 5th 36 33 2 > 6th 44 40 3 > 7th 51 47 3 > 8th 58 54 4 > Total 258ms 232ms 21ms > > > Longpeng (Mike) (5): > vfio: use helper to simplfy the failure path in vfio_msi_enable > msix: simplfy the conditional in msix_set/unset_vector_notifiers > vfio: defer to enable msix in migration resume phase > kvm: irqchip: support defer to commit the route > vfio: defer to commit kvm route in migraiton resume phase > > accel/kvm/kvm-all.c | 10 +++-- > accel/stubs/kvm-stub.c | 3 +- > hw/misc/ivshmem.c | 2 +- > hw/pci/msix.c | 7 ++-- > hw/vfio/pci.c | 99 > ++++++++++++++++++++++++++++++++++++++------------ > hw/vfio/pci.h | 1 + > hw/virtio/virtio-pci.c | 2 +- > include/sysemu/kvm.h | 4 +- > target/i386/kvm/kvm.c | 2 +- > 9 files changed, 95 insertions(+), 35 deletions(-) >