[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v5 0/6] optimize the downtime for vfio migration
From: |
Alex Williamson |
Subject: |
Re: [PATCH v5 0/6] optimize the downtime for vfio migration |
Date: |
Wed, 3 Nov 2021 14:36:51 -0600 |
On Wed, 3 Nov 2021 16:16:51 +0800
"Longpeng(Mike)" <longpeng2@huawei.com> wrote:
> 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 6 for details.
>
> Patch 1-3 are simple cleanups and fixup.
> Patch 4-5 are the preparations for the optimization.
> Patch 6 optimizes the vfio msix setup path.
>
> Changes v4->v5:
> - setup the notifier and irqfd in the same function to makes
> the code neater. [Alex]
I wish this was posted a day earlier, QEMU entered soft-freeze for the
6.2 release yesterday[1]. Since vfio migration is still an
experimental feature, let's pick this up when the next development
window opens, and please try to get an ack from Paolo for the deferred
msi route function in the meantime. Thanks,
Alex
[1]https://wiki.qemu.org/Planning/6.2
>
> Changes v3->v4:
> - fix several typos and grammatical errors [Alex]
> - remove the patches that fix and clean the MSIX common part
> from this series [Alex]
> - Patch 6:
> - use vector->use directly and fill it with -1 on error
> paths [Alex]
> - add comment before enable deferring to commit [Alex]
> - move the code that do_use/release on vector 0 into an
> "else" branch [Alex]
> - introduce vfio_prepare_kvm_msi_virq_batch() that enables
> the 'defer_kvm_irq_routing' flag [Alex]
> - introduce vfio_commit_kvm_msi_virq_batch() that clears the
> 'defer_kvm_irq_routing' flag and does further work [Alex]
>
> 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) (6):
> 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
> kvm: irqchip: extract kvm_irqchip_add_deferred_msi_route
> 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/vfio/pci.c | 176
> ++++++++++++++++++++++++++++++++-------------------
> hw/vfio/pci.h | 1 +
> include/sysemu/kvm.h | 6 ++
> 4 files changed, 130 insertions(+), 68 deletions(-)
>
- [PATCH v5 0/6] optimize the downtime for vfio migration, Longpeng(Mike), 2021/11/03
- [PATCH v5 2/6] vfio: move re-enabling INTX out of the common helper, Longpeng(Mike), 2021/11/03
- [PATCH v5 1/6] vfio: simplify the conditional statements in vfio_msi_enable, Longpeng(Mike), 2021/11/03
- [PATCH v5 3/6] vfio: simplify the failure path in vfio_msi_enable, Longpeng(Mike), 2021/11/03
- [PATCH v5 5/6] Revert "vfio: Avoid disabling and enabling vectors repeatedly in VFIO migration", Longpeng(Mike), 2021/11/03
- [PATCH v5 4/6] kvm: irqchip: extract kvm_irqchip_add_deferred_msi_route, Longpeng(Mike), 2021/11/03
- [PATCH v5 6/6] vfio: defer to commit kvm irq routing when enable msi/msix, Longpeng(Mike), 2021/11/03
- Re: [PATCH v5 0/6] optimize the downtime for vfio migration,
Alex Williamson <=