mbox series

[V1,0/8] Live update: vfio

Message ID 1720558737-451106-1-git-send-email-steven.sistare@oracle.com
Headers show
Series Live update: vfio | expand

Message

Steven Sistare July 9, 2024, 8:58 p.m. UTC
Support vfio devices with the cpr-exec live migration mode.
See the commit messages of the individual patches for details.
No user-visible interfaces are added.

This series is extracted from the following and updated for the latest QEMU:
  [PATCH V9 00/46] Live Update
  https://lore.kernel.org/qemu-devel/1658851843-236870-1-git-send-email-steven.sistare@oracle.com/

This series depends on the following, which is based on commit 44b7329de469:
  [PATCH V2 00/11] Live update: cpr-exec
  https://lore.kernel.org/qemu-devel/1719776434-435013-1-git-send-email-steven.sistare@oracle.com/

Steve Sistare (8):
  migration: cpr_needed_for_reuse
  pci: export msix_is_pending
  vfio-pci: refactor for cpr
  vfio-pci: cpr part 1 (fd and dma)
  vfio-pci: cpr part 2 (msi)
  vfio-pci: cpr part 3 (intx)
  vfio: vfio_find_ram_discard_listener
  vfio-pci: recover from unmap-all-vaddr failure

 hw/pci/msix.c                         |   2 +-
 hw/pci/pci.c                          |  13 ++
 hw/vfio/common.c                      |  88 ++++++++--
 hw/vfio/container.c                   | 139 ++++++++++++---
 hw/vfio/cpr-legacy.c                  | 162 ++++++++++++++++++
 hw/vfio/cpr.c                         |  24 ++-
 hw/vfio/meson.build                   |   3 +-
 hw/vfio/pci.c                         | 308 +++++++++++++++++++++++++++++-----
 include/hw/pci/msix.h                 |   1 +
 include/hw/vfio/vfio-common.h         |  10 ++
 include/hw/vfio/vfio-container-base.h |   7 +
 include/migration/cpr.h               |   1 +
 include/migration/vmstate.h           |   2 +
 migration/cpr.c                       |   5 +
 14 files changed, 682 insertions(+), 83 deletions(-)
 create mode 100644 hw/vfio/cpr-legacy.c

Comments

Steven Sistare Aug. 12, 2024, 6:19 p.m. UTC | #1
Hi all, any comments or RBs?  This should be a slam dunk.  Alex reviewed
9 versions of this code and all feedback has been incorporated.  The only
significant change in this version is the addition of support for the
two container types: legacy and iommufd.

- Steve

On 7/9/2024 4:58 PM, Steve Sistare wrote:
> Support vfio devices with the cpr-exec live migration mode.
> See the commit messages of the individual patches for details.
> No user-visible interfaces are added.
> 
> This series is extracted from the following and updated for the latest QEMU:
>    [PATCH V9 00/46] Live Update
>    https://lore.kernel.org/qemu-devel/1658851843-236870-1-git-send-email-steven.sistare@oracle.com/
> 
> This series depends on the following, which is based on commit 44b7329de469:
>    [PATCH V2 00/11] Live update: cpr-exec
>    https://lore.kernel.org/qemu-devel/1719776434-435013-1-git-send-email-steven.sistare@oracle.com/
> 
> Steve Sistare (8):
>    migration: cpr_needed_for_reuse
>    pci: export msix_is_pending
>    vfio-pci: refactor for cpr
>    vfio-pci: cpr part 1 (fd and dma)
>    vfio-pci: cpr part 2 (msi)
>    vfio-pci: cpr part 3 (intx)
>    vfio: vfio_find_ram_discard_listener
>    vfio-pci: recover from unmap-all-vaddr failure
> 
>   hw/pci/msix.c                         |   2 +-
>   hw/pci/pci.c                          |  13 ++
>   hw/vfio/common.c                      |  88 ++++++++--
>   hw/vfio/container.c                   | 139 ++++++++++++---
>   hw/vfio/cpr-legacy.c                  | 162 ++++++++++++++++++
>   hw/vfio/cpr.c                         |  24 ++-
>   hw/vfio/meson.build                   |   3 +-
>   hw/vfio/pci.c                         | 308 +++++++++++++++++++++++++++++-----
>   include/hw/pci/msix.h                 |   1 +
>   include/hw/vfio/vfio-common.h         |  10 ++
>   include/hw/vfio/vfio-container-base.h |   7 +
>   include/migration/cpr.h               |   1 +
>   include/migration/vmstate.h           |   2 +
>   migration/cpr.c                       |   5 +
>   14 files changed, 682 insertions(+), 83 deletions(-)
>   create mode 100644 hw/vfio/cpr-legacy.c
>